国内镜像源
教育网镜像
- 清华大学开源软件镜像 https://mirrors.tuna.tsinghua.edu.cn/
- 中国科学技术大学开源软件镜像 https://mirrors.ustc.edu.cn/
- 北京理工大学 http://mirror.bit.edu.cn/
我这里选择阿里镜像,最新版下载地址:https://mirrors.aliyun.com/alpine/v3.9/releases/x86_64/alpine-standard-3.9.0_rc6-x86_64.iso
新建虚拟机:在VirtualBox新建一个虚拟机,类型选择“Linux 2.6 / 3.x / 4.x (64-bit)”。然后创建一个动态扩展的硬盘,大小可以选择100G,反正是动态扩展。创建完成后,手动修改如下选项:
- 使能PAE/NX
- 使能硬件加速
- 网卡配置成“桥接网卡”
- 光驱选择iso文件,然后找到我们刚才下载的AlpineLinux的iso
因为alpine的安装必须联网安装,所以网卡配置要设置为“桥接网卡”让虚拟机可以直接联网。
安装AlpineLinux
- 启动虚拟机,用光盘启动,然后用root登录AlpineLinux,没有密码
敲入命令
setup-alpine
跟随命令行向导一步一步执行
- 在选择安装源时,敲入“f”让系统自己寻找一个最快的源
- 在选择安装目标盘时,敲入“sda”
- 在选择分区类型时,敲入“sys”
- 几分钟就装完了,退出光盘,重启虚拟机
配置AlpineLinux
把网络配置改成DHCP(非必须): 编辑/etc/network/interfaces,删除eth0的固定IP配置,然后添加一行:
配置打开软件仓库:编辑/etc/apk/repositories,删掉原来内容,改为:iface eth0 inet dhcp
https://mirrors.aliyun.com/alpine/v3.9/main
https://mirrors.aliyun.com/alpine/v3.9/community
升级系统:执行如下命令
apk update
apk upgrade
配置sshd:AlpineLinux默认是关闭root用户ssh登录的。最安全的做法是创建一个非root用户。懒人可以直接打开root登录。编辑/etc/ssh/sshd_config,加入一行:
PermitRootLogin yes
然后重启ssh
service sshd restart
安装Virtualbox扩展包:这步是为了使AlpineLinux能够支持VirtualBox的共享目录。命令:
apk add virtualbox-guest-additions virtualbox-guest-modules-virt virtualbox-guest-modules-vanilla
启动挂载共享目录:这步是为了让AlpineLinux每次启动都自动挂载VirtualBox的共享目录。编辑/etc/fstab,加入一行
workspace /workspace vboxsf defaults 0 0
安装Docker:如下命令安装docker,并使其服务端随系统启动:
apk add docker
ln -s /etc/init.d/docker /etc/runlevels/default/docker
Docker国内镜像加速:创建一个文件/etc/docker/daemon.json,内容为(如果有阿里云或者DaoCloud账号,也可以配置成私有的加速链接):
{
"registry-mirrors": ["https://registry.docker-cn.com"]
}
重启docker
service docker restart
修改网络
一开始我们设置的虚拟机网络是桥接,虚拟机跟我们的宿主机在同一个局域网段下面,有可能重启后ip变调,现在要改为 NAT + host-only 双网卡的模式。
VirtualBox的5种连接方式
- NAT :虚拟机之间不能互通
- NAT网络 :本文对象
- 桥接 :一般情况下虚拟机无法设置静态IP,并且浪费外部局域网IP
- 内部 :虚拟机不能连外网
仅主机(host-only) :虚拟机不能连外网,并且不互通
NAT网络
虚拟机可以连外网
- 虚拟机与主机互通
- 虚拟机与虚拟机互通
- 虚拟机需要固定IP (防止意外)
- 主机所在局域网的其他机器访问虚拟机
设置方法
然后设置虚拟机网络,网卡1 为nat网络
网卡2为 host-only

然后启动虚拟机设置静态ip
vi /etc/network/interfaces
修改为
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 10.0.2.20
gateway 10.0.2.1
netmask 255.255.255.0
auto eth1
iface eth1 inet static
address 192.168.56.14
netmask 255.255.255.0
说明
eth0 代表网卡1的配置,ip地址可以设置在10.0.2.内,我这里设置为10.0.2.20 eth1 代表网卡2的配置,可以在宿主机的ipconfig命令查看
所以我这里设置为192.168.56.14
设置完重启networking(如下方法任选一条就可以):
sudo /etc/init.d/networking restart
sudo service networking restart
sudo ifdown eth0
sudo ifup eth0
完成之后 能ping通baidu就说明起作用了
VBox无界面启动命令:
VBoxManage startvm 虚拟机名称 --type headless
安装可能遇到的问题
如果网卡设置为
- 络地址转换(NAT)的网卡
- 仅主机(HOST-Only)网络
会出现如下错误。
e2fsprogs (missing):
required by: world[e2fsprogs]
sfdisk (missing):
required by: world[sfdisk]
syslinux (missing):
required by: world[syslinux]
必须为 桥接
这里主要记录我个人认为必须或者必须要手动干预的几个步骤:
- Enter system hostname (short form, e.g. ‘foo’) [localhost] :这一步可以选择一个自己看着顺眼的字符作为 alpine 系统的主机名。
- Changeing password for root New password: 必须要为root账户设置一个密码,因为时日常测试要用最好简单到只有一个字母或数字。
- Which timezone are you in? (‘?’ for list) [UTC]:国内输入 Asia/Shanghai ,避免后续使用上的问题。
- 在虚拟机设置好共享文件夹,假如共享文件夹名称为 work 。
- 创建一个共享文件夹挂载目录
mkdir /mnt/share。 - 挂载共享文件夹:
mount -t vboxsf work /mnt/share。如果这一步遇到错误尝试执行modprobe -a vboxsf以激活共享目录模块。
_
所以我这里设置为192.168.56.14