Appearance
No.3 云服务器安装 Docker + Portainer 图形化管理工具
本期视频我们会在 Ubuntu 20.04 系统的云服务器上安装 Docker 和图形化的容器管理工具 Portainer。
视频地址
安装 Docker
在主流的 Linux 发行版上,Docker 有三种可选的安装方法:
- 通过软件源安装(官方推荐)
- 手动安装(无网络环境适用)
- 脚本安装(简单快捷,非生产环境适用)
演示系统说明
以下安装方式均以 Ubuntu 20.04 系统为例,Ubuntu 历史版本和其他基于 Debian 的发行版亦可参考安装。
前置条件:卸载旧版 Docker
采用软件源安装和手动安装方式时,在安装之前需要先卸载已经安装的旧版 Docker 程序:
shell
$ sudo apt-get remove docker docker-engine docker.io containerd runc
方式一:软件源安装
刷新软件列表
shell
$ sudo apt updage
安装依赖的工具
shell
$ sudo apt install \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
添加 Docker 官方的 GPG 密钥
shell
$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
提示
如果国内云服务器无法从Docker官方服务器下载GPG密钥,可以从国内镜像服务器 https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg 下载,但一定要执行下一步的指纹验证。
验证密钥指纹的后8位
GPG 密钥的完整指纹为
9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
shell
sudo apt-key fingerprint 0EBFCD88
输出结果应该类似下面这样:
shell
pub 4096R/0EBFCD88 2017-02-22
Key fingerprint = 9DC8 5822 9FC7 DD38 854A E2D8 8D81 803C 0EBF CD88
uid Docker Release (CE deb) <docker@docker.com>
sub 4096R/F273FCD8 2017-02-22
添加软件源配置
以下命令会在系统中添加 Docker 稳定版(stable)的软件源信息:
shell
$ sudo add-apt-repository \
"deb [arch=amd64] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) \
stable"
提示
国内云服务器用户可以把链接中的软件源地址,直接替换成国内的第三方镜像服务器,比如 https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/
。你可以点击这里查看国内可用的开源软件镜像站信息。
安装 Docker
执行以下两个命令,刷新软件源,然后安装 Docker 程序。
shell
$ sudo apt update
$ sudo apt install docker-ce docker-ce-cli containerd.io
方式二:手动安装
手动安装适合无法使用软件源安装或服务器无法访问互联网的情况使用,每当需要升级 Docker 版本时,都需要手动下载新版本安装包进行安装。
对于 Ubuntu 20.04 版本的云服务器,可以点此下载所需版本的 .deb
安装包。
其他版本系统,请在 https://download.docker.com/linux/ 中按需选择系统版本和程序版本。
执行命令安装,例如:
shell
$ sudo dpkg -i docker-ce_20.10.1~3-0~ubuntu-focal_amd64.deb
方式三:脚本安装
脚本安装是最快捷的 Docker 安装方式,它会自动化的完成旧版卸载、依赖配置和程序安装,默认会安装 Docker 稳定版(stable)。脚本安装方式特别适合在个人学习、开发环境等非关键场景下的快速安装使用。
风险
执行脚本前,请检查脚本内容,确认脚本安全再进行安装。
请不要在生产环境中采用脚本安装方式!!!
下载安装脚本
shell
$ curl -fsSL get.docker.com -o get-docker.sh
执行脚本安装 Docker
shell
$ bash get-docker.sh
将普通管理用户 herald
加入到 docker 用户组 (请将命令中的 herald 替换成你实际使用的用户名)
shell
$ sudo usermod -aG docker herald
可选:设置第三方 Docker Hub 镜像服务器
编辑 /etc/docker/daemon.json
配置文件,如果目录和文件不存在须自行创建。
添加以下配置项,可将其中的服务器地址 https://ghcr.io
替换成任何 第三方 Docker Hub 镜像服务器。
json
{
"registry-mirrors": ["https://ghcr.io"]
}
重启 Docker 服务
shell
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker.service
安装 Portainer
shell
$ sudo docker run -d --name=portainer \
-p 9000:9000 \
-v /var/run/docker.sock:/var/run/docker.sock \
-v portainer_data:/data \
--restart=always \
portainer/portainer-ce
如果需要与边缘节点(edge)通信,请额外添加一个
-p 8000:8000
参数开放8000号端口。
安装完成以后,使用 http://server-ip:9000
访问 Portainer 的管理界面,注意将网址中的 server-ip
替换成云服务器的公网IP。