Ubuntu 安装 Docker 教程
Docker 是现代软件开发、测试和部署的基石。它通过容器化技术,让应用及其依赖可以打包在一起,在任何环境中以一致的方式运行。对于开发者来说,无论是部署微服务、搭建测试环境,还是实现 CI/CD,Docker 都是必备技能。
前言
本文介绍在 Ubuntu 系统上安装和使用 Docker 的方法,涵盖安装、配置和常用命令。
Docker 的安装 (Ubuntu)
1. 卸载旧版本(可选)
如果系统之前安装过旧的 Docker 版本,建议先执行卸载:
介绍在 Ubuntu 系统上安装 Docker 的详细步骤,包括卸载旧版本、配置 APT 仓库、安装 Docker CE 及组件。重点讲解了如何配置国内镜像加速器以提升拉取速度,并提供了 Docker 服务的常用管理命令、镜像操作指令以及容器运行参数详解,帮助开发者快速掌握 Docker 基础使用。
Docker 是现代软件开发、测试和部署的基石。它通过容器化技术,让应用及其依赖可以打包在一起,在任何环境中以一致的方式运行。对于开发者来说,无论是部署微服务、搭建测试环境,还是实现 CI/CD,Docker 都是必备技能。
本文介绍在 Ubuntu 系统上安装和使用 Docker 的方法,涵盖安装、配置和常用命令。
如果系统之前安装过旧的 Docker 版本,建议先执行卸载:
sudo apt-get remove docker docker-engine docker.io containerd runc
添加 Docker 官方的 GPG 密钥并设置 APT 软件源。
# 更新 apt 包索引并安装依赖
sudo apt-get update
sudo apt-get install -y ca-certificates curl
# 添加 Docker 的官方 GPG 密钥
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc
# 设置 Docker 的 APT 软件源
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# 更新 apt 包索引
sudo apt-get update
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
# 启动 Docker
sudo systemctl start docker
# 设置开机自启
sudo systemctl enable docker
# 校验安装启动是否成功
sudo docker ps
在国内直接从 Docker Hub 拉取镜像时速度较慢,配置国内镜像加速器是推荐步骤。
创建或编辑 /etc/docker/daemon.json 文件:
sudo tee /etc/docker/daemon.json <<-'EOF'
{
"registry-mirrors": [
"https://docker.registry.cyou",
"https://docker-cf.registry.cyou",
"https://dockercf.jsdelivr.fyi",
"https://docker.jsdelivr.fyi",
"https://dockertest.jsdelivr.fyi",
"https://mirror.aliyuncs.com",
"https://dockerproxy.com",
"https://mirror.baidubce.com",
"https://docker.m.daocloud.io",
"https://docker.nju.edu.cn",
"https://docker.mirrors.sjtug.sjtu.edu.cn",
"https://docker.mirrors.ustc.edu.cn",
"https://mirror.iscas.ac.cn",
"https://docker.rainbond.cc",
"https://do.nark.eu.org",
"https://dc.j8.work",
"https://gst6rzl9.mirror.aliyuncs.com",
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com",
"http://mirrors.ustc.edu.cn/",
"https://mirrors.tuna.tsinghua.edu.cn/",
"http://mirrors.sohu.com/"
],
"insecure-registries": [
"registry.docker-cn.com",
"docker.mirrors.ustc.edu.cn"
],
"debug": true,
"experimental": false
}
EOF
注意:Docker 会按顺序尝试镜像源,选择最快的一个。
sudo systemctl daemon-reload
sudo systemctl restart docker
systemctl start docker # 开启 docker
systemctl stop docker # 停止 docker
systemctl restart docker # 重启 docker
systemctl enable docker # 设置开机启动 docker
systemctl status docker # 查看 docker 状态
docker images # 查看本地所有镜像
docker search [镜像名] # 从 Docker Hub 搜索镜像
docker pull [镜像名]:[版本] # 拉取镜像
docker rmi [镜像 ID/镜像名] # 删除指定镜像
docker rmi -f $(docker images -aq) # 强制删除所有镜像
docker run 常见参数详解-d: 后台运行容器。-p [宿主机端口]:[容器端口]: 端口映射。-v [宿主机目录]:[容器目录]: 卷挂载。--name [容器名]: 为容器指定名称。-e [环境变量名]=[值]: 设置环境变量。--network [网络名]: 指定容器加入的网络。--restart=always: 设置容器的重启策略。示例:
docker run -d -p 80:80 --name my-nginx nginx
# 启动/停止/重启 容器
docker start [容器名/ID]
docker stop [容器名/ID]
docker restart [容器名/ID]
# 删除容器
docker rm [容器名/ID]
docker rm -f [容器名/ID]
docker rm $(docker ps -aq)
# 查看日志
docker logs [容器名/ID]
docker logs -f [容器名/ID]
# 容器开机自启
docker update --restart=always [容器名/ID]

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
查找任何按下的键的javascript键代码、代码、位置和修饰符。 在线工具,Keycode 信息在线工具,online
JavaScript 字符串转义/反转义;Java 风格 \uXXXX(Native2Ascii)编码与解码。 在线工具,Escape 与 Native 编解码在线工具,online
使用 Prettier 在浏览器内格式化 JavaScript 或 HTML 片段。 在线工具,JavaScript / HTML 格式化在线工具,online
Terser 压缩、变量名混淆,或 javascript-obfuscator 高强度混淆(体积会增大)。 在线工具,JavaScript 压缩与混淆在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online