first commit
This commit is contained in:
+245
@@ -0,0 +1,245 @@
|
||||
## AYUDA DOCKER
|
||||
|
||||
|
||||
|
||||
docker desktop start abrir docker desktop
|
||||
|
||||
docker info verificar que docker esta corriendo
|
||||
|
||||
docker ps # Ver contenedores en ejecución
|
||||
docker ps -a # contenedores creados
|
||||
|
||||
docker stop mi-web # Parar el contenedor
|
||||
docker start mi-web # Iniciar el contenedor nuevamente
|
||||
docker rm mi-web # Eliminar el contenedor (cuando ya no lo necesites)
|
||||
|
||||
docker images Imagenes existentes en local
|
||||
|
||||
Dockerfile Archivo texto instrucciones crear imagen docker.
|
||||
|
||||
docker build . Construir una imagen a partir de Dockerfile
|
||||
|
||||
docker login Iniciar sesion docker hub
|
||||
docker logout Cerrar sesion docker hub
|
||||
|
||||
docker pull nombreimagen:version descargar imagen docker
|
||||
docker push nombreimagen publicar imagen
|
||||
docker searh nombreimagen buscar imagen
|
||||
|
||||
Iniciar un contenedor
|
||||
docker run nombre_contenedor
|
||||
docker run -d --name owncloud -p 8080:80 owncloud:latest
|
||||
|
||||
Docker compose
|
||||
|
||||
docker compose up -d
|
||||
docker compose down Detiene y eliminar el contenedor
|
||||
|
||||
docker stop vaultwarden # parar contenedor
|
||||
docker start vaultwarden # arrancar contenedor
|
||||
docker restart vaultwarden # reiniciar contenedor
|
||||
|
||||
---
|
||||
|
||||
#### 🐳 Contenedores
|
||||
|
||||
**Acceder a la terminal de un contenedor existente:**
|
||||
|
||||
```
|
||||
docker exec -it <nombre_o_id_del_contenedor> /bin/bash
|
||||
# O si bash no está disponible:
|
||||
docker exec -it <nombre_o_id_del_contenedor> sh
|
||||
```
|
||||
|
||||
docker exec -it nombrecontenedor whereis bash/sh
|
||||
|
||||
docker exec -it caddy /bin/sh (para caddy por ejemplo cambia a sh)
|
||||
|
||||
|
||||
|
||||
Comando largo - Alias corto Descripción
|
||||
|
||||
docker container ls docker ps Listar contenedores en ejecución
|
||||
docker container ls -a docker ps -a Listar todos los contenedores
|
||||
docker container stop <id> docker stop Parar un contenedor
|
||||
docker container start <id> docker start Arrancar un contenedor detenido
|
||||
docker container restart <id> docker restart Reiniciar un contenedor
|
||||
docker container rm <id> docker rm Eliminar un contenedor
|
||||
|
||||
|
||||
|
||||
---
|
||||
|
||||
#### 📦 Imágenes
|
||||
|
||||
Comando largo - Alias corto Descripción
|
||||
|
||||
docker image ls docker images Listar imágenes
|
||||
docker image rm <id> docker rmi Eliminar una imagen
|
||||
docker image prune (no tiene alias) Borrar imágenes no usadas
|
||||
|
||||
Crear/levantar contenedor si ya tienes la imagen, sin dockerfile:
|
||||
docker run -d \
|
||||
--name vaultwarden \
|
||||
-e DOMAIN="https://vw.domain.tld" \
|
||||
-v $(pwd)/vw-data:/data \
|
||||
-p 8000:80 \
|
||||
vaultwarden/server:latest
|
||||
|
||||
---
|
||||
|
||||
#### 🔧 Volúmenes y redes (sin alias cortos)
|
||||
|
||||
Comando largo - Descripción
|
||||
|
||||
docker volume ls Listar volúmenes
|
||||
docker volume rm <id> Eliminar volumen
|
||||
docker volume prune Limpiar volúmenes no usados
|
||||
docker network ls Listar redes
|
||||
docker network rm <id> Eliminar red
|
||||
docker network prune Limpiar redes no usadas
|
||||
|
||||
---
|
||||
|
||||
#### 🔧 Opciones disponibles para restart
|
||||
|
||||
Docker ofrece cuatro opciones principales para controlar el comportamiento de reinicio:
|
||||
|
||||
no (por defecto) El contenedor no se reinicia nunca automáticamente, ni al fallar ni al reiniciar Docker.
|
||||
always El contenedor siempre se reinicia, incluso si lo detuviste manualmente o al reiniciar Docker Desktop.
|
||||
unless-stopped Igual que always, pero no se reinicia si tú lo detuviste manualmente antes de apagar Docker.
|
||||
on-failure[:n] Solo se reinicia si el contenedor termina con error (exit code ≠ 0). Puedes limitar el número de intentos con :n.
|
||||
Ejemplo: on-failure:5.
|
||||
|
||||
---
|
||||
|
||||
#### Mover imagenes
|
||||
|
||||
🔁 Mover una imagen Docker a otro equipo (recomendado)
|
||||
Exportar la imagen a un archivo .tar
|
||||
docker save -o nombre_imagen.tar nombre_imagen
|
||||
Ejemplo:
|
||||
docker save -o mi_app.tar mi_app:latest
|
||||
|
||||
Importar la imagen en el segundo equipo
|
||||
docker load -i nombre_imagen.tar
|
||||
docker load -i mi_app.tar
|
||||
docker run ...
|
||||
|
||||
✅ Si quieres exportar la imagen con los datos
|
||||
docker save flask-contactos > flask-contactos.tar
|
||||
cp ./data/contacts.db contactos.db
|
||||
En el nuevo equipo, haz:
|
||||
docker load < flask-contactos.tar
|
||||
mkdir data
|
||||
cp contactos.db ./data/
|
||||
|
||||
docker run -d -p 5000:5000 -v $(pwd)/data:/data flask-contactos linux
|
||||
docker run -d -p 5000:5000 -v ${PWD}/data:/data flask-contactos windows
|
||||
|
||||
---
|
||||
|
||||
Docker build (despues de contruir imagen con build, despues se puede quitar y usar solo image: nombreimagen)
|
||||
|
||||
services:
|
||||
|
||||
app:
|
||||
|
||||
\- build: .
|
||||
|
||||
\+ image: mi_app_python:1.0`
|
||||
|
||||
---
|
||||
|
||||
#### Instalar docker
|
||||
|
||||
Uninstall old versions
|
||||
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
|
||||
Set up Docker's apt repository.
|
||||
|
||||
**Add Docker's official GPG key:**
|
||||
|
||||
sudo apt-get update
|
||||
sudo apt-get 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:**
|
||||
|
||||
echo \
|
||||
"deb [arch=(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
|
||||
(. /etc/os-release && echo "{UBUNTU_CODENAME:-VERSION_CODENAME}") stable" | \
|
||||
sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
|
||||
sudo apt-get update
|
||||
Install the Docker packages.
|
||||
|
||||
To install the latest version, run:
|
||||
|
||||
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
|
||||
Verify that the installation is successful by running the hello-world image:
|
||||
|
||||
sudo docker run hello-world
|
||||
This command downloads a test image and runs it in a container. When the container runs, it prints a confirmation message and exits.
|
||||
|
||||
1. (Opcional) Evitar usar sudo con Docker Para no tener que escribir sudo cada vez, agrega tu usuario al grupo docker: sudo usermod -aG docker $USER newgrp docker # Recarga los grupos sin reiniciar sesión Ahora puedes probar sin sudo: docker run hello-world
|
||||
|
||||
Para instalar además docker Desktop en Ubuntu Desktop:
|
||||
1.sudo apt install gnome-terminal
|
||||
2\. Descargar el paquete .deb de docker Desktop
|
||||
3\. sudo apt-get update
|
||||
sudo apt-get install ./docker-desktop-amd64.deb
|
||||
|
||||
---
|
||||
|
||||
#### Docker Windows
|
||||
|
||||
Habilitar wsl 2
|
||||
|
||||
Abrir PowerShell como Administrador
|
||||
|
||||
wsl --install
|
||||
Descargar/instalar docker Desktop
|
||||
Configuración importante:
|
||||
· ✅ Instalar componentes adicionales para WSL 2
|
||||
· ✅ Agregar acceso directo al escritorio
|
||||
· ✅ Usar contenedores de Windows
|
||||
|
||||
Abrir PowerShell o Command Prompt
|
||||
|
||||
docker --version
|
||||
docker-compose --version
|
||||
docker run hello-world
|
||||
wsl --list --verbose
|
||||
|
||||
---
|
||||
|
||||
#### Copia base de datos mysql
|
||||
|
||||
Copia seguridad base mysql (backup)
|
||||
docker exec -it mysql-db mysqldump -u root -p testdb > backup.sql
|
||||
mysql-db → es el nombre del contenedor (en tu docker-compose.yml).
|
||||
|
||||
\-u root -p → usará la contraseña root que definiste.
|
||||
testdb → es el nombre de la base de datos.
|
||||
|
||||
> backup.sql → guarda la copia en tu máquina (no dentro del contenedor).
|
||||
> 👉 Al ejecutarlo te pedirá la contraseña (root).
|
||||
|
||||
Restaurar desde un backup (restore)
|
||||
docker exec -i mysql-db mysql -u root -p testdb < backup.sql
|
||||
Esto sobrescribirá la base de datos testdb con el contenido del backup.
|
||||
|
||||
---
|
||||
|
||||
#### Puetos docker Ubuntu Server
|
||||
|
||||
navidrome 4533
|
||||
kanboard 8081 - 443
|
||||
owncloud 8082
|
||||
owncloud-mariadb 3306
|
||||
owncloud-redis 6379
|
||||
jellyfin 8096
|
||||
transmission 9091
|
||||
portainer 9443
|
||||
plex 32400
|
||||
Reference in New Issue
Block a user