sudo apt-get remove docker docker-engine docker.io
sudo apt-get update
sudo apt-get install \
apt-transport-https \
ca-certificates \
curl \
gnupg \
lsb-release
添加软件源的GPG秘钥以确认所下载软件包的合法性
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# 官方源
# $ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
向sources.list中添加Docker软件源
echo \
"deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://mirrors.aliyun.com/docker-ce/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 官方源
# $ echo \
# "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \
# $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
以上命令添加稳定版的Docker ATP镜像源,如果需要测试版的Docker则需要将stable改为test
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io
sudo systemctl enable docker
sudo systemctl start docker
sudo mkdir -p /etc/docker
sudo vim /etc/docker/daemon.conf
{
"registry-mirrors" : [
"https://hub.docker.com/u/dockerhub/",
"https://registry.docker-cn.com",
"https://docker.mirrors.ustc.edu.cn",
"http://hub-mirror.c.163.com",
"https://cr.console.aliyun.com/"
]
}
sudo systemctl daemon-reload
sudo systemctl restart docker
# 开启容器自启动
sudo docker update --restart=always 【容器名】
例如:docker update --restart=always tracker
# 关闭容器自启动
sudo docker update --restart=no【容器名】
例如:docker update --restart=no tracker
##### 相关配置解析
no:
不要自动重启容器。(默认)
on-failure:
如果容器由于错误而退出,则重新启动容器,该错误表现为非零退出代码。
always:
如果容器停止,请务必重启容器。如果手动停止,则仅在Docker守护程序重新启动或手动重新启动容器本身时才重新启动。(参见重启政策详情中列出的第二个项目)
unless-stopped:
类似于always,除了当容器停止(手动或其他方式)时,即使在Docker守护程序重新启动后也不会重新启动容器。