Requisito previo: Docker está instalado y configurado. Consulte mi artículo sobre instalación y configuración de Docker y Docker-compose basado en CentOS7 .
Estación espejo de código abierto de Alibaba Cloud-centos7.9.2009
1. Establecer credenciales de acceso
1.1 Servicio de imágenes de contenedor ACR
Inicie sesión en la página de inicio de Alibaba Cloud , haga clic en Productos - Contenedores - Servicio de imágenes de contenedores ACR
y haga clic en Consola de administración
1.2 Ingrese a la consola y haga clic en la lista de instancias
Servicio de alojamiento de imágenes de contenedores personales, uso limitado
1.3 Crear una versión personal
Servicio de alojamiento de imágenes de contenedor personal, uso limitado.
Tenga en cuenta que la versión personal no tiene garantía SLA y tiene restricciones de uso. No la utilice en negocios de producción.
La creación
se realizó correctamente.
1.4 Establecer contraseña de inicio de sesión del Registro
Haga clic en Aceptar.
Haga clic en Aceptar
para inicializar correctamente.
1.5 Ver credenciales de acceso
Haga clic en " Credenciales de acceso " en la imagen de arriba y copie las credenciales de acceso como se muestra a continuación.
1.6 Copiar y pegar credenciales Inicio de sesión exitoso
Inicio de sesión exitoso
1.7 Establecer una contraseña fija
Establece una contraseña fija y
completa el proceso de verificación del teléfono móvil
1.8 La versión personal se está ejecutando
1.9 Se completa el primer paso de las credenciales de acceso: se completa la configuración de la contraseña de acceso (se muestra en la esquina inferior derecha)
1.10 La Edición Personal de Container Image Service cancelará la función de sincronización de imágenes y escaneo de seguridad de las instancias de la Edición Personal a partir del 20 de agosto de 2023.
2. Crea un espacio de nombres
2.1 Instrucciones para crear un espacio de nombres
创建命名空间相关说明:
1、一个账号最多可以创建 3 个命名空间
2、命名空间创建参考:
推荐创建的命名空间用来对应一个公司、组织或个人用户,例如Aliyun、Obama。不推荐用来对应一个模块
或系统,例如Tomcat、CentOS,应用或模块推荐使用仓库进行管理。
3、定义您的镜像仓库命名空间,设置后不可修改。长度为2-30位,可填写小写英文字母、数字,可使用的分隔
符包括“_”、“-”(分隔符不能在首位或末位)
2.2 Haga clic en el espacio de nombres en la esquina inferior derecha.Paso 2
2.3 Crear espacio de nombres-2023815_djc-Referencia de creación de espacio de nombres
Namespace-2023815_djc creado correctamente
2.4 Paso 2: Espacio de nombres: la creación del espacio de nombres está completa
3. Cree un representante de almacén espejo2023815
Nota: El nombre del almacén de imágenes aquí, rep2023815 , es incorrecto. Es fácil distinguir las imágenes, pero el proceso y los pasos están bien. Se recomienda comenzar a leer directamente desde 4. Todo el proceso de creación del almacén de imágenes mysql. y 5. Enviar la imagen de MySQL al almacén MySQL del registro-espejo . Veamos 7. Resumen y reducción del trabajo desperdiciado.
3.1 Haga clic en el almacén espejo en la esquina inferior derecha Paso 3
3.2 Haga clic para crear un almacén espejo
3.3 Seleccionar el repositorio local para el código fuente
Fuente del código Seleccione un repositorio local . Las imágenes se pueden enviar al almacén espejo a través de la línea de comando .
3.4 Introducción a otras fuentes de código
3.4.1 Introducción al código fuente-Codeup
3.4.2 Código fuente-GitHub
3.4.3 Código fuente-Bitbucket
3.4.4 Código fuente-GitLab privado
3.4.5 Repositorio local de código fuente
3.5 Seleccione el almacén local para el código fuente: el almacén espejo rep2023815 se creó correctamente
3.5.1 Rep. De Almacén2023815-Información Básica-Guía De Operación
3.5.2 Rep. de almacén espejo2023815-Información básica-Descripción del producto
3.6 Almacén espejo rep2023815-trigger
3.7 Almacén rep2023815-versión espejo
3.8 Enviar la imagen jdk11 al almacén de espejo del Registro rep2023815
docker login --username=djcking2020 registry.cn-hangzhou.aliyuncs.com
//输入之前设置的密码
docker tag 526230ab6ddf registry.cn-hangzhou.aliyuncs.com/2023815_djc/rep2023815:11
docker push registry.cn-hangzhou.aliyuncs.com/2023815_djc/rep2023815:11
3.9 Enviar la imagen nginx al almacén de espejo del Registro rep2023815
docker login --username=djcking2020 registry.cn-hangzhou.aliyuncs.com
输入之前设置的密码
docker tag 0e901e68141f registry.cnhangzhou.aliyuncs.com/2023815_djc/rep2023815:v1.21.6
docker push registry.cn-hangzhou.aliyuncs.com/2023815_djc/rep2023815:v1.21.6
3.10 Envíe la imagen mysql8.0.31 al almacén de registro-espejo rep2023815
//1-登录 在终端中输入访问凭证,登录Registry实例
docker login --username=djcking2020 registry.cn-hangzhou.aliyuncs.com
输入之前设置的密码
//2-tag
//docker images
//mysql 8.0.31 484689f290f 8 months ago 538MB
//docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/2023815_djc/rep2023815:[镜像版本号]
docker tag 7484689f290f registry.cn-hangzhou.aliyuncs.com/2023815_djc/rep2023815:v8.0.31
3-push
//docker push registry.cn-hangzhou.aliyuncs.com/2023815_djc/rep2023815:[镜像版本号]
docker push registry.cn-hangzhou.aliyuncs.com/2023815_djc/rep2023815:v8.0.31
请根据实际镜像信息替换示例中的[ImageId]和[镜像版本号]参数。
3.12 Descripción general del almacén espejo
Nota: El nombre del almacén de imágenes aquí, rep2023815 , es incorrecto. Es fácil distinguir las imágenes, pero el proceso y los pasos están bien. Se recomienda comenzar a leer directamente desde 4. Todo el proceso de creación del almacén de imágenes mysql. y 5. Enviar la imagen de MySQL al almacén MySQL del registro-espejo . Veamos 7. Resumen y reducción del trabajo desperdiciado.
4. Todo el proceso de creación de un almacén espejo mysql.
4.1 Página de inicio
4.2 Haga clic en la consola de administración
4.3 Ingresar a la lista de instancias
4.4 Haga clic para ingresar al almacén espejo
4.5 Haga clic para crear un almacén espejo
Haga clic en "Siguiente"
4.6 Información básica de mysql del almacén espejo
Cuando se le solicite, haga clic en "Agregar almacén correctamente".
4.6.1 Guía de operación e información básica de mysql del almacén espejo
操作指南
1. 登录阿里云Docker Registry
$ docker login --username=djcking2020 registry.cn-hangzhou.aliyuncs.com
用于登录的用户名为阿里云账号全名,密码为开通服务时设置的密码。
//输入之前设置的密码
您可以在访问凭证页面修改凭证密码。
2. 从Registry中拉取镜像
$ docker pull registry.cn-hangzhou.aliyuncs.com/2023815_djc/mysql:[镜像版本号]
3. 将镜像推送到Registry
$ docker login --username=djcking2020 registry.cn-hangzhou.aliyuncs.com
$ docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/2023815_djc/mysql:[镜像版本号]
$ docker push registry.cn-hangzhou.aliyuncs.com/2023815_djc/mysql:[镜像版本号]
请根据实际镜像信息替换示例中的[ImageId]和[镜像版本号]参数。
4. 选择合适的镜像仓库地址
从ECS推送镜像时,可以选择使用镜像仓库内网地址。推送速度将得到提升并且将不会损耗您的公网流量。
如果您使用的机器位于VPC网络,请使用 registry-vpc.cn-hangzhou.aliyuncs.com 作为Registry的域名登录。
5. 示例
使用"docker tag"命令重命名镜像,并将它通过专有网络地址推送至Registry。
$ docker images
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
registry.aliyuncs.com/acs/agent 0.7-dfb6816 37bb9c63c8b2 7 days ago 37.89 MB
$ docker tag 37bb9c63c8b2 registry-vpc.cn-hangzhou.aliyuncs.com/acs/agent:0.7-dfb6816
使用 "docker push" 命令将该镜像推送至远程。
$ docker push registry-vpc.cn-hangzhou.aliyuncs.com/acs/agent:0.7-dfb6816
4.6.2 Almacén espejo mysql-información básica-descripción del producto
4.7 Puede ver el almacén espejo mysql recién creado en el almacén espejo.
5. Envíe la imagen de MySQL al almacén MySQL del registro-espejo.
5.1 Enviar la imagen al Registro: Guía de operación
Consulte el punto 3 en 4.6.1 Warehouse MySQL-Información básica-Guía de operación .
3. 将镜像推送到Registry
docker login --username=djcking2020 registry.cn-hangzhou.aliyuncs.com
输入之前设置的密码
docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/2023815_djc/mysql:[镜像版本号]
docker push registry.cn-hangzhou.aliyuncs.com/2023815_djc/mysql:[镜像版本号]
请根据实际镜像信息替换示例中的[ImageId]和[镜像版本号]参数。
5.2 imágenes de la ventana acoplable Verifique la información de la imagen que debe cargarse para enviar
ID de IMAGEN y número de versión de la imagen (TAG)
Reemplace los parámetros [ImageId] y [Image Version Number] en el ejemplo según la información real de la imagen.
5.3 Enviar la imagen de MySQL al almacén MySQL del registro-espejo
5.3.1 Enviar la imagen de MySQL al comando mysql del almacén espejo del Registro
3. 将镜像推送到Registry
//1-login
docker login --username=djcking2020 registry.cn-hangzhou.aliyuncs.com
输入之前设置的密码
//2-tag
//这个命令并没有推送镜像,只是给镜像指定一个版本,这个版本不是指本地镜像的版本,而是推送后在阿里云仓库的版本。
docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/2023815_djc/mysql:[镜像版本号]
//3-push
docker push registry.cn-hangzhou.aliyuncs.com/2023815_djc/mysql:[镜像版本号]
-----------
//1-login
//连续上传,只需要登录一次
docker login --username=djcking2020 registry.cn-hangzhou.aliyuncs.com
输入之前设置的密码
-------------mysql 8.0.29-----------------------
//2-tag
docker tag 33037edcac9b registry.cn-hangzhou.aliyuncs.com/2023815_djc/mysql:8.0.29
//3-push
docker push registry.cn-hangzhou.aliyuncs.com/2023815_djc/mysql:8.0.29
-------------mysql 8.0.31-----------------------
//2-tag
docker tag 7484689f290f registry.cn-hangzhou.aliyuncs.com/2023815_djc/mysql:8.0.31
//3-push
docker push registry.cn-hangzhou.aliyuncs.com/2023815_djc/mysql:8.0.31
【说明】:
docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/2023815_djc/mysql:[镜像版本号]
这个命令并没有推送镜像,只是给镜像指定一个版本,这个版本不是指本地镜像的版本,而是推送后在阿里云仓库的版本。
//tag后面的是你要推送的镜像id
//后面是你的镜像仓库地址,直接去创建好的仓库去复制
5.3.2 Enviar la imagen de mysql al almacén espejo del registro captura de pantalla de mysql
Digest:该镜像的摘要信息。当您下载镜像时,最后一行中会出现这个值。
镜像ID: 使用1.10以上版本的客户端推送、拉取镜像时,这个值在客户端和服务端能够保持一致。否则这个值
将是随机的不予提供。
5.4 Algunos problemas al enviar mysql8.0.31 al almacén MySQL del registro-espejo
El almacén espejo rep2023815 también envió una imagen de mysql8.0.31. Consulte 3.10 para enviar el espejo mysql8.0.31 al almacén espejo de registro rep2023815 .
5.5 Inserte la imagen de MySQL en el almacén MySQL del registro-espejo y use las imágenes de Docker nuevamente
Se descubre que después de ingresar al Registro, se generará localmente un espejo con el mismo ID de IMAGEN , como se muestra en la siguiente figura.
5.6 Ingrese a Alibaba Cloud Image Warehouse para ver la imagen mysql enviada al Registro (almacén espejo mysql)
Haga clic en el almacén espejo de mysql y haga clic en la versión espejo
6. Inserte la imagen JDK11 que se creó previamente manualmente usando dockerfile al jdk del almacén de espejo del Registro.
Consulte el artículo Uso de dockerfile para crear manualmente una imagen JDK11, ejecutar el contenedor y verificarlo.
3. 将镜像推送到Registry
docker login --username=djcking2020 registry.cn-hangzhou.aliyuncs.com
输入之前设置的密码
//docker tag [ImageId] registry.cn-hangzhou.aliyuncs.com/2023815_djc/jdk:[镜像版本号]
docker tag 526230ab6ddf registry.cn-hangzhou.aliyuncs.com/2023815_djc/jdk:11
//docker push registry.cn-hangzhou.aliyuncs.com/2023815_djc/jdk:[镜像版本号]
docker push registry.cn-hangzhou.aliyuncs.com/2023815_djc/jdk:11
请根据实际镜像信息替换示例中的[ImageId]和[镜像版本号]参数。
6.1 Crear jdk de almacén espejo
6.2 jdk mirror warehouse-almacén local-información básica-guía de operación
imágenes de Docker
Aquí puede ver que hay dos imágenes locales con el mismo ID de IMAGEN. Ambas ETIQUETAS son 11. Una secreausando el comando docker build -t java:11. Al usar dockerfile para construir manualmente la imagen JDK11, ejecute el contenedor y verificarlo . La otra es enviar la imagen jdk11 al Registro en 3.9; después de enviar el almacén de imágenes rep2023815 al almacén de imágenes rep2023815 , se generará localmenteespejo con el mismo ID de IMAGEN .
6.3 Inserte la imagen jdk en la captura de pantalla jdk del almacén de imágenes del Registro
Se puede encontrar que la información que se muestra aquí es diferente de la información que se muestra después de que el envío normal al almacén sea exitoso.Aquí se muestra Montado desde 2023815_djc/rep2023815.
1、此时rep2023815和jdk这两个镜像仓库相同的是中都推送了jdk11这个镜像,并且IMAGE ID和TAG都相同。
2、但是rep2023815镜像仓库中的REPOSITORY就是registry.cnhangzhou.aliyuncs.com/2023815_djc/rep2023815,
而且还存放了mysql8.0.31的镜像。
3、jdk镜像仓库的推送的jdk的REPOSITORY是registry.cn-hangzhou.aliyuncs.com/2023815_djc/jdk,只存放了jdk这一种镜像。
Por lo tanto, el MONTADO DESDE 2023815_DJC /REP2023815 que se muestra aquí debe ser el almacén espejo del espejo JDK11 con el mismo ID de iMage en el mismo ID de iMage ( 3.9 para enviar la imagen JDK11 a REP2023815_DJC. Gistry-mirror warehouse rep2023815 ) , directamente La imagen jdk11 está sincronizada al almacén de imágenes jdk , por lo que la visualización es diferente de la inserción normal.
6.4 Almacén espejo jdk
La imagen jdk11 acaba de enviarse al jdk del almacén de espejo del Registro
6.5 Escaneo de seguridad jdk del almacén espejo
6.6 Información de la capa espejo jdk del almacén espejo
Encontrará que la información de la capa de imagen aquí es aproximadamente la misma que el contenido del archivo dockerfile cuando usamos dockerfile para crear manualmente la imagen JDK11, ejecutar el contenedor y verificarlo .
7. Resumen
docker images 各参数说明:
REPOSITORY:表示镜像的仓库源名
TAG:镜像的标签或版本
IMAGE ID:镜像ID
CREATED:镜像创建时间
SIZE:镜像大小
1、同一镜像仓库源可以有多个 TAG,代表这个仓库源的不同个版本,如 jdk仓库源里,有 11、12、13....20 等多个不同的版本,我们使用 REPOSITORY:TAG 来定义并区分不同的镜像,例如jdk:11,jdk:12,jdk:13,jdk:20等。
2、所以一个镜像仓库只存放一种镜像,镜像仓库名要见名知意,如镜像仓库jdk,就知道这个镜像仓库存放的是jdk11版本。
registry.cn-hangzhou.aliyuncs.com/2023815_djc/jdk:11
如镜像仓库mysql,就知道这个镜像仓库存放的是mysql:8.0.29和mysql:8.0.31
这两个版本。
registry.cn-hangzhou.aliyuncs.com/2023815_djc/mysql:8.0.29
registry.cn-hangzhou.aliyuncs.com/2023815_djc/mysql:8.0.31
如图一、图二所示。
3、所以rep2023815中存放了好几种镜像,mysql,jdk,nginx,是错误的存放方式,容易无法区分镜像,如图一、图二所示。
//jdk
registry.cn-hangzhou.aliyuncs.com/2023815_djc/rep2023815:11
//mysql
registry.cn-hangzhou.aliyuncs.com/2023815_djc/rep2023815:v8.0.31
//nginx
registry.cn-hangzhou.aliyuncs.com/2023815_djc/rep2023815:v1.21.6
4、所以镜像仓库名一般写成应用名就可以了,如mysql,oracle,jdk等。
5、发现推送到Registry(某镜像仓库)后会在本地也生成一个相同IMAGE ID的镜像,如图一、图二所示。
7.1 La figura 1 es la siguiente
7.2 La figura 2 es la siguiente
8. Anuncio relacionado con el ajuste de la función del producto del servicio de imágenes de contenedores ACR Personal Edition (20 de agosto de 2023)
Container Image Service ACR Personal Edition Anuncio de ajuste de función del producto Hora de actualización: 2023-06-26 14:25
Estimados usuarios de Alibaba Cloud Container Image Service ACR:
Container Image Service ACR planea cancelar Container Image Service ACR Personal a partir del 20 de agosto de 2023 versión del funciones de sincronización y escaneo de seguridad de imágenes. Si existen requisitos para la seguridad de las imágenes y una distribución eficiente de las imágenes entre regiones, se recomienda planificar con anticipación la migración a la instancia de Container Image Service ACR Enterprise Edition. Para operaciones específicas, consulte Migración de Personal Edition.Cambios:
a partir del 20 de agosto de 2023, las funciones de escaneo de seguridad de imágenes y sincronización de imágenes de Container Image Service ACR Personal Edition ya no admitirán el inicio de nuevas tareas, y todas las tareas completadas ya no permitirán consultar el estado y los detalles de la tarea. Preste atención al cambio del contenido de este producto a tiempo para evitar afectar su uso posterior. Gracias por su cooperación.
2023-8-18 05:27:45
La migración de la versión personal
accede a la función asociada al servicio VPC
La imagen de la instancia de la versión personal se importa a la instancia de la versión Enterprise
Utilice el nombre de dominio de la versión personal para acceder a la instancia de la versión Enterprise
[Reimpreso de aliyun official-Container Image Service ACR] Preguntas frecuentes sobre Docker:
cree manualmente una imagen JDK11 usando dockerfile, ejecute el contenedor y verifíquelo