From fefdc14398a4835028981ba8b06edd2b9e671510 Mon Sep 17 00:00:00 2001 From: Arpad Krejczinger Date: Mon, 6 Oct 2025 20:39:33 +0200 Subject: [PATCH] Add Portainer docker-compose configuration - Web UI for Docker container management - Bound to localhost (reverse proxy recommended) - Uses named volume for persistent data - Configured for Europe/Budapest timezone - Resource limits and health checks included --- config/docker/portainer/docker-compose.yml | 50 ++++++++++++++++++++++ 1 file changed, 50 insertions(+) create mode 100644 config/docker/portainer/docker-compose.yml diff --git a/config/docker/portainer/docker-compose.yml b/config/docker/portainer/docker-compose.yml new file mode 100644 index 0000000..84cb923 --- /dev/null +++ b/config/docker/portainer/docker-compose.yml @@ -0,0 +1,50 @@ +# Portainer Docker Compose Configuration +# Deploy with: sudo mkdir -p /opt/docker/portainer && sudo cp config/docker/portainer/docker-compose.yml /opt/docker/portainer/ +# Start with: cd /opt/docker/portainer && sudo docker-compose up -d + +# PORTAINER CONFIGURATION +# - Web UI for Docker container management +# - Bound to localhost only (reverse proxy recommended) +# - Persistent data storage in named volume + +services: + portainer: + image: portainer/portainer-ce:latest + container_name: portainer + restart: unless-stopped + + # Environment + environment: + - TZ=Europe/Budapest + + # Network - bind to localhost for security + ports: + - "127.0.0.1:9000:9000" # Web UI (reverse proxy only) + + # Volume mounts + volumes: + # Docker socket for container management + - /var/run/docker.sock:/var/run/docker.sock + # Portainer data + - portainer_data:/data + + # Resource limits + deploy: + resources: + limits: + cpus: '0.5' + memory: 512M + reservations: + cpus: '0.1' + memory: 128M + + # Health check + healthcheck: + test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:9000/api/status"] + interval: 30s + timeout: 10s + retries: 3 + start_period: 30s + +volumes: + portainer_data: