Operações relacionadas à imagem do Docker
1. Como compartilhar a imagem local com outros hosts para uso
Solução 1: hub docker docker warehouse, última imagem docker para docker warehouse, outros hosts puxam a imagem
Solução 2: Armazém privado, geralmente use armazém privado para transmissão de imagens dentro da empresa.
常见的私有仓库有:
> * registry
> * harbor
> * nexus私服
Solução 3: transferência de arquivo, empacotar a imagem em um arquivo e transferi-lo entre vários hosts
Salve a imagem como um arquivo
docker save -o nome do pacote de imagem nome da imagem: versão
# 制作镜像
[root@hw-apptest02-11-174 Dockerfile]#
[root@hw-apptest02-11-174 Dockerfile]# docker build -t rabbitmq-test:v2 .
Sending build context to Docker daemon 46.59kB
Step 1/3 : FROM bitnami/rabbitmq:3.7.15-debian-9-r25
---> bab8c65b1cfb
Step 2/3 : MAINTAINER twj
---> Running in 35458d3e7a8b
Removing intermediate container 35458d3e7a8b
---> 446f8327a125
Step 3/3 : ADD rabbitmq_delayed_message_exchange-20171201-3.7.x.ez /opt/bitnami/rabbitmq/plugins/
---> 45e56477f99c
Successfully built 45e56477f99c
Successfully tagged rabbitmq-test:v2
# 打包镜像
[root@hw-apptest02-11-174 Dockerfile]# docker save -o rabbitmq-test.tar rabbitmq-test:v2
[root@hw-apptest02-11-174 Dockerfile]# ls
Dockerfile rabbitmq_delayed_message_exchange-20171201-3.7.x.ez rabbitmq-test.tar
Carregue a imagem, carregue a imagem localmente
docker load <nome do pacote de imagem
# 将镜像传输到其他主机上面执行镜像加载操作
[root@hw-apptest03-11-1761 ~]# docker load < rabbitmq-test.tar
1fbb4d6c55ca: Loading layer [==================================================>] 47.62kB/47.62kB
Loaded image: rabbitmq-test:v2
[root@hw-apptest03-11-1761 ~]# docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
rabbitmq-test v2 45e56477f99c 59 seconds ago 201MB
Solução 4: use o arquivo dockerfile para criar e produzir uma nova imagem no novo host
2. Como carregar a imagem do Google na China
Opção 1: Construa uma escada no host do docker
Solução 2: encontre um agente online ou use uma imagem compartilhada por outras pessoas no docker hub
Solução 3: faça você mesmo um espelho do google
Princípio: Tanto o docker hub quanto o Alibaba Cloud fornecem essa função, que está associada ao github e aciona automaticamente a construção de imagens docker. Crie um projeto no github, que armazena nosso dockerfile, mas se o git for enviado, o dockerhub criará e gerará automaticamente uma nova imagem.
Passos
1. github创建一个项目,用于后期存放不通版本google镜像的 'dockerfile'
2. 编辑一个dockerfile
```
From k8s.gcr.io/kube-scheduler-amd64:v1.9.3
```
3. 提交github,查看dockerhub
我们创建一个dockerfile,基于google的镜像镜像的操作,然后什么也不新增操作,生成的镜像则为google镜像的克隆
Solução 4: use a imagem acelerada do Microsoft Cloud
```
docker pull gcr.azk8s.cn/google-containers/federation-controller-manager-arm64:v1.3.1-beta.1
# eq
docker pull gcr.io/google-containers/federation-controller-manager-arm64:v1.3.1-beta.1
```