环境准备
前提
本文使用 CentOS 7.9 系统进行 docker 环境搭建说明示例,需要需要准备一台搭建 CentOS 7+ 系统的 Linux 主机,其他版本或 Linux 发行版可能会有差异。
Docker 安装
安装提示
Docker 引擎有多种安装方式,可以根据需要以不同的方式安装。
- 设置 Docker 存储库 ,方便安装和升级,本文以此方式进行安装示例。推荐
- 下载 RPM 包,手动安装,并完全手动管理升级。
- 使用自动化 便捷脚本 来安装。
卸载旧版本
避免旧版本对安装有影响,我们需要对旧版本进行卸载,执行如下命令:
sudo yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-selinux docker-engine-selinux docker-engine
安装依赖组件
卸载完成后,安装所需的
lvm2
、yum-utils
等依赖组件。
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
添加 yum 源
官方源速度比较慢,替换为阿里云镜像源,提高下载速度。
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
添加源之后需要重建缓存,将最新的包信息缓存到本地。
sudo yum clean all
sudo yum makecache fast
安装 docker 引擎
执行完成后,进行
docker
安装,若提示接受GPG
密钥,验证指纹是否匹配060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35
,耐心等待安装完成。
sudo yum install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
启动 docker
安装完成后,启动
docker
并设置开机自启。
sudo systemctl start docker
sudo systemctl enable docker
安装验证
查看
docker
版本信息。
docker version
显示如下说明已安装且启动成功,不同版本可能会有差异。
Client: Docker Engine - Community
Version: 24.0.5
API version: 1.43
Go version: go1.20.6
Git commit: ced0996
Built: Fri Jul 21 20:39:02 2023
OS/Arch: linux/amd64
Context: default
Server: Docker Engine - Community
Engine:
Version: 24.0.5
API version: 1.43 (minimum version 1.12)
Go version: go1.20.6
Git commit: a61e2b4
Built: Fri Jul 21 20:38:05 2023
OS/Arch: linux/amd64
Experimental: false
containerd:
Version: 1.6.22
GitCommit: 8165feabfdfe38c65b599c4993d227328c231fca
runc:
Version: 1.1.8
GitCommit: v1.1.8-0-g82f18fe
docker-init:
Version: 0.19.0
GitCommit: de40ad0
配置加速器
将镜像代理仓库设置为国内源,提高镜像下载速度:
1. 编辑 daemon 文件
vi /etc/docker/daemon.json
2. 配置镜像源
常用 Docker 镜像加速源
- docker 官方国内镜像源:https://registry.docker-cn.com
- 网易 docker 源:http://hub-mirror.c.163.com
- 中科大 docker 源:https://docker.mirrors.ustc.edu.cn
- 阿里云镜像加速器(需前往控制台自行配置):https://cr.console.aliyun.com/
将加速镜像添加至如下位置,:wq
保存退出。
{
"registry-mirrors": [
"https://registry.docker-cn.com",
"http://hub-mirror.c.163.com",
"https://docker.mirrors.ustc.edu.cn"
]
}
3. 重新载入配置
修改配置文件需重新
reload
,并重启docker
服务。
sudo systemctl daemon-reload
sudo systemctl restart docker
开启远程访问 危险
警告
开启远程访问会有安全风险,生产环境使用不建议开启!!!
1. 编辑 docker.service 文件
vi /usr/lib/systemd/system/docker.service
2. 修改配置
找到
ExecStart=/usr/bin/dockerd
位置,并后面添加如下代码,然后:wq
保存退出:
-H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock
3. 重新载入配置
sudo systemctl daemon-reload
sudo systemctl restart docker
开放端口
开启远程访问后,对外所暴露端口为 修改配置 步骤配置端口,即 :
2375
,这里以iptables
配置为例:
1. 编辑 iptables 规则配置文件
vi /etc/sysconfig/iptables
2. 添加放行规则
添加如下规则,放行
2375
端口,规则配置完成后,:wq
保存退出:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 2375 -j ACCEPT
3. 重启 iptables 服务
sudo systemctl restart iptables.service
Docker-compose 安装
下载 docker-compose
下载源为
Github
,使用 ghproxy 代理进行下载加速 。
sudo curl -L "https://mirror.ghproxy.com/https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
添加可执行权限
下载的二进制文件存储路径为
/usr/local/bin/docker-compose
,对该目录添加可执行权限。
sudo chmod +x /usr/local/bin/docker-compose
验证安装是否成功
docker-compose --version
打印如下,说明安装成功。
docker-compose version 2.20.3, build 4667896b