louislam/ dockge
View on GitHubA fancy, easy-to-use and reactive self-hosted docker compose.yaml stack-oriented manager
A fancy, easy-to-use and reactive self-hosted docker compose.yaml stack-oriented manager
A fancy, easy-to-use and reactive self-hosted docker compose.yaml stack-oriented manager.
View Video: https://youtu.be/AWAlOQeNpgU?t=48
compose.yaml files
compose.yamldocker run ... commands into compose.yamldocker compose commandsRequirements:
apt install podman-docker)/opt/stacks# 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 https://raw.githubusercontent.com/louislam/dockge/master/compose.yaml --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 "https://dockge.kuma.pet/compose.yaml?port=5001&stacksPath=/opt/stacks" --output compose.yaml
5001/opt/stacksAlso, once compose is generated/downloaded, add the PUID and PGID section below to your compose environment: section to set stack ownership, otherwise default is root
# Both PUID and PGID must be set for it to do anything
- PUID=1000 # Set the stack file/dir ownership to this user
- PGID=1000 # Set the stack file/dir ownership to this group
Interactive compose.yaml generator is available on: https://dockge.kuma.pet
Copy and paste your compose from the following:
If you want to store your stacks in another directory, you can change the DOCKGE_STACKS_DIR environment variable and volumes.
compose:
services:
dockge:
image: louislam/dockge:1
restart: unless-stopped
ports:
# Host Port:Container Port
- 5001:5001
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- ./data:/app/data
# If you want to use private registries, you need to share the auth file with Dockge:
# - /root/.docker/:/root/.docker
# Stacks Directory
# Your stacks directory in the host (The paths inside container must be the same as the host)
# ⚠️ If you did it wrong, your data could end up be written into a wrong path.
# ✔️ CORRECT EXAMPLE: - /my-stacks:/my-stacks (Both paths match)
# ❌ WRONG EXAMPLE: - /docker:/my-stacks (Both paths do not match)
- /opt/stacks:/opt/stacks
environment:
# Tell Dockge where your stacks directory is
- DOCKGE_STACKS_DIR=/opt/stacks
# Both PUID and PGID must be set for it to do anything
- PUID=1000 # Set the stack file/dir ownership to this user
- PGID=1000 # Set the stack file/dir ownership to this group
cd /opt/dockge
docker compose pull && docker compose up -d
If you love this project, please consider giving it a ⭐.
https://github.com/louislam/dockge/issues
https://github.com/louislam/dockge/discussions
If you want to translate Dockge into your language, please read Translation Guide
Be sure to read the guide, as we don't accept all types of pull requests and don't want to waste your time.
"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 sadge, bedge or wokege. They all end in -ge.
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.
Yes, you can. However, you need to move your compose file into the stacks directory:
/opt/stacks/<stackName>/compose.yamlYes 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.
Yes, you can.
Dockge is built on top of Compose V2. compose.yaml also known as docker-compose.yml.
No comments yet. Set the tone — say what you would want to know.