为什么选择lxc安装docker?
系统占用小,硬件利用率最高
启动速度快,体验完整
方便测试各种功能
之前写的教程有点过时,大家用起来可能不是那么上手,今天,我们再来谈一谈lxc安装docker。
换源
考虑到国内的网络环境,我们用默认的源,无法下载到模板,我们先把ct模板的源替换为清华源
cp /usr/share/perl5/PVE/APLInfo.pm /usr/share/perl5/PVE/APLInfo.pm_back
sed -i 's|http://download.proxmox.com|https://mirrors.tuna.tsinghua.edu.cn/proxmox|g' /usr/share/perl5/PVE/APLInfo.pm
#更换之后,需要重启pve
lxc容器安装
我常用的是ubuntu,这个系统对新手相对来说比较友好,如果没有相关的软件,你输入命令的时候,会提醒你安装。
下载模板
local-CT模板-模板选项下,选择ubuntu-22.04-standard,下载即可
安装
区别于平时安装的虚拟机,我们需要点击右上角创建ct
注意选择无特权容器
模板选择我们刚才下载好的模板
磁盘--一般给20g
cpu--随意
内存--如果容器多的话可以多一点,推荐512M
网络--一般我会用固定ip的形式,比如我设置为192.168.1.111的时候,这里需要填写192.168.1.111/24,网关的话也需要填写一下,dns----如果你的pve无法上网,你需要在这里自定义一下,根据你自己的内网填写。
安装完成后不要立即启动
设置
UI界面
首先是ui界面中,我们需要打开的选项,在选项-功能中打开以下选项
嵌套----docker必须打开
nfs----方便我们链接存储
smb----同理
fuse----有一些软件需要打开这个选项,保证运行
配置文件
我们需要编辑这个lxc容器的配置文件,保证docker容器的权限
/etc/pve/lxc/id.conf
需要在你的lxc容器配置文件下添加以下内容
lxc.apparmor.profile: unconfined
lxc.cgroup.devices.allow: a
lxc.cap.drop:
#以上三行是必备的,以下两行是用来开启容器tun转发的,不是必须的
lxc.cgroup2.devices.allow: c 10:200 rwm
lxc.mount.entry: /dev/net/tun dev/net/tun none bind,create=file
开启root账户登录
在安装docker之前呢,我们先来开启root账户登陆,在第三方ssh客户端中来进行命令操作。
apt update
#升级库
apt install vim -y
#安装文本编辑软件
vim /etc/ssh/sshd_config
#修改文件
#PermitRootLogin prohibit-password
#找到上述文件
PermitRootLogin yes
#将prohibit-password修改为yes
sudo service ssh restart
#重启服务
安装docker
这时候,我们用第三方工具登录ubuntu,输入命令
apt install docker.io
docker run -d --restart=always --name="portainer" -p 9000:9000 -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data 6053537/portainer-ce
#特别推荐的中文portaer,图形化的docker管理工具
安装完成后,直接打开 ip:9000,即可看到中文docker管理界面
结语
容器下的docker,还是有很大的发挥空间的。不过,这只是一种部署方式,我个人特别不推荐群晖的docker部署方式,但是又不得不用,哎,难顶。