productivity

This commit is contained in:
Colin 2024-04-23 09:53:51 -04:00
parent 626119bce4
commit 91b9c9a3d8
17 changed files with 36 additions and 1213 deletions

View File

@ -1,2 +1,2 @@
<!-- build 0 --> <!-- build 0 -->
![Build Status](https://woodpecker.nixc.us/api/badges/132/status.svg) ![Build Status](https://woodpecker.nixc.us/api/badges/134/status.svg)

View File

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

View File

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

View File

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

View File

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

View File

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

View File

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

View File

@ -1,8 +0,0 @@
FROM grafana/grafana:latest
ENV GF_SECURITY_ADMIN_USER=Fifth3591
ENV GF_SECURITY_ADMIN_PASSWORD=hhg4eW6nPfLurzNHjdTtUxqP8SQxdqT7R
COPY grafana.ini /etc/grafana/grafana.ini
COPY datasources.yaml /etc/grafana/provisioning/datasources/datasources.yaml
COPY dashboards.yaml /etc/grafana/provisioning/dashboards/dashboards.yaml
COPY --chown=grafana:grafana dashboards/ /var/lib/grafana/dashboards/

View File

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

View File

@ -1,11 +0,0 @@
apiVersion: 1
providers:
- name: 'default'
orgId: 1
folder: ''
type: file
disableDeletion: false
editable: true
options:
path: /var/lib/grafana/dashboards/default

File diff suppressed because it is too large Load Diff

View File

@ -1,9 +0,0 @@
apiVersion: 1
datasources:
- name: Loki
type: loki
access: proxy
url: http://loki_loki:3100
jsonData:
maxLines: 1000

View File

@ -1,5 +0,0 @@
[server]
domain = grafana.nixc.us
[auth.anonymous]
enabled = false

View File

@ -0,0 +1 @@
FROM johannesjo/super-productivity:latest

View File

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

View File

@ -1,68 +1,33 @@
version: "3.7" version: "3.7"
services: services:
focalboard: productivity:
image: git.nixc.us/nixius/focalboard:production-focalboard image: git.nixc.us/nixius/super-productivity:production
environment:
- VIRTUAL_HOST=focalboard.nixc.us
- VIRTUAL_PORT=8000
volumes: volumes:
## must be owned by "nobody" example: `sudo chown -R nobody /mnt/tank/persist/focalboard/production/data/` - "/mnt/tank/persist/nixc.us/productivity/production/data/:/home/user/.config/superProductivity"
- "/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: placement:
constraints: constraints:
- node.hostname == macmini2 - node.hostname == macmini2
labels:
- "traefik.enable=false"
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
deploy: deploy:
replicas: 1 replicas: 1
labels: labels:
homepage.group: apps homepage.group: apps
homepage.name: focalboard homepage.name: productivity
homepage.href: https://focalboard.nixc.us/ homepage.href: https://productivity.nixc.us/
homepage.description: homepage.description:
us.nixc.autodeploy: "true" us.nixc.autodeploy: "true"
traefik.enable: "true" traefik.enable: "true"
traefik.http.routers.production_focalboard_focalboard.tls: "true" traefik.http.routers.production_productivity_productivity.tls: "true"
traefik.http.services.production_focalboard_focalboard.loadbalancer.server.port: 80 traefik.http.services.production_productivity_productivity.loadbalancer.server.port: 80
traefik.http.routers.production_focalboard_focalboard.rule: Host(`focalboard.nixc.us`) traefik.http.routers.production_productivity_productivity.rule: Host(`productivity.nixc.us`)
traefik.http.routers.production_focalboard_focalboard.entrypoints: websecure traefik.http.routers.production_productivity_productivity.entrypoints: websecure
traefik.http.routers.production_focalboard_focalboard.tls.certresolver: letsencryptresolver traefik.http.routers.production_productivity_productivity.tls.certresolver: letsencryptresolver
traefik.http.routers.production_focalboard_focalboard.service: production_focalboard_focalboard traefik.http.routers.production_productivity_productivity.service: production_productivity_productivity
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:
- default traefik
networks: networks:
traefik: traefik:
external: true external: true
default:

View File

@ -1,68 +1,33 @@
version: "3.7" version: "3.7"
services: services:
focalboard: productivity:
image: git.nixc.us/nixius/focalboard:staging-focalboard image: git.nixc.us/nixius/super-productivity:staging
environment: volumes:
- VIRTUAL_HOST=focalboard.nixc.us - "/mnt/tank/persist/nixc.us/productivity/staging/data/:/home/user/.config/superProductivity"
- VIRTUAL_PORT=8000
# volumes:
# ## must be owned by "nobody" example: `sudo chown -R nobody /mnt/tank/persist/focalboard/staging/data/`
# - "/mnt/tank/persist/nixc.us/focalboard/staging/data/:/data"
# - "/mnt/tank/persist/nixc.us/focalboard/staging/config/config.json:/opt/focalboard/config.json"
deploy: deploy:
replicas: 1 replicas: 1
placement: placement:
constraints: constraints:
- node.hostname == macmini2 - node.hostname == macmini2
labels:
- "traefik.enable=false"
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
deploy: deploy:
replicas: 1 replicas: 1
labels: labels:
homepage.group: apps homepage.group: apps
homepage.name: focalboard homepage.name: productivity
homepage.href: https://focalboard.nixc.us/ homepage.href: https://staging.productivity.nixc.us/
homepage.description: homepage.description:
us.nixc.autodeploy: "true" us.nixc.autodeploy: "true"
traefik.enable: "true" traefik.enable: "true"
traefik.http.routers.staging_focalboard_focalboard.tls: "true" traefik.http.routers.staging_productivity_productivity.tls: "true"
traefik.http.services.staging_focalboard_focalboard.loadbalancer.server.port: 80 traefik.http.services.staging_productivity_productivity.loadbalancer.server.port: 80
traefik.http.routers.staging_focalboard_focalboard.rule: Host(`staging.focalboard.nixc.us`) traefik.http.routers.staging_productivity_productivity.rule: Host(`staging.productivity.nixc.us`)
traefik.http.routers.staging_focalboard_focalboard.entrypoints: websecure traefik.http.routers.staging_productivity_productivity.entrypoints: websecure
traefik.http.routers.staging_focalboard_focalboard.tls.certresolver: letsencryptresolver traefik.http.routers.staging_productivity_productivity.tls.certresolver: letsencryptresolver
traefik.http.routers.staging_focalboard_focalboard.service: staging_focalboard_focalboard traefik.http.routers.staging_productivity_productivity.service: staging_productivity_productivity
traefik.docker.network: traefik traefik.docker.network: traefik
# - 'traefik.http.routers.staging_uptime_uptime.middlewares=authelia@docker' # - 'traefik.http.routers.staging_uptime_uptime.middlewares=authelia@docker'
focalboard-db:
image: git.nixc.us/nixius/focalboard:staging-db
deploy:
replicas: 1
placement:
constraints:
- node.hostname == macmini2
labels:
- "traefik.enable=false"
# volumes:
# - "/mnt/tank/persist/nixc.us/focalboard/staging/db:/var/lib/postgresql/data"
environment:
POSTGRES_DB: boards
POSTGRES_USER: boardsuser
POSTGRES_PASSWORD: boardsuser-password
networks: networks:
- default traefik
networks: networks:
traefik: traefik:
external: true external: true
default: