Video coming soon…

🐳 Setup Dockge — Docker Compose Stack Manager

Deploy Dockge on Ubuntu — the reactive Docker Compose stack manager with a live terminal, from the creator of Uptime Kuma.

⚠️ This script is provided for demo and testing purposes only. Not intended for production use.

📦 Resources & Setup Scripts

Grab the automated bash script from GitHub to follow along with the video.

Automated install script — one command sets everything up.
View on GitHub

Quick Install:

wget https://raw.githubusercontent.com/mhmdali94/Docker/main/management/dockge/dockge-ubuntu.sh
chmod +x dockge-ubuntu.sh
sudo bash dockge-ubuntu.sh

Tutorial Steps

1 Download the Script

wget https://raw.githubusercontent.com/mhmdali94/Docker/main/management/dockge/dockge-ubuntu.sh

2 Make it Executable

chmod +x dockge-ubuntu.sh

3 Run the Installer

The script installs Docker if needed, then deploys Dockge with stack storage at /opt/stacks automatically.

sudo bash dockge-ubuntu.sh

4 Access the Web UI

Open your browser and navigate to:

http://<your-server-ip>:5001

5 Add Your First Stack

Create and deploy Docker Compose stacks directly from the Dockge web interface.

# In the Dockge UI:
# 1. Click "+ Compose" to create a new stack
# 2. Paste your docker-compose.yml content
# 3. Click "Deploy" — Dockge runs docker compose up -d

# Or add an existing stack:
# Place your compose file in /opt/stacks/your-stack-name/compose.yaml
# Dockge detects it automatically

Ports Used

PortPurpose
5001Dockge Web UI

Overview

Dockge is a self-hosted, reactive Docker Compose stack management UI created by the author of Uptime Kuma. Unlike Portainer's full-featured container management, Dockge is laser-focused on Docker Compose stacks: you write and edit compose files in a live web editor, deploy with one click, and watch the terminal output in real time. Every stack is stored as a plain docker-compose.yml file in /opt/stacks/ — there is no proprietary database to lock you in. The reactive UI updates container status, resource usage, and logs live without page refreshes. It is the ideal middle ground between editing compose files in a terminal and the overhead of full Portainer management.

Why Use It

Portainer is powerful but adds abstraction layers over compose files and stores stack state in its own database. Dockge keeps everything in plain docker-compose.yml files — you can manage them with git, edit them in Dockge's live UI, or fall back to the terminal at any time. The live terminal inside the browser means you never need to SSH just to watch docker compose up output. For operators who think in compose files, Dockge feels like a natural extension of the CLI rather than a replacement for it.

When You Need It

    Who Should Use It

      Real Use Cases

        Main Features

          How to Use After Installation

            Security Best Practices

              Ports and Firewall Notes

              Dockge runs on port 5001 by default. Restrict this port to your local network or VPN — Dockge has full Docker access and should not be exposed to the public internet. The Docker socket mount (/var/run/docker.sock) is required for Dockge to manage containers. The stacks directory (/opt/stacks) must be mounted to persist compose files across container restarts.

              Backup and Maintenance

                Common Mistakes

                  Troubleshooting

                    Alternatives

                    Portainer (full-featured UI for containers, images, networks, and volumes — more powerful but more complex), Yacht (simpler UI, template-based deployment), Lazydocker (terminal UI, no browser needed), Kompose (for Kubernetes migration from compose). Dockge is the right choice when you want compose-file-native management with a browser UI and zero abstraction overhead.

                    When Not to Use It

                    Skip Dockge if you need to manage individual containers not defined in compose files — use Portainer instead. Also skip it for Kubernetes or Docker Swarm workloads — Dockge only understands Docker Compose. If your entire workflow is already terminal-based and you are comfortable with docker compose commands, Dockge adds a browser UI but no fundamental new capability.

                    PrismaTechWork Professional Help

                    PrismaTechWork provides end-to-end infrastructure services — from initial deployment and security hardening to ongoing monitoring, automated backups, and dedicated support. Whether you need a single-server setup or a multi-site network, our team ensures your infrastructure is built right, secured properly, and maintained reliably.

                      Contact Us

                      Frequently Asked Questions

                      How is Dockge different from Portainer?

                      Portainer is a comprehensive Docker management platform covering containers, images, networks, volumes, stacks, registries, and users — powerful but complex. Dockge is compose-focused only: it manages Docker Compose stacks, stores them as plain yml files, and provides a live terminal. Dockge is far simpler and lighter. Choose Portainer if you need full Docker management; choose Dockge if you work exclusively with compose files and want a clean, fast UI.

                      Where does Dockge store my compose files?

                      Dockge stores all stacks in /opt/stacks/ on the host, mounted into the container. Each stack lives in its own subdirectory: /opt/stacks/STACK-NAME/compose.yaml. These are plain YAML files you can edit with any text editor, manage with git, or manipulate with docker compose CLI commands directly — Dockge adds no proprietary format or database. This makes Dockge stacks fully portable and independent of the tool.

                      Can I import existing compose files into Dockge?

                      Yes. Copy any existing docker-compose.yml into /opt/stacks/STACK-NAME/compose.yaml (note: the filename must be compose.yaml, not docker-compose.yml). Dockge auto-detects the file and displays the stack in the UI. If the stack was already running before the import, Dockge shows it as running and lets you manage it from the UI. No import wizard or special steps are required.

                      Does Dockge work across multiple servers?

                      Yes, but each Dockge instance manages only its own host. Install a separate Dockge on each server you want to manage — they are independent. Access each server's Dockge via its own URL. There is no built-in multi-server aggregation view. For multi-server management from one UI, Portainer Business Edition has agent-based multi-server support. For homelab use, separate Dockge instances per server is the typical approach.

                      Can I edit compose files in Dockge and also edit them directly on the server?

                      Yes — but be careful not to edit the same file simultaneously in both places. Since compose files are stored as plain files in /opt/stacks/, you can edit them with nano or vim on the server and Dockge will reflect the changes on the next page load. The recommended workflow: use Dockge for routine edits and the terminal for complex refactors. Avoid editing a running stack's compose file outside Dockge while Dockge has it open.

                      Does Dockge support environment variable files (.env)?

                      Yes. Place a .env file in the same directory as the compose.yaml (/opt/stacks/STACK-NAME/.env). Dockge's compose editor picks it up automatically, and the variables are substituted when the stack is deployed — the same behaviour as docker compose up with a .env file. You can also edit the .env file directly in the Dockge UI alongside the compose.yaml for a fully browser-based workflow.

                      Is Dockge suitable for production use?

                      Dockge is widely used in production for homelab and small-team environments. It is actively maintained by the creator of Uptime Kuma and receives regular updates. For enterprise production (multi-server, RBAC, audit logs, Kubernetes), Portainer Enterprise or Kubernetes-native tools are more appropriate. For single-server or small multi-server compose deployments, Dockge is reliable and production-suitable.

                      Can Dockge update container images (like Watchtower)?

                      Dockge can manually pull new images and recreate stacks: open the stack, click Pull, then Deploy. This is a manual, one-click update — not automatic. For automatic scheduled updates, combine Dockge with Watchtower: Dockge handles your compose file editing and manual deployments, while Watchtower handles overnight automatic image pulls and container recreation. The two tools complement each other well.