portainer

gestor de contenedores de Docker

docker-compose.yml
services:
  portainer:
    #image: portainer/portainer-ce:sts
    image: portainer/portainer-ee:2.40.0
    restart: always
    network_mode: host
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
      - ./data:/data
    container_name: portainer
#    ports:
#      - 9443:9443
#      - 8000:8000  # Remove if you do not intend to use Edge Agents
 
# networks:
#   default:
#     name: portainer_network 
  • fijamos la IP interna:
    docker-compose.yml
    name: portainer
    
    services:
        agent:
          image: portainer/agent:sts
          restart: always
          networks:
            portainer_agent_net:
              ipv4_address: 172.20.0.5      
          volumes:
            - /var/run/docker.sock:/var/run/docker.sock
            - /var/lib/docker/volumnes:/var/lib/docker/volumes
            - /:/host
          container_name: portainer-agent
    
    networks:
      portainer_agent_net:
        ipam:
          config:
            - subnet: 172.20.0.0/16
  • abrimos un tunel desde el servidor:
    ssh -N -f -L 9002:172.20.0.5:9001 s4.fidmag.org
    # podemos localizarlo después con:
    ps aux | grep ssh
    # o eliminarlo directamente:
    fuser -k 9002/tcp
  • configuramos el entorno en portainer server
  • también se puede hacer a través de:
    # Instalación (en Ubuntu/Debian)
    sudo apt install autossh
     
    # Crear el túnel persistente
    autossh -M 0 -f -N -o "ServerAliveInterval 30" -o "ServerAliveCountMax 3" -L 9002:172.20.0.5:9001 usuario@IP-SERVIDOR-REMOTO
  • tunel activo?:
    netstat -tunlp | grep 9002
    # O también:
    ss -tunlp | grep 9002
  • ip contenedor:
    docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' portainer-agent
services:
  portainer-agent:
    image: portainer/agent:latest
    container_name: portainer-agent
    restart: always
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
#      - /var/lib/docker/volumes:/var/lib/docker/volumes
    ports:
      - "9001:9001"
    # IMPORTANTE: En entornos muy restrictivos, a veces requiere modo privilegiado
    privileged: true  
  • info/cursos/altran/docker/portainer.txt
  • Darrera modificació: 17/06/2026 06:21
  • per mate