1、安装 Docker
1.1、最简单安装方式
sudo apt-get update
sudo apt install docker.io
1.2、安装 apt 依赖包
sudo apt-get --no-install-recommends install -y \
apt-transport-https \
ca-certificates \
curl \
gnupg-agent \
software-properties-common
1.3、添加 Docker 的 GPG 密钥,官方站经常访问不了,可以使用其他站
Docker 官方源
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
或者 中科大镜像站
curl -fsSL https://mirrors.ustc.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
或者 清华大学镜像站
curl -fsSL https://mirrors.tuna.tsinghua.edu.cn/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
1.4、 添加 Docker 软件源
sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
但是 download.docker.com 经常不稳定,连接不上,换成阿里云或其他镜像
sudo vim /etc/apt/sources.list
改成
deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu focal stable
重新更新索引包
sudo apt-get update
添加 Docker 软件源
sudo add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
1.5、安装Docker
sudo apt-get --no-install-recommends install -y \
docker-ce docker-ce-cli containerd.io docker-compose-plugin
- docker-ce: Docker Community Edition,是 Docker 的开源版本。
- docker-ce-cli: Docker 命令行工具,用于与 Docker 引擎交互。
- containerd.io: 这是 Docker 使用的核心容器运行时,负责容器的生命周期管理。
- --no-install-recommends: 这个选项只安装指定的包及其必要的依赖,而不安装额外的推荐软件包。
- docker-compose-plugin: 这是 Docker Compose 插件。
1.6、安装 docker-compose
sudo apt install docker-compose
docker-compose --version
#上面一般下载的是 1.25 版本 ,版本过低 , 使用以下命令会下载最新的 docker-compose
curl -L https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m) -o /usr/bin/docker-compose
chmod +x /usr/bin/docker-compose
以前安装过 docker-compose 版本过低可以直接替换掉 /usr/local/bin 里的 docker-compose
2、添加 Docker Hub 镜像
网易云 Docker 镜像:hub-mirror.c.163.com
百度云 Docker 镜像:mirror.baidubce.com
腾讯云 Docker 镜像:ccr.ccs.tencentyun.com
Docker Proxy 镜像:dockerproxy.com
阿里云 Docker 镜像(需要使用阿里账号):cr.console.aliyun.com/
2.1、配置镜像仓库 打开 /etc/docker/daemon.json ,没有可以直接创建
sudo vim /etc/docker/daemon.json
添加配置,自行添加
{
"registry-mirrors": [
"https://hub-mirror.c.163.com",
"https://mirror.baidubce.com",
"https://do.nark.eu.org",
"https://dc.j8.work",
"https://docker.m.daocloud.io",
"https://dockerproxy.com",
"https://docker.mirrors.ustc.edu.cn",
"https://docker.nju.edu.cn",
"https://docker.1panel.live",
"https://docker.1panelproxy.com"
]
}
2.2、重新加载配置并重启Docker
sudo systemctl daemon-reload
sudo systemctl restart docker
3、Docker 常用命令
docker --version: 查看docker版本docker run 镜像名称: 运行镜像docker ps -a: 查看当前所有的容器docker ps: 查看当前运行中的容器docker images: 查看镜像列表docker rm 容器名/容器ID: 删除指定 id 的容器docker stop/start/restart 容器名/容器ID: 停止/启动/重启指定 id 的容器docker rmi image-id: 删除指定 id 的镜像docker volume ls: 查看 volume 列表docker network ls: 查看网络列表docker inspect 容器名/容器ID: 查看容器详情docker exec -it 容器名/容器ID /bin/bash: 与运行容器交互docker commit 容器名/容器ID 镜像名:标签: 保存当前容器为镜像docker-compose --version: 显示 docker-compose 的版本信息docker-compose config --services: 列出 docker-compose.yml 中配置的所有服务docker-compose up: 启动 docker-compose.yml 的服务,使用 -d 在后台运行容器。docker-compose up -d 服务名: 后台启动 docker-compose.yml 中定义的服务docker-compose restart: 重启所有在 docker-compose 中定义的服务docker-compose down: 停止和删除 docker-compose 容器docker-compose stop: 停止正在运行的 docker-compose 所有容器docker-compose start 容器名/容器ID: 启动已存在的容器docker-compose build: 构建或重新构建服务镜像docker-compose config: 验证并查看 docker-compose.yml 文件的配置docker-compose -f xxx.yml ...: 使用其他的 yml 文件docker logs -f 容器名/容器ID: 实时打印当前容器日志docker logs 容器名/容器ID > /root/logs.log: 将日志写入 /root/logs.log 文件中导出docker cp container:/xx/xx/1.txt /root/1.txt: 将容器内的文件复制到宿主机root目录下docker cp /root/1.txt container:/data/config: 将宿主机root目录下文件放入到容器 /data/config 目录下docker save -o jdk23 jdk:v23.1: 将 docker 镜像 jdk:v23.1 打包为 jdk23 image 在当前目录cat jdk23 | docker load: 将 jdk23 image 复原为 docker 镜像docker build -t iot:v1.6.8 .:根据当前目录下的 Dockerfile 打包 docker 镜像 name 为 iot , tag 为 v1.6.8docker tag IMAGE_ID your-image-name:your-tag: 重新标记镜像名和镜像标签