diff --git a/README.md b/README.md index 08242440..30368126 100644 --- a/README.md +++ b/README.md @@ -28,6 +28,7 @@ This is the official repository for the Tipi App Store. It contains all the apps - [Dashy](https://github.com/lissy93/dashy) - A self-hostable personal dashboard built for you. - [Databag](https://github.com/balzack/databag) - A tiny federated messenger web with clients for iOS, Android, and browser. - [Deluge](https://github.com/linuxserver/docker-deluge) - Deluge is a lightweight, Free Software, cross-platform BitTorrent client +- [Dockge](https://github.com/louislam/dockge) - A fancy, easy-to-use and reactive self-hosted docker compose.yaml stack-oriented manager. - [Deemix](https://gitlab.com/Bockiii/deemix-docker) - deemix is a barebone deezer downloader library built from the ashes of Deezloader Remix. - [DokuWiki](https://github.com/dokuwiki/dokuwiki) - DokuWiki is a simple to use and highly versatile Open Source wiki software - [Dozzle](https://github.com/amir20/dozzle) - Dozzle is a small web based app to monitor Docker logs diff --git a/apps/dockge/config.json b/apps/dockge/config.json new file mode 100644 index 00000000..31d611f5 --- /dev/null +++ b/apps/dockge/config.json @@ -0,0 +1,20 @@ +{ + "$schema": "../schema.json", + "name": "Dockge", + "port": 8768, + "available": true, + "exposable": true, + "id": "dockge", + "tipi_version": 1, + "version": "1.1.1", + "categories": [ + "utilities" + ], + "description": "A fancy, easy-to-use and reactive self-hosted docker compose.yaml stack-oriented manager.", + "short_desc": "Docker compose.yaml stack-oriented manager.", + "author": "Louis Lam", + "source": "https://github.com/louislam/dockge", + "form_fields": [], + "supported_architectures": ["arm64", "amd64"] + } + \ No newline at end of file diff --git a/apps/dockge/docker-compose.yml b/apps/dockge/docker-compose.yml new file mode 100644 index 00000000..895eaed1 --- /dev/null +++ b/apps/dockge/docker-compose.yml @@ -0,0 +1,41 @@ +version: "3.8" +services: + dockge: + image: louislam/dockge:1.1.1 + container_name: dockge + restart: unless-stopped + ports: + - ${APP_PORT}:5001 + volumes: + - /var/run/docker.sock:/var/run/docker.sock + - ${APP_DATA_DIR}/data/app-data:/app/data + - ${APP_DATA_DIR}/data/stacks:${APP_DATA_DIR}/data/stacks + environment: + - DOCKGE_STACKS_DIR=${APP_DATA_DIR}/data/stacks + networks: + - tipi_main_network + labels: + # Main + traefik.enable: true + traefik.http.middlewares.dockge-web-redirect.redirectscheme.scheme: https + traefik.http.services.dockge.loadbalancer.server.port: 5001 + # Web + traefik.http.routers.dockge-insecure.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.dockge-insecure.entrypoints: web + traefik.http.routers.dockge-insecure.service: dockge + traefik.http.routers.dockge-insecure.middlewares: dockge-web-redirect + # Websecure + traefik.http.routers.dockge.rule: Host(`${APP_DOMAIN}`) + traefik.http.routers.dockge.entrypoints: websecure + traefik.http.routers.dockge.service: dockge + traefik.http.routers.dockge.tls.certresolver: myresolver + # Local domain + traefik.http.routers.dockge-local-insecure.rule: Host(`dockge.${LOCAL_DOMAIN}`) + traefik.http.routers.dockge-local-insecure.entrypoints: web + traefik.http.routers.dockge-local-insecure.service: dockge + traefik.http.routers.dockge-local-insecure.middlewares: dockge-web-redirect + # Local domain secure + traefik.http.routers.dockge-local.rule: Host(`dockge.${LOCAL_DOMAIN}`) + traefik.http.routers.dockge-local.entrypoints: websecure + traefik.http.routers.dockge-local.service: dockge + traefik.http.routers.dockge-local.tls: true \ No newline at end of file diff --git a/apps/dockge/metadata/description.md b/apps/dockge/metadata/description.md new file mode 100644 index 00000000..52e0938c --- /dev/null +++ b/apps/dockge/metadata/description.md @@ -0,0 +1,22 @@ +# Dockge + +A fancy, easy-to-use and reactive self-hosted docker compose.yaml stack-oriented manager. + + + +View Video: https://youtu.be/AWAlOQeNpgU?t=48 + +## ⭐ Features + +- Manage `compose.yaml` + - Create/Edit/Start/Stop/Restart/Delete + - Update Docker Images +- Interactive Editor for `compose.yaml` +- Interactive Web Terminal +- 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 +- 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 diff --git a/apps/dockge/metadata/logo.jpg b/apps/dockge/metadata/logo.jpg new file mode 100644 index 00000000..1f279408 Binary files /dev/null and b/apps/dockge/metadata/logo.jpg differ