centos 7.2 离线部署docker-ce

mac2025-01-12  11

准备: 一台与服务器系统版本相同且可以连接外网的服务器,我用的是虚拟机 版本信息: centos 7.2 3.10.0-327.el7.x86_64 docker-ce-19.03.4-3.el7.x86_64

一、添加源
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo # 或者这个源 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

这步可能报错,也没影响,反正都连不了外网,也就不能下载镜像了

二、下载安装包

在虚拟机上下载安装包

yum install docker-ce --downloadonly --downloaddir=./

这个命令已经用过很多次了,–downloadonly只下载,–downloaddir下载文件保存目录。如果只要下载某个包,还有这个命令

yumdownloader docker-ce
三、安装
rpm -Uvh *.rpm

docker -v 查看版本

四、导入、导出镜像

因为服务器不能下载镜像,所以需要通过虚拟机环境下载好镜像,然后打包,再导入到服务上的docker,导出、导入的命令分别是

# 导出命令 docker save [options] images [images...] # 导入命令 docker load [options]

示例 docker save -o nginx.tar nginx:latest 或 docker save > nginx.tar nginx:latest 其中-o和>表示输出到文件,nginx.tar为目标文件,nginx:latest是源镜像名(name:tag)

docker load -i nginx.tar 或 docker load < nginx.tar 其中-i和<表示从文件输入。会成功导入镜像及相关元数据,包括tag信息

五、导入、导出容器

命令:

# 导出: docker export [options] container # 导入: docker import [options] file|URL|- [REPOSITORY[:TAG]]

示例 docker export -o nginx-test.tar nginx-test 其中-o表示输出到文件,nginx-test.tar为目标文件,nginx-test是源容器名(name)

docker import nginx-test.tar nginx:imp 或 cat nginx-test.tar | docker import - nginx:imp

最后: 可以依据具体使用场景来选择命令 若是只想备份images,使用save、load即可 若是在启动容器后,容器内容有变化,需要备份,则使用export、import

六、修改docker默认存储位置

当磁盘空间不够时,需要修改docker的默认存储位置: docker 启动之后,可以用docker info查看docker 信息,其默认存储位置为/var/lib/docker 将–graph /data/docker添加在docker.service文件中的ExecStart字段后面,其中/data/docker为你需要修改的存储目录

$ vim /usr/lib/systemd/system/docker.service …… ExecStart=/usr/bin/dockerd \ --graph /data/docker ……

重启服务

$ systemctl daemon-reload $ systemctl restart docker

之后用docker info可以看到目录已经改为/data/docker了

参考链接: https://blog.csdn.net/ncdx111/article/details/79878098 https://blog.csdn.net/bacteriumX/article/details/88417098

最新回复(0)