Diferencia entre revisiones de «Docker»

De TechShareRoom wiki
Ir a la navegación Ir a la búsqueda
Sin resumen de edición
Sin resumen de edición
 
(No se muestran 17 ediciones intermedias del mismo usuario)
Línea 1: Línea 1:
<syntaxhighlight lang="bash ">
== Instalación ==
<syntaxhighlight lang="bash">
#!/bin/bash
#!/bin/bash


Línea 20: Línea 21:


# Install docker
# Install docker
apt -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin docker-compose
apt -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin
docker --version
docker --version
</syntaxhighlight>
</syntaxhighlight>
== Actualizar contenedor ==
Antes de realizar esta operación por primera vez haz un backup del contenedor. Si no has tenido en cuenta los datos externos vas a perderlos todos al volver a levantar el mismo contenedor actualizado.
<syntaxhighlight lang="bash">
#!/bin/bash
# Example with portainer
cd /home/usuario/portainer
docker stop portainer
docker rm portainer
docker pull portainer/portainer-ce
docker compose up -d
</syntaxhighlight>
== Backup contenedor ==
*La opción recomendada es copiar todos los directorios montados en el sitio donde quieras y levanta el contenedor con el mismo docker-compose.yml con un docker compose up -d
*Otra opción es usar contenedores especializados para backups como [https://github.com/offen/docker-volume-backup docker-volume-backup] o [https://github.com/loomchild/volume-backup volume-backup]
*Y otra manera es copiar el directorio entero de docker, no es recomendable pero en algunas situaciones es más cómodo o incluso necesario. Se recomienda encarecidamente usar el punto 1.
<syntaxhighlight lang="bash">
service docker stop
cd /var/lib
tar -czvf docker.tar.gz docker
service docker start
</syntaxhighlight>
== Restore contenedor ==
Levanta el contenedor con el mismo docker-compose.yml con un docker compose up -d como se comentó anteriormente.
Usar la opción de restauración del contenedor que hayas usado para hacer backup.
O restaurar el comprimido anterior.
<syntaxhighlight lang="bash">
service docker stop
cp /var/lib/docker /var/lib/docker_default
rm -rf /var/lib/docker
tar -xzvf docker.tar.gz -C /var/lib
service docker start
</syntaxhighlight>
== Utilidades ==
*[https://www.composerize.com/ Composerize]
== Cursos ==
<div class="video-container">
<youtube>https://www.youtube.com/watch?v=AquOM-ISsnA</youtube>
</div>
== Procedimientos ==
*[[¿Cómo pasar de volumes a directorios locales?]]

Revisión actual - 23:15 6 oct 2024

Instalación

#!/bin/bash

docker --version
dpkg --configure -a

# Remove possible old packages
apt remove -y docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc

# Add Docker's official GPG key
apt -y update
apt -y install ca-certificates curl gnupg
install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | gpg --dearmor -o /etc/apt/keyrings/docker.gpg
chmod a+r /etc/apt/keyrings/docker.gpg

# Add the repository to Apt sources:
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | tee /etc/apt/sources.list.d/docker.list > /dev/null
apt -y update

# Install docker
apt -y install docker-ce docker-ce-cli containerd.io docker-buildx-plugin
docker --version

Actualizar contenedor

Antes de realizar esta operación por primera vez haz un backup del contenedor. Si no has tenido en cuenta los datos externos vas a perderlos todos al volver a levantar el mismo contenedor actualizado.

#!/bin/bash

# Example with portainer
cd /home/usuario/portainer
docker stop portainer
docker rm portainer
docker pull portainer/portainer-ce
docker compose up -d

Backup contenedor

  • La opción recomendada es copiar todos los directorios montados en el sitio donde quieras y levanta el contenedor con el mismo docker-compose.yml con un docker compose up -d
  • Otra opción es usar contenedores especializados para backups como docker-volume-backup o volume-backup
  • Y otra manera es copiar el directorio entero de docker, no es recomendable pero en algunas situaciones es más cómodo o incluso necesario. Se recomienda encarecidamente usar el punto 1.
service docker stop
cd /var/lib
tar -czvf docker.tar.gz docker
service docker start

Restore contenedor

Levanta el contenedor con el mismo docker-compose.yml con un docker compose up -d como se comentó anteriormente.

Usar la opción de restauración del contenedor que hayas usado para hacer backup.

O restaurar el comprimido anterior.

service docker stop
cp /var/lib/docker /var/lib/docker_default
rm -rf /var/lib/docker
tar -xzvf docker.tar.gz -C /var/lib
service docker start

Utilidades

Cursos

Procedimientos