惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

美团技术团队
T
The Blog of Author Tim Ferriss
C
Check Point Blog
博客园_首页
J
Java Code Geeks
云风的 BLOG
云风的 BLOG
L
LangChain Blog
小众软件
小众软件
Stack Overflow Blog
Stack Overflow Blog
爱范儿
爱范儿
Vercel News
Vercel News
博客园 - Franky
V
V2EX
IT之家
IT之家
U
Unit 42
N
Netflix TechBlog - Medium
腾讯CDC
Apple Machine Learning Research
Apple Machine Learning Research
Microsoft Azure Blog
Microsoft Azure Blog
罗磊的独立博客
博客园 - 叶小钗
H
Help Net Security
V
Visual Studio Blog
GbyAI
GbyAI

博客园 - 与f

微软的人机验证 docker运行hermes agent python使用docx库对在word中的表格合并操作 Python 项目创建+依赖管理+版本控制 百度飞桨PaddleOCR-VL识别发票图片输出json格式 大模型微调后导出,部署服务然后后端调用 openclaw的一些聊天配置 docker 部署 openclaw llama.cpp编译 微信小程序显示ai返回的markdown或html C#多端桌面程序(可跨平台) 主流 MySQL 热备份方案 基于SRS(Simple Realtime Server)+ CDN边缘节点加速3个nginx做文件分发1个nginx做负载均衡 一份基于SRS(Simple Realtime Server)+ CDN边缘节点srs edge加速的万人级直播部署清单 HLS(HTTP Live Streaming)标准的视频及加密和解密播放 HLS(HTTP Live Streaming)标准的视频及加密 使用Dockerfile创建一个hyperf容器做为开发环境 docker的hyperf框架docker-compose一键安装 ubuntu 安装后ssh 连接到服务器 lvm的概念和操作(linux) PHP Attributes 注解 centos 服务器查找一些字符串 Centos8网络配置小工具 Keepalive实现一个高可用负载均衡场景 Keepalived详解:原理、编译安装与高可用集群配置
通过vm虚拟中的docker 环境做开发
与f · 2026-01-16 · via 博客园 - 与f

我有这样一个需求,本人平时喜欢使用虚拟机做各种的环境配置,但是虚拟机环境配置好后,不能再虚拟机中安装很笨重的编辑器开发吧,最好是能再真实电脑上的某个文件夹操作,

这个文件可以对应映射到虚拟机的web运行目录不是更好,这样,代码在真实机,环境在虚拟机。 

本文介绍,虚拟机的共享文件夹:就是把本地的一个文件夹,映射到linux系统的目录,然后再把linux的code目录挂载到这个目录,这个设备有时真实机的一个文件夹。

====================

方案一:VMware 共享文件夹(推荐,配置最简单、同步最实时)

该方案依赖 VMware Tools(已预装大概率,缺失则补装),实现物理机文件夹与虚拟机 Web 目录的直接映射,文件修改实时同步,无延迟,且无需复杂命令,适合新手。

步骤 1:物理机准备代码目录

  1. 在物理机任意位置创建代码文件夹(例如:D:\VM_Web_Code),后续所有开发代码都放在这个文件夹中。
  2. 确保该文件夹无特殊权限限制(Windows 直接创建即可,Linux/macOS 确保有读写权限)。

步骤 2:配置 VMware 共享文件夹

  1. 打开 VMware Workstation,选中你的 Web 环境虚拟机(可开机配置,也可关机配置,开机配置需重启虚拟机生效)。
  2. 右键虚拟机 → 「设置」→ 切换到「选项」标签页 → 找到「共享文件夹」。
  3. 勾选「始终启用」(推荐,避免每次开机重新配置),然后点击「添加」,启动共享向导。
  4. 向导中点击「下一步」→ 浏览选中物理机创建的D:\VM_Web_Code → 「下一步」。
  5. 自定义共享名称(例如:Web_Code,建议英文无空格),可勾选「只读」(仅开发场景不推荐,需读写权限),点击「完成」→ 「确定」保存设置。

步骤 3:虚拟机中挂载共享文件夹到 Web 运行目录

情况 A:虚拟机是 Linux 系统(绝大多数 Web 环境为 Linux)
  1. 首先确认 VMware Tools 已安装(若未安装,VMware 菜单栏「虚拟机」→ 「安装 VMware Tools」,按照提示完成安装即可)。
  2. 核心操作:将共享文件夹挂载到虚拟机的 Web 运行目录(例如 Nginx/Apache 默认目录/var/www/html,或自定义的/home/user/web)。
    • 步骤 1:创建挂载目录(若 Web 目录已存在,可直接使用,无需新建)
      # 示例:使用系统默认Web目录(需管理员权限,加sudo)
      sudo mkdir -p /var/www/html  # 若已存在,跳过此命令
    • 步骤 2:执行挂载命令(实时映射,临时生效,重启虚拟机后需重新挂载)
      # 格式:sudo vmhgfs-fuse .host:/共享名称 虚拟机Web目录 -o allow_other
      sudo vmhgfs-fuse .host:/Web_Code /var/www/html -o allow_other
       
    • 步骤 3:验证挂载是否成功 ① 在物理机D:\VM_Web_Code中创建一个测试文件(例如index.php/index.html),写入简单代码:
      <!DOCTYPE html>
      <html>
      <head><title>测试同步</title></head>
      <body>Hello, 物理机代码 → 虚拟机运行!</body>
      </html>
      ② 在虚拟机中查看 Web 目录,是否能看到该文件: ③ 启动虚拟机的 Web 服务(Nginx/Apache),访问虚拟机 IP(例如192.168.1.100),即可看到物理机编写的页面。
    • 补充:设置开机自动挂载(避免每次重启虚拟机重新执行挂载命令)
      1. 编辑 fstab 配置文件:
      2. 在文件末尾添加一行(注意替换共享名称和 Web 目录):
        .host:/Web_Code  /var/www/html  fuse.vmhgfs-fuse  defaults,allow_other  0  0 
      3. 保存退出(vim 中按Esc→输入:wq),执行以下命令验证配置是否生效(无需重启):

使用 vmhgfs-fuse 完成 VMware 共享文件夹到 /root 的挂载

apt install -y open-vm-tools open-vm-tools-desktop

#vm_share_root是再vm界面为文件夹起的名字

vmhgfs-fuse .host:/vm_share_root /root/docker -o allow_other -o uid=0 -o gid=0

vi /etc/fstab