summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenjamin Chausse <benjamin@chausse.xyz>2024-12-21 09:47:26 -0500
committerBenjamin Chausse <benjamin@chausse.xyz>2024-12-21 09:47:26 -0500
commitc05963cc9ca56f2b7b1571534d9d54cb9f0ef212 (patch)
tree70b74fff365ab4703385086fd4aa76b830c9c278
parent2c753bbb96d92e4f45be53f9066c9aa044b1efdd (diff)
kanban board that scales to 0extras
-rw-r--r--configs/planka-db/.gitignore2
-rw-r--r--configs/planka/.gitignore2
-rw-r--r--configs/traefik/static-cfg.yaml27
-rw-r--r--docker-compose.yml43
4 files changed, 72 insertions, 2 deletions
diff --git a/configs/planka-db/.gitignore b/configs/planka-db/.gitignore
new file mode 100644
index 0000000..d6b7ef3
--- /dev/null
+++ b/configs/planka-db/.gitignore
@@ -0,0 +1,2 @@
+*
+!.gitignore
diff --git a/configs/planka/.gitignore b/configs/planka/.gitignore
new file mode 100644
index 0000000..d6b7ef3
--- /dev/null
+++ b/configs/planka/.gitignore
@@ -0,0 +1,2 @@
+*
+!.gitignore
diff --git a/configs/traefik/static-cfg.yaml b/configs/traefik/static-cfg.yaml
index c20f0ab..74785fd 100644
--- a/configs/traefik/static-cfg.yaml
+++ b/configs/traefik/static-cfg.yaml
@@ -7,6 +7,15 @@ http:
certResolver: cloudflare
entryPoints:
- websecure
+ kanban:
+ rule: Host(`kanban.{{ env "DOMAIN" }}`)
+ service: kanban
+ entryPoints:
+ - websecure
+ tls:
+ certResolver: cloudflare
+ middlewares:
+ - kanban-sablier@file
jellyfin:
rule: Host(`watch.{{ env "DOMAIN" }}`)
service: jellyfin
@@ -15,19 +24,33 @@ http:
tls:
certResolver: cloudflare
middlewares:
- - my-sablier@file
+ - jelly-sablier@file
services:
plex:
loadBalancer:
servers:
- url: 'http://host.docker.internal:32400'
+ kanban:
+ loadBalancer:
+ servers:
+ - url: "http://kanban:1337"
jellyfin:
loadBalancer:
servers:
- url: "http://jellyfin:8096"
middlewares:
- my-sablier:
+ kanban-sablier:
+ plugin:
+ sablier:
+ group: kanban
+ dynamic:
+ displayName: Kanban
+ refreshFrequency: 2s
+ theme: ghost
+ sablierUrl: http://sablier:10000
+ sessionDuration: 1m
+ jelly-sablier:
plugin:
sablier:
group: home
diff --git a/docker-compose.yml b/docker-compose.yml
index 648fd9e..e3f7f48 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -142,6 +142,49 @@ services:
- vpn # Otherwise piaconf can be empty/out-of-date
restart: unless-stopped
+ kanban:
+ image: linuxserver/planka:latest
+ networks:
+ - highseas
+ restart: unless-stopped
+ volumes:
+ - ./configs/planka:/config
+ labels:
+ - sablier.enable=true
+ - sablier.group=kanban
+ # - traefik.enable=true
+ # - traefik.http.routers.kanban.rule=Host(`kanban.${DOMAIN}`)
+ # - traefik.http.routers.kanban.tls.certresolver=cloudflare
+ environment:
+ - PUID=1000
+ - PGID=1000
+ - TZ=${TIMEZONE}
+ - BASE_URL=https://kanban.${DOMAIN}
+ - DATABASE_URL=postgresql://${ADMIN_USER}:${ADMIN_PASSWD}@planka-db:5432/planka
+ - DEFAULT_ADMIN_USERNAME=${ADMIN_USER}
+ - DEFAULT_ADMIN_PASSWORD=${ADMIN_PASSWD}
+ - DEFAULT_ADMIN_NAME=${ADMIN_PASSWD}
+ - DEFAULT_ADMIN_EMAIL=${EMAIL}
+ - SECRET_KEY=${ADMIN_PASSWD}
+ - TRUST_PROXY=1
+ ports:
+ - 1337:1337
+
+ planka-db:
+ image: postgres:latest
+ networks:
+ - highseas
+ restart: unless-stopped
+ labels:
+ - sablier.enable=true
+ - sablier.group=kanban
+ volumes:
+ - ./configs/planka-db:/var/lib/postgresql/data
+ environment:
+ - POSTGRES_DB=planka
+ - POSTGRES_USER=${ADMIN_USER}
+ - POSTGRES_PASSWORD=${ADMIN_PASSWD}
+
bot:
image: linuxserver/doplarr:latest
networks: