‫El registro en realidad es solo un servidor HTTPS como hemos hablado.
‫Se ejecuta en el puerto 5000 de forma predeterminada.
‫Lo que vamos a hacer es comenzarlo y luego vamos a volver a etiquetar una imagen
‫existente que tenemos, que en realidad obtuvimos de Docker Hub. Así es como realmente cambias dónde el registro,
‫qué registro se va a utilizar, en realidad, vas a volver a etiquetar las imágenes existentes. Luego vamos a eliminar esa imagen de nuestro caché local y vamos
‫a sacarla del registro después de
‫que lo empujamos hacia arriba. Entonces realmente vamos a parar y volver
‫a crear el registro para mostrar cómo puede cambiar el almacenamiento.
‫En nuestro caso, solo vamos a utilizar el almacenamiento local, pero hay muchas
‫opciones de almacenamiento de las que hablaremos. Quiero hacer una nota rápida sobre
‫el registro y cómo prefiere TLS. Fuera de la caja, Docker no hablará
‫con ningún registro a menos que esté ejecutando la seguridad HTTPS adecuada.
‫¿Derecha?
‫Quiere asegurarse de que su autenticación esté encriptada y que todo lo que pase sea de
‫confianza.
‫Así que llamamos a esto seguro por defecto.
‫¿Derecha? Probablemente hayas escuchado eso antes. En realidad, no se hablará con el registro
‫que vamos a crear a menos que lo estemos creando en los hosts locales, lo cual somos.
‫Así es como vamos a hacerlo, solo se está ejecutando en nuestro host local.
‫Entonces eso es fácil.
‫En realidad, no tenemos que preocuparnos por TLS solo para probar esto de manera predeterminada porque, como la mayoría de los sitios web,
‫el registro no viene con TLS integrado.
‫Por lo general, debe crear su propio certificado.
‫necesite, en realidad hay una inseguridad. opción de registro que debería habilitar en el motor.
‫Pero, si va a hacer certificados autofirmados para su
‫registro o tal vez lo vaya a ejecutar de forma remota sin TLS, lo cual no lo aliento a
‫hacer, pero en caso de que lo
‫No vamos a cubrir eso aquí.
‫Pero solo para saber, que en producción, si alguna vez
‫necesitas hacer un certificado autofirmado, solo necesitarías habilitar eso. Recibirá un buen error de Docker,
‫dirá: "No puedo hablar con este registro porque no confío en él. "Algo así, si intentas
‫hacer eso".
‫Hoy, solo vamos a ejecutarlo con HTTP regular en el puerto 5000.
‫Vuelvo a
‫mi máquina local y hago un contenedor acoplable ejecutando -d -p
‫5000, y el valor predeterminado es 5000 en el contenedor, y lo llamaré registro. Entonces estamos usando un registro de imágenes.
‫Si hago un contenedor docker ls, verá que se está ejecutando. Para usarlo,
‫realmente usamos etiquetas.
‫Si recuerda con nuestras imágenes con Docker Hub, tuvimos que ponerlas en el formato de nombre de
‫cuenta y de repositorio, pero eso es para Docker Hub. host allí.
‫Para cualquier otro registro, también debemos etiquetarlo con el
‫De hecho, voy a sacar algo llamado hello-world, porque es bonito y pequeño. Cuando lo ejecutamos, simplemente escupe
‫un texto que básicamente valida que ese contenedor se
‫ejecutó, perfecto para este pequeño y bonito ejemplo. Lo que tengo que hacer para llevarlo a mi registro local es
‫que necesito darle otra etiqueta que le indique a mi daemon dónde debe enviarlo.
‫Usamos la etiqueta docker y luego la imagen que necesito etiquetar y luego, donde quiero etiquetarla.
‫Entonces 127. 0. 0. 5000, tengo que
‫poner el puerto allí y luego hello-world.
‫1:
‫Esto sería el equivalente a hacer mi propia imagen oficial en la raíz de mi registro local.
‫Si hago una imagen de ventana acoplable,
‫verá que hello-world aquí tiene dos etiquetas y es la misma identificación de imagen porque todo lo que hice fue darle otra etiqueta.
‫Pero si hago un empuje de docker, en realidad no empujará a Docker Hub, verá que hay una IP y un puerto allí y empujará hacia
‫arriba a mi registro local.
‫Ahora eliminemos nuestras copias locales para que la imagen de Docker se quite y la imagen de Docker.
‫DE ACUERDO.
‫Oh. Derecha.
‫No se puede eliminar la imagen porque primero tenemos que deshacernos de ese contenedor.
‫Entonces docker
‫container rm, y ese es el contenedor que ejecutó hello-world, ahora puedo eliminar la imagen.
‫Aquí vamos.
‫De acuerdo, ahora si hago una imagen de portón, estoy seguro de que no la tengo, ¿verdad? No tengo esa imagen.
‫Ahora puedo hacer un estibador desde esa misma ubicación.
‫Aquí vamos.
‫Tiro hacia abajo esa imagen.
‫Lo primero, si va a ejecutar su propio
‫registro por sus propios motivos, lo primero que debe hacer es usar un volumen para almacenar los datos.
‫En este caso, podríamos eliminar el registro y usar un volumen para hacer lo mismo.
‫Si estuviera en este
‫directorio donde estoy registry-sample-1, podría hacer
‫un registro de contenedor contenedor Docker, registro contenedor rm docker.
‫Todo bien.
‫Así que hemos limpiado nuestro contenedor de registro. Hagámoslo de nuevo. Docker contenedor ejecuta d puerto 5000, llámalo registro
‫de nuevo. Esta
‫vez vamos a darle un volumen, y vamos a usar el truco de pwd para dar nuestro directorio de trabajo
‫actual, y luego voy a poner un subdirectorio aquí de datos de registro. Eso necesita ir al registro var lib.
‫La última parte es que estamos usando la imagen de registro.
‫Este es, técnicamente, un nuevo registro con una nueva base de datos.
‫que acabamos de hacer hace un tiempo y
‫la bajé, verás que todavía tenemos el hello-world.
‫Si hicieras un ll en los datos del registro, no habría nada allí todavía, pero si tomé la imagen
‫Si hago un empuje de docker nuevamente, debería volver a presionarlo hacia arriba.
‫Ahora si hago todo y el directorio de datos de registro, verás información allí. Acabo de hacer un
‫comando de árbol que puede no estar en tu
‫sistema operativo pero no tienes que ejecutar realmente si no quieres. Es una herramienta Linux común que me mostrará todos los
‫diferentes caminos aquí. Verá que en realidad divide las cosas
‫en los datos, o blobs, que son los binarios reales que están dentro de la imagen, luego los
‫metadatos que lo rodean, que es el manifiesto, y las etiquetas y cosas por el estilo. múltiples capas pasando aquí.
‫Todo está en sus propios directorios SHA porque tienes
‫En realidad, no es particularmente útil para nosotros cavar por ahí, pero es interesante de ver.
‫Ahí vas.
‫Es lo básico para ejecutar un registro en su máquina local.
‫Luego, a continuación, necesitaremos protegerlo con algunos TLS y luego habilitar alguna autenticación.
‫Todo bien. Eso es lo básico de ejecutar un registro de Docker.
‫Aquí están los principales comandos que ejecutamos en esta conferencia. Es posible que desee pausar aquí si desea escribir alguna o asegurarse de que
‫la suya sea correcta.
‫Ahora que ha terminado con esta conferencia, recuerde limpiar
‫para que pueda comenzar con una nueva pizarra en la próxima conferencia.
‫Ahora vamos a comenzar el registro real. Hemos estado hablando de eso por un tiempo, así que hagamos
‫algo con eso.