Localización del servicio de registro de Docker

Acerca de 【Registro】

  • El [Docker hub] oficial es un buen lugar para administrar los espejos públicos. Podemos encontrar los espejos que queramos en él o podemos subir nuestros propios espejos. Sin embargo, a veces, nuestros escenarios de uso requieren que tengamos un almacén espejo privado para administrar nuestros propios espejos. Esto se puede lograr a través del registro de software de código abierto.
  • [Registro] Hay dos códigos en github: base de código antiguo y base de código nueva. El código antiguo está escrito en python y hay problemas de rendimiento con pull y push. Después de la versión 0.9.1, se marcará como obsoleto (ver más información = " https://github.com/docker/distribution ), y no continuará el desarrollo.
  • Desde la versión 2.0, la nueva base de código se ha desarrollado en la nueva base de código. La nueva base de código está escrita en el lenguaje Go, y se modifica el algoritmo de generación del id del espejo y la estructura de almacenamiento del espejo en el registro, lo que optimiza en gran medida la eficiencia de la duplicación de tracción y empuje. 【Registro2.0】 =》https://hub.docker.com/_/registry/

[¿Qué puede hacer el Regisry?

  1. Controle estrictamente dónde se almacenan sus imágenes;
  2. Poseer completamente su canal de distribución de imágenes;
  3. Integre el almacenamiento y la distribución de imágenes firmemente en su flujo de trabajo de desarrollo interno;

Nota: Acerca de la introducción del sitio web oficial de [Registry] =》https://docs.docker.com/registry/

 

¿Cómo implementar el registro?

  • Descargue la imagen de registro de [Docker Hub] = "La versión predeterminada descargada del registro de extracción de docker es la última versión de docker.io/registry
  • Ejecute la imagen del registro para generar un contenedor = "docker run -d -v / opt / registry: / var / lib / registry -p 5000: 5000 --restart = always --name registry registry: latest [Registry] El servicio cargar por defecto La imagen se guarda en el / var / lib / registro del contenedor Monte el directorio / opt / registro del host en este directorio para guardar la imagen en el directorio / opt / registro del host.
  • Ver contenedores en ejecución = "docker ps / docker container ls Si ve todos, agregue el parámetro -a
  • Si el contenedor del registro está funcionando, ingrese [http: // docker host ip: 5000 / v2 /] en el navegador para ver, si el resultado = "{}, significa que el registro se está ejecutando normalmente

[Registro de prueba]

  • Cargue la imagen en el registro, nombre la imagen de registro del host en un formato que cumpla con los requisitos del almacén = "[url_registro: puerto / Nombre de la imagen: etiqueta]
--1.先标记镜像格式
docker tag nginx:latest localhost:5000/nginx:latest

--2.把标记格式的镜像推送到registy
docker push localhost:5000/nginx:latest

--注:localhost 为本地环境的ip地址;
  • Ver la lista de todos los espejos locales 
docker images -a 或 docker image ls -a
  • Extraiga la imagen del registro local

docker pull localhost:5000/nginx:latest

--注:localhost 为本地环境的ip地址;

En este paso, puede haber un problema de que la imagen no se pueda enviar al almacén privado.

The push refers to a repository [localhost:5000/nginx:latest]
The https://localhsot:5000/v2/: http:server gave HTTP response to HTTPS client

 1. La razón es que el servicio de registro iniciado localmente no es seguro ni confiable;

 2. Solución, modifique el archivo de configuración de la ventana acoplable del cliente /etc/docker/daemon.json para agregar la dirección del servicio de registro

{
"registry-mirrors": [ "https://pee6w651.mirror.aliyuncs.com"],"insecure-registries": ["localhost:5000"]
}

--备注:
1.加速镜像设置 =》"registry-mirrors": ["https://pee6w651.mirror.aliyuncs.com"] 是阿里云代理的Registry Hub仓库的地址,可以加快国内访问【Registry Hub】仓库的速度;
2.私有仓库镜像设置 =》"insecure-registries": ["localhost:5000"] 是本地【Registry】服务地址,localhost 为当前 docker 主机ip;

 3. [daemon.json] Ruta de almacenamiento = "cd / etc / docker

 

 4. Ver / editar la información de configuración del archivo daemon.json =》 vi daemon.json

 5. Salir y guardar =》: wq

Después de la modificación, reinicie la configuración del daemon.json del servicio Docker para que surta efecto, ejecute el comando =》 systemctl restart docker, presione nuevamente para tener éxito, verifique el directorio local / opt / registry (o ingrese http: // localhost: 5000 / v2 / en el navegador) _catalog)

  • O use el siguiente comando para ver la información del espejo en el almacén privado local
  1. curl -XGET http: // registro: 5000 / v2 / _catalog
  2. curl -XGET http: // registro: 5000 / v2 / nombre_imagen / etiquetas / lista

 

[Adjunto: dirección de aceleración de espejo]

  • Acelerador de imágenes en la nube de Alibaba =》 https://help.aliyun.com/document_detail/60750.html
  • Acelerador NetEase Cloud Mirror =》 https://hub-mirror.c.163.com
  • Acelerador de espejos oficial de China =》 https://regisry.docker-cn.com
  • Acelerador de espejos de la Universidad de Ciencia y Tecnología =》 https://docker.mirrors.ustc.edu.cn
  • Acelerador de espejos Tsinghua =》 https://mirrors.tuna.tsinghua.edu.cn

Los pasos anteriores han realizado el proceso de implementación del Registro localmente. Amigos interesados, apúrense y sigan al maestro de la pequeña c para implementarlo paso a paso! 

Supongo que te gusta

Origin blog.csdn.net/ChaITSimpleLove/article/details/105281751
Recomendado
Clasificación