Manage Docker Services with Portainer.

Portainer delivers enterprise-grade container management, simplified and engineered for everyone. From multi‑cluster agility to remote‑site efficiency, it empowers IT and OT teams with visibility, control, and ROI, all without complexity or vendor lock‑in.

This guide will use the community edition which is free to manage our self-hosted docker services. You can always check out this setup fro docker install.

How to Install Docker on Ubuntu 24.04 LTS: A Step-by-Step Guide
Docker is a powerful tool for creating, deploying, and managing containers, making running applications in a consistent environment easier and time-saving. At the same time, Ubuntu is a great and reliable platform, suitable both for development and as a server you can trust for your Docker needs. Installing Docker on

Now create the docker-compose.yaml file and paste this:


services:
  portainer:
    image: portainer/portainer-ce:latest
    container_name: portainer
    volumes:
      - portainer_data:/data
      - /var/run/docker.sock:/var/run/docker.sock
    restart: unless-stopped
    networks:
      - traefik
    labels:
      - "traefik.enable=true"
      - "traefik.docker.network=traefik"
      - "traefik.http.routers.portainer-http.entrypoints=http"
      - "traefik.http.routers.portainer-http.middlewares=redir-https"
      - "traefik.http.routers.portainer-http.rule=Host(`portainer.linuxpad.blog`)"
      - "traefik.http.routers.portainer-http.service=noop@internal"
      - "traefik.http.routers.portainer-https.entrypoints=https"
      - "traefik.http.routers.portainer-https.tls=true"
      - "traefik.http.routers.portainer-https.middlewares=gzip"
      - "traefik.http.routers.portainer-https.rule=Host(`portainer.linuxpad.blog`)"
      - "traefik.http.services.portainer-backend.loadbalancer.server.scheme=http"
      - "traefik.http.services.portainer-backend.loadbalancer.server.port=9000"
      - "traefik.http.routers.portainer-https.middlewares=authelia@docker"

volumes:
  portainer_data:

networks:
  traefik:
    external: true

That's it! Start the service with docker compose u -d


Login Page