使用 Hyper-V 配置开发环境
以前的开发环境是 WSL,最近换了台式,便决定使用 Hyper-V 安装虚拟机来作为开发环境。
系统选择的是 Ubuntu Server 18.04,安装过程很简单,添加配置安装系统就行,教程很多,例如 使用Hyper-V安装Ubuntu Server 16.10 和 安装Ubuntu Server18.04,有个小问题是本来交换机用的是外部网络,但是虚拟机不能访问外网,后来改成内部网络了。
虚拟机用来做服务器,例如跑 PHP、MySQL、Redis 等,开发则在宿主机,IDE 用的是 PHPStorm,目录共享用的是 Samba。
配置 Samba
# 安装
sudo apt install samba
# 创建共享目录
sudo mkdir /opt/share
sudo chmod 777 /opt/share
# 创建共享账号
sudo useradd samba
# Samba 用户是独立的,需设置密码
sudo smbpasswd -a samba
# 禁止用户
sudo smbpasswd -d samba
# 激活用户
sudo smbpasswd -e samba
# 修改配置文件
cd /etc/samba
sudo cp smb.conf smb.conf.bak
sudo vim smb.conf
# 文件最后追加这几行
[share]
comment = share directory
path = /opt/share
valid users = samba
public = no
writable = yes
create mask = 0777
directory mask = 0777
# 启动
sudo service smb start
直接在 Windows 资源管理器输入 \\ip
访问,可以看到有个 share 目录,右键选择 映射网络驱动器 可以映射成盘符,然后直接在 PHPStorm 加载开发就行。
可以在 CMD 中输入 net use
查看目前的共享信息,net use * /del
删除所有连接,net use \\ip /del
删除特定连接。
另外还有个问题,为了让网站在局域网内可访问,需要设置端口转发,使用 netsh
就可以了,也许还需要开放防火墙特定端口。
# 如果没安装 ipv6
netsh interface ipv6 install
# 显示目前规则列表
netsh interface portproxy show v4tov4
# 添加转发规则
netsh interface portproxy add v4tov4 listenport=8080 connectaddress=192.168.137.22 connectport=80
netsh interface portproxy add v4tov4 listenaddress=0.0.0.0 listenport=80 connectaddress=192.168.137.100 connectport=80
# 删除规则
netsh interface portproxy delete v4tov4 listenaddress=0.0.0.0 listenport=80
暂时就先这样吧。