Focalboard

This commit is contained in:
Colin 2024-04-21 16:32:48 -04:00
parent 155eeafd3c
commit 5caf3ae773
17 changed files with 103 additions and 71 deletions

BIN
.DS_Store vendored

Binary file not shown.

View File

@ -1,12 +1,12 @@
version: "3.9" version: "3.9"
services: services:
loki: focalboard:
build: build:
context: docker/loki context: docker/focalboard
dockerfile: Dockerfile.production dockerfile: Dockerfile.production
image: git.nixc.us/nixius/loki:production-loki image: git.nixc.us/nixius/focalboard:production-focalboard
grafana: db:
build: build:
context: docker/grafana context: docker/db
dockerfile: Dockerfile.production dockerfile: Dockerfile.production
image: git.nixc.us/nixius/loki:production-grafana image: git.nixc.us/nixius/focalboard:production-db

View File

@ -1,12 +1,12 @@
version: "3.9" version: "3.9"
services: services:
loki: focalboard:
build: build:
context: docker/loki context: docker/focalboard
dockerfile: Dockerfile dockerfile: Dockerfile
image: git.nixc.us/nixius/loki:staging-loki image: git.nixc.us/nixius/focalboard:staging-focalboard
grafana: db:
build: build:
context: docker/grafana context: docker/db
dockerfile: Dockerfile dockerfile: Dockerfile
image: git.nixc.us/nixius/loki:staging-grafana image: git.nixc.us/nixius/focalboard:staging-db

1
docker/db/Dockerfile Normal file
View File

@ -0,0 +1 @@
FROM postgres:latest

View File

@ -0,0 +1 @@
FROM git.nixc.us/nixius/focalboard:staging-db

View File

@ -0,0 +1 @@
FROM mattermost/focalboard

View File

@ -0,0 +1 @@
FROM git.nixc.us/nixius/focalboard:staging-focalboard

View File

@ -1 +0,0 @@
FROM grafana/loki:latest

View File

@ -1 +0,0 @@
FROM git.nixc.us/nixius/loki:staging-loki

View File

@ -1,35 +1,32 @@
version: "3.7" version: "3.7"
services: services:
loki: focalboard:
image: git.nixc.us/nixius/loki:production-loki image: git.nixc.us/nixius/focalboard:production-focalboard
environment:
- VIRTUAL_HOST=focalboard.nixc.us
- VIRTUAL_PORT=8000
volumes: volumes:
- /root/tank/persist/nixc.us/loki/production/data/:/loki/ ## must be owned by "nobody" example: `sudo chown -R nobody /mnt/tank/persist/focalboard/production/data/`
- "/mnt/tank/persist/nixc.us/focalboard/production/data/:/data"
- "/mnt/tank/persist/nixc.us/focalboard/production/config/config.json:/opt/focalboard/config.json"
deploy: deploy:
replicas: 1 replicas: 1
labels:
homepage.group: apps
homepage.name: loki
homepage.href: https://loki.nixc.us/
homepage.description:
us.nixc.autodeploy: "true"
traefik.enable: "true"
traefik.http.routers.production_loki_loki.tls: "true"
traefik.http.services.production_loki_loki.loadbalancer.server.port: 3100
traefik.http.routers.production_loki_loki.rule: Host(`loki.nixc.us`)
traefik.http.routers.production_loki_loki.entrypoints: websecure
traefik.http.routers.production_loki_loki.tls.certresolver: letsencryptresolver
traefik.http.routers.production_loki_loki.service: production_loki_loki
traefik.docker.network: traefik
# - 'traefik.http.routers.production_uptime_uptime.middlewares=authelia@docker'
placement: placement:
constraints: constraints:
- node.hostname == macmini3 - node.hostname == macmini2
labels:
- "traefik.enable=false"
networks: networks:
- default
nginx:
image: codeberg.org/iridium-net/lan-to-nginx:latest
environment:
- BACKEND_ADDRESS=focalboard_focalboard
- BACKEND_PORT=8000
- PROTOCOL=http
networks:
- default
- traefik - traefik
- logging
grafana:
image: git.nixc.us/nixius/loki:production-grafana
deploy: deploy:
replicas: 1 replicas: 1
labels: labels:
@ -40,18 +37,32 @@ services:
us.nixc.autodeploy: "true" us.nixc.autodeploy: "true"
traefik.enable: "true" traefik.enable: "true"
traefik.http.routers.production_grafana_grafana.tls: "true" traefik.http.routers.production_grafana_grafana.tls: "true"
traefik.http.services.production_grafana_grafana.loadbalancer.server.port: 3000 traefik.http.services.production_grafana_grafana.loadbalancer.server.port: 80
traefik.http.routers.production_grafana_grafana.rule: Host(`grafana.nixc.us`) traefik.http.routers.production_grafana_grafana.rule: Host(`grafana.nixc.us`)
traefik.http.routers.production_grafana_grafana.entrypoints: websecure traefik.http.routers.production_grafana_grafana.entrypoints: websecure
traefik.http.routers.production_grafana_grafana.tls.certresolver: letsencryptresolver traefik.http.routers.production_grafana_grafana.tls.certresolver: letsencryptresolver
traefik.http.routers.production_grafana_grafana.service: production_grafana_grafana traefik.http.routers.production_grafana_grafana.service: production_grafana_grafana
traefik.docker.network: traefik traefik.docker.network: traefik
# - 'traefik.http.routers.production_uptime_uptime.middlewares=authelia@docker' # - 'traefik.http.routers.production_uptime_uptime.middlewares=authelia@docker'
focalboard-db:
image: git.nixc.us/nixius/focalboard:production-db
deploy:
replicas: 1
placement:
constraints:
- node.hostname == macmini2
labels:
- "traefik.enable=false"
volumes:
- "/mnt/tank/persist/nixc.us/focalboard/production/db:/var/lib/postgresql/data"
environment:
POSTGRES_DB: boards
POSTGRES_USER: boardsuser
POSTGRES_PASSWORD: boardsuser-password
networks: networks:
- traefik - default
- logging
networks: networks:
traefik: traefik:
external: true external: true
logging: default:
external: true

