开发环境 windows
,用 docker
的时候还是使用 win
版的差点意思,之前折腾了一下那个 windows10
子系统,还是不得劲,那还是用回虚拟机吧,选择用 VirtualBox
主要是因为它小巧快速且开源,无他。
准备工作:
下载 virtualBox
,下载扩展 VirtualBox Extension Pack
。
下载 centos7
镜像文件
安装
正常安装就好了,这个没啥好说的,教程大把的,只捡重要点的记录一下。
安装扩展
管理 => 全局设定 => 扩展,右边加号添加扩展,选择下载的扩展文件 VirtualBox Extension Pack
安装即可。
网络配置
可以使用 NAT
+端口转发的模式,也是可以使用的,但这样需要配置端口转发,我这里嫌麻烦直接用桥接模式,桥接后虚拟机就相当于局域网内单独的一台主机了,可以使用局域网 IP
直接访问,非常方便,为了防止虚拟机从路由器动态获取 IP
带来麻烦,我们需要将虚拟机换成静态 IP
。
设置完桥接,查看一下宿主机的 IP
配置,同时查看当前虚拟主机动态获取到的 IP
地址,参考这个配置来修改一下虚拟主机内的网络配置文件。
宿主机 IP
配置
C:UsersAdministrator>ipconfig/all
无线局域网适配器 WLAN:
连接特定的 DNS 后缀 . . . . . . . :
描述. . . . . . . . . . . . . . . : Intel(R) Wireless-AC 9462
物理地址. . . . . . . . . . . . . : 1C-**-**-**-**-18
DHCP 已启用 . . . . . . . . . . . : 是
自动配置已启用. . . . . . . . . . : 是
本地链接 IPv6 地址. . . . . . . . : fe80::****:****:****:3f49%18(首选)
IPv4 地址 . . . . . . . . . . . . : 192.168.0.203(首选)
子网掩码 . . . . . . . . . . . . : 255.255.255.0
获得租约的时间 . . . . . . . . . : 2019年2月22日 09:55:42
租约过期的时间 . . . . . . . . . : 2019年2月22日 21:55:40
默认网关. . . . . . . . . . . . . : 192.168.0.1
DHCP 服务器 . . . . . . . . . . . : 192.168.0.1
DHCPv6 IAID . . . . . . . . . . . : 28*****73
DHCPv6 客户端 DUID . . . . . . . : 00-01-**-**-**-**-79-5F-**-**-**-**-6C-51
DNS 服务器 . . . . . . . . . . . : 192.168.0.1
114.114.114.114
TCPIP 上的 NetBIOS . . . . . . . : 已启用
虚拟机配置
[root@localhost /]# ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp0s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
link/ether 08:**:**:**:**:19 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.127/24 brd 192.168.0.255 scope global noprefixroute enp0s3
valid_lft forever preferred_lft forever
inet6 ****:****:****:****:14ee/64 scope link noprefixroute
valid_lft forever preferred_lft forever
注意看这里虚拟主机动态获取的 IP
,我这里是 192.168.0.127
,如果这里没有获取到 IP
,先把下面那个文件的最后一行 ONBOOT=no
修改为 ONBOOT=yes
,然后重启,再接着下面的做。
配置文件目录 /etc/sysconfig/network-scripts/
,查找上面虚拟机配置中 2
后面名称相关的文件,我这边就是 enp0s3
,对应的文件就是 ifcfg-enp0s3
,修改这个文件。
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
#### net work config begin ####
#BOOTPROTO=dhcp
# static ip
BOOTPROTO=static
IPADDR=192.168.0.127
NETMASK=225.225.225.0
GATEWAY=192.168.0.1
DNS1=114.114.114.114
#### net work config end ####
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s3
UUID=8e7f6bab-****-****-****-636587784c2f
DEVICE=enp0s3
ONBOOT=yes
最后使用 service network restart
重启网络服务。
这样,虚拟主机的 IP
就被设置成了固定的 192.168.0.127
,温馨提示一下,如果你的局域网环境发送改变,比如说从公司到家里,路由器网关变成了 192.168.50.1
,那么这个设置就会失效,当然你可以把配置文件里的 IP
修改一下,我的做法是把家里的网关设置成跟公司一样的。
安装增强功能
如果你要用到实现共享文件夹、粘贴板以及鼠标无缝移动啥的,你需要安装这个增强功能包。
先安装必备工具,不然后面会报错:
1. yum -y update
2. yum -y install g++ gcc gcc-c++ make kernel-*
3. yum -y install bzip2*
装完这些 reboot
一下。
在当前虚拟机窗口菜单设备
=> 分配光驱
=> 选择虚拟盘
,弹出窗口中在 VirtualBox
的安装目录 C:Program FilesOracleVirtualBox
下的 VBoxGuestAdditions.iso
镜像。这时候你就可以在分配光驱里面看到这个镜像了,选择它,如果有提示啥的,点 强制释放
,这时候,进入系统挂载镜像并安装它。
[root@localhost mnt]# mount /dev/cdrom /mnt
[root@localhost mnt]# cd /mnt
[root@localhost mnt]# ls
AUTORUN.INF NT3x TRANS.TBL VBoxLinuxAdditions.run VBoxWindowsAdditions.exe
autorun.sh OS2 VBoxDarwinAdditions.pkg VBoxSolarisAdditions.pkg VBoxWindowsAdditions-x86.exe
cert runasroot.sh VBoxDarwinAdditionsUninstall.tool VBoxWindowsAdditions-amd64.exe
[root@localhost mnt]# ./VBoxLinuxAddtions.run
[root@localhost mnt]# reboot
这样就安装成功了。
修改 Centos7
语言为英文
安装的时候没注意,装成了中文,发现很不习惯,还是换成中文吧。
修改 /etc/locale.conf
里的语言配置 LANG="zh_CN.UTF-8"
修改成 LANG="en_US.UTF-8"
, reboot
一下就行了。
配置共享文件夹
就像图上的,选好宿主机的文件夹,然后勾选 自动挂载
和 固定分配
,虚拟机启动后会将选中的宿主机目录(假如是) d:/virtualbox/share
挂载到虚拟机的 /media/sf_share
目录了。
至此,你的虚拟机已经为后续的开发调试工作做好了准备。