pve运行docker,母系统使用lxc的alpine是多数情况下的最佳选择了。
原因:体积小,占用资源小,启动快。 可以一个lxc运行一个docker服务。
缺点:musl 和 gcc 有一些不兼容,不过这对使用docker没有任何影响。
1
2
3
4
5
6
7
8
9
10
| # 配置源和时区 alpine内运行
sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories
apk add tzdata
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
echo "Asia/Shanghai" > /etc/timezone
apk del tzdata
rm -rf /var/cache/apk/*
# vim替换为nano
apk add nano
apk del vim && ln -s /usr/bin/nano /usr/bin/vim && rm -rf /usr/bin/vi && ln -s /usr/bin/nano /usr/bin/vi
|
1
2
3
4
5
| sed -i 's/dl-cdn.alpinelinux.org/mirrors.ustc.edu.cn/g' /etc/apk/repositories #替换源
apk add docker #nano # 安装docker 和 nano
rc-update add docker boot # 开机启动启动
service docker start # 启动
docker version # 查看版本
|
如果是特权容器,需要修改lxc的配置
如果要挂载目录,最好要用特权创建,并开启嵌套,然后在lxc的配置文件 添加三行 可以用特权容器开启docker /etc/pve/lxc/容器id.conf
1
2
3
| lxc.apparmor.profile: unconfined
lxc.cgroup.devices.allow: a
lxc.cap.drop:
|