be5dc50dd386fd20b9e84a297eeb3a71f3002af3
Infraestructura: Portainer
Este repositorio contiene el despliegue de Portainer CE para la gestión centralizada de contenedores Docker.
🧩 Componentes
🚀 Despliegue
- Crear
.envdesde el ejemplo:
cp .env.example .env
Portainer CE — Despliegue con Docker Compose (Linux)
Este repositorio proporciona una forma sencilla de desplegar Portainer Community Edition (CE) usando Docker Compose en Linux, siguiendo las recomendaciones oficiales: https://docs.portainer.io/start/install-ce/server/docker/linux#docker-compose
Requisitos
- Docker y Docker Compose instalados en el host.
- Usuario con permisos para acceder a
/var/run/docker.sock. - Conectividad a los puertos necesarios.
Qué incluye este stack
- Servicio
portainercon la imagenportainer/portainer-ce:lts. - Montaje del socket Docker:
/var/run/docker.sock:/var/run/docker.sock. - Volumen persistente
portainer_datamontado en/datapara conservar la configuración. - Puertos:
9443:9443(UI HTTPS de Portainer)8000:8000(opcional; para Edge Agents). Si no lo necesitas, puedes eliminar esta línea.
- Red
portainer_network(por defecto).
Archivo Compose
El docker-compose.yaml actual contiene:
services:
portainer:
container_name: portainer
image: portainer/portainer-ce:lts
restart: always
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- portainer_data:/data
ports:
- 9443:9443
- 8000:8000 # Remove if you do not intend to use Edge Agents
volumes:
portainer_data:
name: portainer_data
networks:
default:
name: portainer_network
Pasos de despliegue (PowerShell en Windows o bash equivalente en Linux)
- Clonar el repositorio (si no lo tienes):
cd C:\Users\gustavo.roales.ICT-IBERIA\repos
git clone https://git.ictiberia.com/infraestructura/infra-portainer
cd infra-portainer
-
(Opcional) Crear y ajustar
.envsi lo usas para variables adicionales. -
Levantar Portainer con Docker Compose:
docker compose up -d
- Verificar que Portainer está en ejecución:
docker ps --filter name=portainer
- Acceder a la interfaz web:
- URL:
https://<HOST>:9443 - Al primer acceso, Portainer te pedirá crear el usuario administrador.
Notas y buenas prácticas
- Mantén el volumen
portainer_datapara persistir configuración y datos. - Si no usas Edge Agents, elimina el mapeo de puerto
8000:8000. - Para exponer Portainer a Internet, usa un proxy inverso (Traefik/Nginx) con TLS y reglas de acceso.
- Limita el acceso a la UI mediante firewall/VPN.
Documentación adicional
- Guía inicial:
docs/Home.md - Instalación avanzada y TLS:
docs/Instalacion.md - Backup/Restore del volumen
data:docs/Backup.md
Solución de problemas
- Puerto ocupado (
9443/8000): comprueba procesos connetstatoGet-NetTCPConnectiony ajusta puertos endocker-compose.yaml. - Permisos sobre
/var/run/docker.sock: ejecuta con un usuario que pertenezca al grupodocker(Linux) o valida que Docker Desktop esté activo (Windows WSL2). - Certificados/TLS: si accedes por
https://y hay advertencias, usa un proxy inverso con certificados válidos o configura confiables en el cliente. - Contenedor no arranca: revisa logs con
docker logs portainery valida que el volumenportainer_dataexista.
Personalización rápida
- Eliminar Edge Agents: borra la línea
- 8000:8000enports:. - Cambiar nombre de red/volumen: ajusta
name: portainer_networkyname: portainer_dataen las seccionesnetworksyvolumes. - Variables mediante
.env: añade valores personalizados y referencia desde el compose si lo necesitas.docs/Traefik.md— integración con proxy reverso
Description