Saltar a contenido

Instalación

Debian

image.png

Debian | Docker Docs

Configura el repositorio apt de Docker

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

# Add the repository to Apt sources:
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/debian
Suites: $(. /etc/os-release && echo "$VERSION_CODENAME")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF

sudo apt update

Instala los paquetes Docker

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Ubuntu

image.png

Ubuntu | Docker Docs

Configura el repositorio apt de Docker

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

# Add the repository to Apt sources:
sudo tee /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF

sudo apt update

Instala los paquetes de Docker

 sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Postinstalacion

Agregar tu usuario al grupo docker para evitar usar sudoen los comandos docker

sudo usermod -aG docker $USER

Comprueba que docker está funcionando

sudo service docker status

Evita que se auto-actualicen los paquetes

# Evita que se vuelva a actualizar automáticamente
sudo apt-mark hold containerd.io  docker-ce  docker-ce-cli  docker-ce-rootless-extras
# Vuelve a dejar que se actulicen los paquetes
sudo apt-mark unhold containerd.io  docker-ce  docker-ce-cli  docker-ce-rootless-extras

Backup de volumenes

# Parar contenedores
docker ps
docker stop $(docker ps -q)
systemctl stop docker

# Verificar
systemctl status docker

# Backup 
cd /var/lib/docker
tar \
  --xattrs \
  --acls \
  --numeric-owner \
  -cpf /root/docker-volumes-backup-$(date +%F).tar \
  volumes

# Comprimir
gzip -9 /root/docker-volumes-backup-*.tar

# Verificar
ls -lh /root/docker-volumes-backup-*

Restauración

Copia el fichero de bakcup al servidor de restauración

# Prepara el nuevo host docker
sudo systemctl stop docker
sudo rm -rf /var/lib/docker
sudo mkdir -p /var/lib/docker

# Restaura volumenes
mv docker-volumes-backup.tar.gz  /var/lib/docker
cd /var/lib/docker
sudo tar xpf docker-volumes-backup.tar.gz

# Comprueba
sudo ls -lah /var/lib/docker/volumes

# Arranca docker
sudo systemctl start docker
sudo docker volume ls