notas de estudio de docker (actualizadas continuamente)

 algunos conceptos basicos

Tutorial de introducción a Docker - Registro de red de Ruan Yifeng


¿Qué es un archivo de imagen?

Docker empaqueta la aplicación y sus dependencias en un archivo de imagen. Solo a través de este archivo se puede generar un contenedor Docker. El archivo de imagen se puede ver como una plantilla para el contenedor. Docker genera instancias de contenedores basados ​​en archivos de imagen. El mismo archivo de imagen puede generar varias instancias de contenedor que se ejecutan al mismo tiempo.

la imagen es un archivo binario. En el desarrollo real, un archivo de imagen a menudo se genera heredando otro archivo de imagen y agregando algunas configuraciones personalizadas. Por ejemplo, puede agregar un servidor Apache a la imagen de Ubuntu para formar su imagen.

El archivo de imagen es universal, y el archivo de imagen de una máquina se puede copiar a otra máquina y aún se puede usar. En términos generales, para ahorrar tiempo, deberíamos intentar usar archivos de imagen hechos por otros en lugar de hacerlos nosotros mismos. Incluso si necesita personalizarse, debe procesarse en función de los archivos de imagen de otras personas, no desde cero.

Para la comodidad de compartir, después de crear el archivo de imagen, se puede cargar en el almacén en línea. El almacén oficial de Docker Docker Hub es el almacén de imágenes más importante y más utilizado. Además, también es posible vender los archivos de imagen que creas tú mismo.

Ver la imagen cargada en esta máquina

docker images


¿Qué archivo contenedor?

La instancia de contenedor generada por el archivo de imagen es en sí misma un archivo denominado archivo contenedor. Es decir, una vez generado el contenedor, existirán dos archivos al mismo tiempo: el archivo de imagen y el archivo contenedor. Y cerrar el contenedor no elimina los archivos del contenedor, solo detiene la ejecución del contenedor.

Ejecutar el archivo de imagen generará un archivo contenedor:

docker run -it <image_name> /bin/bash

Lista de contenedores en ejecución:

docker ps

Enumere todos los contenedores en la máquina, incluidos los contenedores terminados

docker ps -a

Comandos comunes

docker cargar la imagen de la ventana acoplable como no root

1. Docker requiere que los usuarios tengan autoridad sudo Para evitar escribir cada comando sudo, los usuarios pueden agregarse al grupo de usuarios de Docker

sudo usermod -aG docker <username>

2. Reinicie la computadora

3. Descomprima el archivo de imagen (es decir, el archivo de imagen) y cargue la imagen como usuario

docker load --input /home/developer/rknn-toolkit/rknn-toolkit-1.7.1-docker.tar.gz

Después de cargar la imagen, se guardará en la carpeta overlay2 en el directorio /var/lib/docker, por lo que si su partición / es demasiado pequeña, recuerde eliminar las imágenes innecesarias con frecuencia.

4. Comprueba si la imagen se ha cargado.

root@lrj-HLY-WX9XX:/var/lib/docker# docker images
REPOSITORY     TAG       IMAGE ID       CREATED         SIZE
rknn-toolkit   1.7.3     9cce319ebc29   11 months ago   3.7GB

5. rknn-toolkit:1.7.3Abra un shell interactivo en el contenedor basado en la imagen y otorgue al contenedor permisos suficientes para acceder al dispositivo USB del host y al sistema de archivos en el contenedor. Al montar el host /dev/bus/usb/y /home/lrj/work/rv1126/model_convert/los directorios en el contenedor /dev/bus/usb/y /testlos directorios, se realiza el intercambio de dispositivos y archivos entre el host y el contenedor.

docker run -t -i --privileged -v /dev/bus/usb/:/dev/bus/usb -v /home/lrj/work/rv1126/model_convert/:/test rknn-toolkit:1.7.3 /bin/bash
  • docker run: Iniciar un nuevo contenedor.

  • -t: Asigne un pseudo-terminal (pseudo-TTY) para el contenedor.

  • -i: Mantenga el contenedor abierto con una línea de comando interactiva.

  • --privileged: Otorgue privilegios al contenedor para permitir operaciones en el dispositivo host.

  • -v /dev/bus/usb/:/dev/bus/usb: monte el directorio del host /dev/bus/usb/en el directorio del contenedor /dev/bus/usb/para compartir el acceso a los dispositivos USB entre el host y el contenedor.

  • -v /home/lrj/work/rv1126/model_convert/:/test: monte el directorio del host /home/lrj/work/rv1126/model_convert/en el directorio del contenedor /testpara compartir archivos entre el host y el contenedor.

  • rknn-toolkit:1.7.3: el nombre de la imagen del contenedor en ejecución y su número de versión.

  • /bin/bash: Un comando para ejecutar inmediatamente después de que se inicie el contenedor. Aquí está la línea de comando para abrir el contenedor como un shell interactivo.

 

¿Cómo eliminar el espejo?

Antes de eliminar una imagen, debe detener el contenedor en ejecución de la imagen y eliminar el contenedor; luego puede eliminar la imagen

docker stop <container_ID> && docker rm <container_ID> && docker rmi <image_name>

¿Cómo ingresar interactivamente un contenedor detenido?

Comience el contenedor primero

docker start <container_ID>

Luego ingrese el contenedor de forma interactiva.

docker exec -it <container_ID> /bin/bash

Supongo que te gusta

Origin blog.csdn.net/weixin_45824067/article/details/131989336
Recomendado
Clasificación