在 CentOS 上安装 Docker 引擎
shell
# 安装Tab键提示
yum -y install bash-completion
# 刷新配置文件,使Tab键功能生效
source /etc/profile
# 支持 devicemapper 储存属性
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
# 添加 Docker yum 仓库
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
# 安装 Docker
sudo yum install -y docker-ce
# 启动
sudo systemctl start docker.service
# 查看 Docker 状态(安装完成,默认未启动)
sudo systemctl status docker.service
# 设置开机自启(安装完成,默认未启动)
sudo systemctl enable docker.service
# 查看是否开机自启
systemctl list-unit-files | grep docker
systemctl is-enabled docker
其他命令
shell# 停止 systemctl stop docker.service # 重载 systemctl reload docker.service # 重启 systemctl restart docker.service # 关闭开机自启 systemctl disable docker.service
测试(包含:CentOS、Ubuntu)
shelldocker run \ --restart=always \ -itd \ --privileged=true \ --name httpd-2.4.48 \ -p 180:80 \ -p 1443:443 \ -v /etc/localtime:/etc/localtime \ -v /home/data/apache2/htdocs/:/usr/local/apache2/htdocs/ \ httpd:2.4.48
CentOS 开放端口
shellfirewall-cmd --zone=public --add-port=180/tcp --permanent firewall-cmd --zone=public --add-port=1443/tcp --permanent firewall-cmd --reload firewall-cmd --list-all
Ubuntu 开放端口
shellsudo ufw allow 180 sudo ufw allow 1443
访问
shellcurl http://宿主机IP:180
包含 CentOS、Ubuntu
登录阿里云的上述网址,可查看到阿里云给你分配的加速地址
加速网址固定不可变,使用时无需验证权限
也可使用本人申请的加速地址:
https://hnkfbj7x.mirror.aliyuncs.com
如果未修改过
/etc/docker/daemon.json
文件,可使用下列命令一键修改配置文件shellsudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <<-'EOF' { "registry-mirrors": ["https://hnkfbj7x.mirror.aliyuncs.com"] } EOF sudo systemctl daemon-reload sudo systemctl restart docker
如果修改过
/etc/docker/daemon.json
文件,请手动在该文件中添加或修改registry-mirrors
为:json{ "registry-mirrors": ["https://hnkfbj7x.mirror.aliyuncs.com"] }
设置软件目录(CentOS 与 Ubuntu 相同)
查看安装目录(默认:/var/lib/docker)
shell# 查看 Docker Root Dir docker info # 或 docker info | grep "Docker Root Dir"
调整软件目录(如:将 docker 软件目录设置为
/home/data/docker
)停止 docker
shellsystemctl stop docker.service # Ubuntu 安装安装完成后开机自启 systemctl stop docker.socket
编辑文件
shell# CentOS 安装 vim # yum -y install -y vim # Ubuntu 安装 vim # sudo apt-get install -y vim vim /etc/docker/daemon.json
添加
graph
json{ "graph": "/home/data/docker" }
调整位置
shell# 创建父文件夹 mkdir /home/data # 移动 mv /var/lib/docker/ /home/data # 建立软链接 ln -s /home/data/docker/ /var/lib/docker
重启与查看新目录是否生效
shellsystemctl start docker docker info | grep "Docker Root Dir"
在 Ubuntu 上安装 Docker 引擎
shell
# 卸载旧版本
sudo apt-get remove docker docker-engine docker.io containerd runc
# 更新apt包索引
sudo apt-get update
# 安装工具(允许apt通过 HTTPS 使用存储库)
sudo apt-get install -y ca-certificates curl gnupg lsb-release
# 添加 Docker 的官方 GPG 密钥
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg
# 更新apt包索引
sudo apt-get update
# 设置稳定存储库
echo \
"deb [arch=$(dpkg --print-architecture) 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
# 更新apt包索引
sudo apt-get update
# 安装 Docker 引擎
sudo apt-get install -y docker-ce docker-ce-cli containerd.io
# 查看 Docker 状态(安装完成,默认启动)
sudo systemctl status docker.service
# 查看是否开机自启(安装完成,默认启动)
systemctl list-unit-files | grep docker
systemctl is-enabled docker
- 修改 docker 时区
cd /usr/share/zoneinfo/Asia
cp -i Shanghai /etc/localtime
# 然后重启docker
其他命令
shell# 启动 sudo systemctl start docker.service # 设置开机自启 sudo systemctl enable docker.service # 停止 systemctl stop docker.service # 重载 systemctl reload docker.service # 重启 systemctl restart docker.service # 关闭开机自启 systemctl disable docker.service