Discover Dockge, the innovative DIY Docker manager transforming your Linux server experience! This user-friendly tool introduces a whole new level of ease in self-hosting Docker containers. Whether you're a seasoned pro or just beginning, Dockge is your go-to for Docker management with a slick UI/UX.

What is Dockge?

A fancy, easy-to-use and reactive self-hosted docker compose.yaml stack-oriented manager.

Dockge is a web-based tool that provides a clean interface and a Compose.yaml editor that lets you easily create, edit, start, stop, restart, and delete Docker containers and services.

It also supports docker-compose and podman, which lets you manage multiple stacks on different Docker hosts.

Dockge is designed with a file-based structure in mind; it doesn't kidnap your compose files, but instead stores them on your hard disk, and you can interact with them as you normally would using the normal docker compose command.

Dockge is also reactive in that it displays progress (pull, up, down) and terminal output in real time.

Dockge - Innovative Docker Manager

View Video:


  • 🧑‍💼 Manage your compose.yaml files
    • Create/Edit/Start/Stop/Restart/Delete
    • Update Docker Images
  • ⌨️ Interactive Editor for compose.yaml
  • 🦦 Interactive Web Terminal
  • 🕷️ (1.4.0 🆕) Multiple agents support - You can manage multiple stacks from different Docker hosts in one single interface
  • 🏪 Convert docker run ... commands into compose.yaml
  • 📙 File based structure - Dockge won't kidnap your compose files, they are stored on your drive as usual. You can interact with them using normal docker compose commands
  • 🚄 Reactive - Everything is just responsive. Progress (Pull/Up/Down) and terminal output are in real-time
  • 🐣 Easy-to-use & fancy UI - If you love Uptime Kuma's UI/UX, you will love this one too

How to Install


  • Docker 20+ / Podman
  • (Podman only) podman-docker (Debian: apt install podman-docker)
  • OS:
    • Major Linux distros that can run Docker/Podman such as:
      • ✅ Ubuntu
      • ✅ Debian (Bullseye or newer)
      • ✅ Raspbian (Bullseye or newer)
      • ✅ CentOS
      • ✅ Fedora
      • ✅ ArchLinux
    • ❌ Debian/Raspbian Buster or lower is not supported
    • ❌ Windows (Will be supported later)
  • Arch: armv7, arm64, amd64 (a.k.a x86_64)


  • Default Stacks Directory: /opt/stacks
  • Default Port: 5001
# Create directories that store your stacks and stores Dockge's stack
mkdir -p /opt/stacks /opt/dockge
cd /opt/dockge

# Download the compose.yaml
curl --output compose.yaml

# Start the server
docker compose up -d

# If you are using docker-compose V1 or Podman
# docker-compose up -d

Dockge is now running on http://localhost:5001


If you want to store your stacks in another directory, you can generate your compose.yaml file by using the following URL with custom query strings.

# Download your compose.yaml
curl "" --output compose.yaml
  • port=5001
  • stacksPath=/opt/stacks

Interactive compose.yaml generator is available on:

How to Update

cd /opt/dockge
docker compose pull && docker compose up -d

Install and use the dockge on Ubuntu

Built environment

Ubuntu 22.04 LTS

docker / docker-compose

The directories to use are /opt/stack and /opt/dockge.

dockge is the data storage location of the dockge container.

The rest of the docker-compose stack is stored in /opt/stack.

Install dockge

mkdir -p /opt/stacks /opt/dockge
cd /opt/dockge
curl --output compose.yaml

The basic compose.yaml contents are as follows.

Please note that port 5001 is used by default.

Start the container with the docker-compose up -d command.

Once the container is created, connect to port 5001.

Proceed to create an account in the setup window.

Because it is linked to docker socket, existing containers are also visible.

If it isn't created with Dockge, you won't see it. Let's create a new one.

Try creating a new container

press +Compose, there will be a default sample automatically.

If you change compose.yaml, the Edit page below is also automatically reflected.

All you have to do is Depoly.

Once creation is complete, a terminal log will appear.

Synchronize the used stack

It is also simple to raise the stack you were using.

When you synchronize, one is created on the stack.

When you start it, it appears as below.

The one I was previously using was docker-compose.yml, so it is not recognized by compose.yaml. All you have to do is edit it.

After changing it to compose.yaml, it is recognized well.




"Dockge" is a coinage word which is created by myself. I originally hoped it sounds like Dodge, but apparently many people called it Dockage, it is also acceptable.

The naming idea came from Twitch emotes like sadgebedge or wokege. They all end in -ge.

Can I manage a single container without compose.yaml?

The main objective of Dockge is to try to use the docker compose.yaml for everything. If you want to manage a single container, you can just use Portainer or Docker CLI.

Can I manage existing stacks?

Yes, you can. However, you need to move your compose file into the stacks directory:

  1. Stop your stack
  2. Move your compose file into /opt/stacks/<stackName>/compose.yaml
  3. In Dockge, click the " Scan Stacks Folder" button in the top-right corner's dropdown menu
  4. Now you should see your stack in the list

Is Dockge a Portainer replacement?

Yes or no. Portainer provides a lot of Docker features. While Dockge is currently only focusing on docker-compose with a better user interface and better user experience.

If you want to manage your container with docker-compose only, the answer may be yes.

If you still need to manage something like docker networks, single containers, the answer may be no.

Can I install both Dockge and Portainer?

Yes, you can.


Dockge is built on top of Compose V2compose.yaml also known as docker-compose.yml.

If you like the project and want to learn more, be sure to check out the Dockge Github repo and give the project a star!

Disclaimer: All articles on this site, such as no special instructions or labeling, are the site's original release. Any individual or organization, without the consent of the site, prohibit copying, theft, collection, release of the site content to any website, books and other types of media platforms. If the content of this site violates the legal rights and interests of the original author, you can contact us to deal with.