View File

@ -1,30 +1,32 @@
version: "3.7" version: "3.7"
services: services:
loki: focalboard:
image: git.nixc.us/nixius/loki:staging-loki image: git.nixc.us/nixius/focalboard:production-focalboard
environment:
- VIRTUAL_HOST=focalboard.nixc.us
- VIRTUAL_PORT=8000
# volumes:
# ## must be owned by "nobody" example: `sudo chown -R nobody /mnt/tank/persist/focalboard/production/data/`
# - "/mnt/tank/persist/nixc.us/focalboard/production/data/:/data"
# - "/mnt/tank/persist/nixc.us/focalboard/production/config/config.json:/opt/focalboard/config.json"
deploy: deploy:
replicas: 1 replicas: 1
placement:
constraints:
- node.hostname == macmini2
labels: labels:
homepage.group: apps - "traefik.enable=false"
homepage.name: loki
homepage.href: https://loki.nixc.us/
homepage.description:
us.nixc.autodeploy: "true"
traefik.enable: "true"
traefik.http.routers.staging_loki_loki.tls: "true"
traefik.http.services.staging_loki_loki.loadbalancer.server.port: 3100
traefik.http.routers.staging_loki_loki.rule: Host(`loki.nixc.us`)
traefik.http.routers.staging_loki_loki.entrypoints: websecure
traefik.http.routers.staging_loki_loki.tls.certresolver: letsencryptresolver
traefik.http.routers.staging_loki_loki.service: staging_loki_loki
traefik.docker.network: traefik
# - 'traefik.http.routers.staging_uptime_uptime.middlewares=authelia@docker'
networks: networks:
- default
nginx:
image: codeberg.org/iridium-net/lan-to-nginx:latest
environment:
- BACKEND_ADDRESS=focalboard_focalboard
- BACKEND_PORT=8000
- PROTOCOL=http
networks:
- default
- traefik - traefik
grafana:
image: git.nixc.us/nixius/loki:staging-grafana
deploy: deploy:
replicas: 1 replicas: 1
labels: labels:
@ -34,16 +36,33 @@ services:
homepage.description: homepage.description:
us.nixc.autodeploy: "true" us.nixc.autodeploy: "true"
traefik.enable: "true" traefik.enable: "true"
traefik.http.routers.staging_grafana_grafana.tls: "true" traefik.http.routers.production_grafana_grafana.tls: "true"
traefik.http.services.staging_grafana_grafana.loadbalancer.server.port: 3000 traefik.http.services.production_grafana_grafana.loadbalancer.server.port: 80
traefik.http.routers.staging_grafana_grafana.rule: Host(`grafana.nixc.us`) traefik.http.routers.production_grafana_grafana.rule: Host(`grafana.nixc.us`)
traefik.http.routers.staging_grafana_grafana.entrypoints: websecure traefik.http.routers.production_grafana_grafana.entrypoints: websecure
traefik.http.routers.staging_grafana_grafana.tls.certresolver: letsencryptresolver traefik.http.routers.production_grafana_grafana.tls.certresolver: letsencryptresolver
traefik.http.routers.staging_grafana_grafana.service: staging_grafana_grafana traefik.http.routers.production_grafana_grafana.service: production_grafana_grafana
traefik.docker.network: traefik traefik.docker.network: traefik
# - 'traefik.http.routers.staging_uptime_uptime.middlewares=authelia@docker' # - 'traefik.http.routers.production_uptime_uptime.middlewares=authelia@docker'
focalboard-db:
image: git.nixc.us/nixius/focalboard:production-db
deploy:
replicas: 1
placement:
constraints:
- node.hostname == macmini2
labels:
- "traefik.enable=false"
# volumes:
# - "/mnt/tank/persist/nixc.us/focalboard/production/db:/var/lib/postgresql/data"
environment:
POSTGRES_DB: boards
POSTGRES_USER: boardsuser
POSTGRES_PASSWORD: boardsuser-password
networks: networks:
- traefik - default
networks: networks:
traefik: traefik:
external: true external: true
default: