如何在ubnutu上安装docker

卸载旧版本

复制代码
sudo apt-get remove docker docker-engine docker.io

添加HTTPS传输软件包以及CA证书

复制代码
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

安装docker

复制代码
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io

启动docker

复制代码
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

常用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守护程序重新启动后也不会重新启动容器。
相关推荐
NiKo_W6 分钟前
Linux 开发工具(1)
linux·运维·服务器
linweidong27 分钟前
解锁 Ray 在 Kubernetes 上的弹性伸缩:打造高效、稳定的分布式作业
分布式·容器·kubernetes·ray·keda·autoscaling·ray推理
咖啡Beans35 分钟前
Docker安装ELK(Elasticsearch + Logstash + Kibana)
后端·elasticsearch·docker
艾莉丝努力练剑37 分钟前
【C++】类和对象(下):初始化列表、类型转换、Static、友元、内部类、匿名对象/有名对象、优化
linux·运维·c++·经验分享
-SGlow-1 小时前
Linux相关概念和易错知识点(45)(网络层、网段划分)
linux·运维·服务器·网络
潘潘潘潘潘潘潘潘潘潘潘潘2 小时前
【MySQL】从零开始学习MySQL:基础与安装指南
linux·运维·服务器·数据库·学习·mysql
ZzzZZzzzZZZzzzz…2 小时前
Nginx_Tomcat综合案例
运维·nginx·tomcat·负载均衡·rhce·反向代理·https加密服务
智能化咨询2 小时前
Docker 容器化部署核心实战——Nginx 服务配置与正反向代理原理解析
docker
daqinzl2 小时前
Ubuntu 24.04 解决 firefox 中文界面乱码
ubuntu·中文乱码·firefox
努力努力再努力wz2 小时前
【c++进阶系列】:map和set的模拟实现(附模拟实现的源码)
java·linux·运维·开发语言·c++