Operações avançadas relacionadas a imagens docker

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 
  ```

Guess you like

Origin blog.csdn.net/weixin_43423965/article/details/105224242