CentOS 7上离线安装Docker
-
下载适用于CentOS 7的Docker安装包:
https://download.docker.com/linux/static/stable/x86_64/
-
将下载的
docker-24.0.4.tgz
文件上传到CentOS 7系统。例如,可以上传到/root
目录下。 -
解压
docker-24.0.4.tgz
文件:bashtar -xf docker-24.0.4.tgz
-
将解压出的所有Docker文件复制到
/usr/bin/
目录下:bashcp docker/* /usr/bin/
-
注册Docker为服务,进入
/etc/systemd/system/
目录,并创建docker.service
文件:bashvi /etc/systemd/system/docker.service
-
将以下内容复制到
docker.service
文件中。将192.168.3.10
替换为你自己服务器的IP地址:bash[Unit] Description=Docker Application Container Engine Documentation=https://docs.docker.com After=network-online.target firewalld.service Wants=network-online.target [Service] Type=notify ExecStart=/usr/bin/dockerd --selinux-enabled=false --insecure-registry=192.168.3.10 ExecReload=/bin/kill -s HUP $MAINPID LimitNOFILE=infinity LimitNPROC=infinity LimitCORE=infinity Delegate=yes KillMode=process Restart=on-failure StartLimitBurst=3 StartLimitInterval=60s [Install] WantedBy=multi-user.target
-
赋予
docker.service
文件执行权限:bashchmod 644 /etc/systemd/system/docker.service
-
重新加载systemd守护进程以应用更改:
bashsystemctl daemon-reload
-
启动Docker并设置开机自启动:
bashsystemctl start docker systemctl enable docker
-
测试Docker以确保它正常工作。
CentOS 7上卸载Docker
-
取消Docker的开机自启动:
bashsystemctl disable docker
-
删除Docker服务文件:
bashrm -rf /etc/systemd/system/docker.service
-
删除与Docker相关的二进制文件:
bashrm -rf /usr/bin/containerd rm -rf /usr/bin/containerd-shim rm -rf /usr/bin/ctr rm -rf /usr/bin/runc rm -rf /usr/bin/docker*
-
删除Docker的配置文件:
bashrm -rf /etc/docker/
-
如果存在镜像或容器,请删除它们:
bashrm -rf /var/lib/docker
扩展:导入镜像并运行
如果你希望在没有外网连接的机器上运行该镜像,以PaddleOCR为例:
- 在有外网连接的机器上,下载 PaddleOCR Docker 镜像及其依赖项(版本 1.6.server):
bash
docker pull registry.cn-hongkong.aliyuncs.com/llapi/ppocr:1.6.server
- 保存 Docker 镜像及其依赖项为 tar 文件:
bash
docker save -o ppocr_1.6.server.tar registry.cn-hongkong.aliyuncs.com/llapi/ppocr:1.6.server
-
复制 Docker 镜像文件 "ppocr_1.6.server.tar" 到没有外网连接的目标机器上。
-
在目标机器上安装 Docker。
-
使用以下命令加载 Docker 镜像:
bash
docker load -i ppocr_1.6.server.tar
- 运行 PaddleOCR 容器:
bash
docker run -itd --name ppocr -p 9000:9000 registry.cn-hongkong.aliyuncs.com/llapi/ppocr:1.6.server /bin/bash -c "sh /PaddleOCR/start.sh"
现在,PaddleOCR 容器版本 1.6.server 应该在没有外网连接的目标机器上运行,并且你可以通过端口 9000 访问它。至此教程结束