本文已参与「新人创作礼」活动,一起开启掘金创作之路。
docker和docker-compose 离线安装,及导出所有镜像,带仓库和tag值导出到一个文件
docker 离线安装
下载
docker官网,下载准备使用的rpm包
https://download.docker.com/linux/centos/7/x86_64/stable/Packages/
需要一下三个rpm文件包
一个selinux包:docker-ce-selinux-17.03.0.ce-1.el7.centos.noarch.rpm
和docker包:docker-ce-17.12.0.ce-1.el7.centos.x86_64.rpm
和依赖包:containerd.io-1.2.2-3.3.el7.x86_64.rpm
安装
按顺序执行:
yum localinstall containerd.io-1.2.2-3.3.el7.x86_64.rpm -y
yum localinstall docker-ce-selinux-17.03.0.ce-1.el7.centos.noarch.rpm -y
yum localinstall docker-ce-17.12.0.ce-1.el7.centos.x86_64.rpm -y
设置开机启动和启动docker服务
systemctl enable docker
systemctl start docker
验证
验证docker是否成功安装
docker -v
docker-compose离线安装
下载
docker-compose github有下载地址
https://github.com/docker/compose/releases
安装
将下载可执行文件,放进系统
cp docker-compose-Linux-x86_64 /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
验证
验证docker-compose是否成功安装
docker-compose -v
一台机器上所有docker镜像,导出成一个文件。
根据docker image list 结果
将所有镜像的REPOSITORY和TAG值,用awk取出,并合并到一行。
最后使用docker save 保存到一个tar文件。
#!/bin/sh
sum=` docker image list |wc -l`
COUNT=`expr $sum - 1`
echo 镜像数量:$COUNT
TAG=`docker image list|grep -v REPOSITORY|awk '{print $1":" $2}'|awk 'ORS=NR%"'$COUNT'"?" ":"\n"{print}'`
echo TAG值:$TAG
docker save $TAG -o test.tar
导出所有镜像到test.tar文件。
另一台服务器导入
docker load -i test.tar