PVE部署Ubuntu20.04 LXC容器用于安装docker,LXC部署完成后可以进行如下操作。
1、PVE打开LXC的嵌套,不然运行docker会报错 https://lala.im/6793.html
- LXC需要勾选“无特权的容器”
- 在创建完成后需要到“选项-签名”下勾选“嵌套”,这个主要是可以使LXC里可以继续运行相关虚拟化工具,比如docker,不然会报错。
2、安装 vim
$ apt install vim
这个主要是用来编辑配置文件的,没办法我习惯了用vim,顺手
3、更新软件源为清华的 https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/
更改软件源主要是用来更新软件和系统是下载速度更快,不然龟速的更新速度让人抓狂。
- Ubuntu 的软件源配置文件是 /etc/apt/sources.list。将系统自带的该文件做个备份,将该文件替换为下面内容,即可使用 TUNA 的软件源镜像。
$ cp /etc/apt/sources.list /etc/apt/sources.list.bak
$ vim /etc/apt/sources.list
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释 deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/focal main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/focal main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/focal-updates main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/focal-updates main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/focal-backports main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/focal-backports main restricted universe multiverse deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/focal-security main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/focal-security main restricted universe multiverse # 预发布软件源,不建议启用 # deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/focal-proposed main restricted universe multiverse # deb-src https://mirrors.tuna.tsinghua.edu.cn/ubuntu/focal-proposed main restricted universe multiverse
来自 <https://mirrors.tuna.tsinghua.edu.cn/help/ubuntu/>
- 更新系统软件apt update && apt dist-upgrade
4、安装ssh,或者开启ssh(LXC需要)https://ping.flenny.net/2016/ssh-into-a-proxmox-lxc-container/
安装LXC后系统不允许ssh登录,需要修改下系统配置文件/etc/ssh/sshd_config
- vim /etc/ssh/sshd_config
- 修改 PermitRootLogin 为 PermitRootLogin yes ,有#号的话删除#号。
- Esc :wq 保存退出
- 重启ssh:service ssh restart
- 修改完成后即可用ssh客户端远程登陆该台LXC
5、安装docker https://docs.docker.com/engine/install/ubuntu/
安装docker我是按照官网的流程来的
- 卸载原来的docker
sudo apt-get remove docker docker-engine docker.io containerd runc
- 安装apt-transport-https 等软件包支持https协议的源
$ sudo apt-get update
$ sudo apt-get install apt-transport-https ca-certificates curl gnupg-agent software-properties-common
- 添加GPG密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
- 验证密钥
sudo apt-key fingerprint 0EBFCD88
- 显示如下就正确了
pub rsa4096 2017-02-22 [SCEA]9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid [ unknown] Docker Release (CE deb) <docker@docker.com>
sub rsa4096 2017-02-22 [S]
- 添加官方软件源
$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
- 安装docker
$ sudo apt-get update$ sudo apt-get install docker-ce docker-ce-cli containerd.io
- 安装完成后docker就自动启动了并设置好了开机启动
- 普通用户没有docker的运行权限,可以用sudo提权后使用,但是不是很方便,可以通过以下命令讲用户添加到docker组,使用docker就不需要sudo提权了,your-user就是你平时登录的用户。
$ sudo usermod -aG docker your-user
6、更改docker的镜像源加速pull速度。 https://yeasy.gitbook.io/docker_practice/install/mirror
- 对于使用 systemd 的系统(Ubuntu 16.04+、Debian 8+、CentOS 7),请在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件)
$ vim /etc/docker/daemon.json{"registry-mirrors": ["https://hub-mirror.c.163.com","https://mirror.baidubce.com"]
}
- Esc :wq 保存退出
- 重启相关服务
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker
7、测试下载镜像
$ docker pull ubuntu:20.04
8、列出镜像,-a 列出所有镜像库包括临时文件
$ docker images -a
9、tag 添加镜像标签
$ docker tag ubuntu:latest myubuntu:latest
10、inspect查看镜像的详细信息,-f可以指定显示参数
$ docker inspect ubuntu:20.04
11、history 查看镜像历史,使用--no-trunc完全显示
$ docker history ubuntu:20.04
12、镜像搜索,搜索官方库中的镜像
$ docker search --filter=is-official=true nginx
13、删除镜像,镜像被依赖使用时无法删除,需要停掉容器才能删除
$ docker rmi myubuntu:latest
14、临时运行一个docker ,
$ docker run ubuntu:20.04 echo 'nihao'
15、查看所有容器
$ docker ps -a
16、删除容器,后边参数是ps -a得到的
$ docker rm 46ed70f69
17、然后就能删除对应的镜像了
18、清理镜像-a 清理无用镜像,-f 强制删除镜像不提醒
$ docker image prune -a