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 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"
services:
focalboard:
super-productivity:
build:
context: docker/focalboard
context: docker/super-productivity
dockerfile: Dockerfile.production
image: git.nixc.us/nixius/focalboard:production-focalboard
db:
build:
context: docker/db
dockerfile: Dockerfile.production
image: git.nixc.us/nixius/focalboard:production-db
image: git.nixc.us/nixius/super-productivity:production

View File

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

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"
services:
focalboard:
image: git.nixc.us/nixius/focalboard:production-focalboard
environment:
- VIRTUAL_HOST=focalboard.nixc.us
- VIRTUAL_PORT=8000
productivity:
image: git.nixc.us/nixius/super-productivity:production
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"
- "/mnt/tank/persist/nixc.us/productivity/production/data/:/home/user/.config/superProductivity"
deploy:
replicas: 1
placement:
constraints:
- 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:
replicas: 1
labels:
homepage.group: apps
homepage.name: focalboard
homepage.href: https://focalboard.nixc.us/
homepage.name: productivity
homepage.href: https://productivity.nixc.us/
homepage.description:
us.nixc.autodeploy: "true"
traefik.enable: "true"
traefik.http.routers.production_focalboard_focalboard.tls: "true"
traefik.http.services.production_focalboard_focalboard.loadbalancer.server.port: 80
traefik.http.routers.production_focalboard_focalboard.rule: Host(`focalboard.nixc.us`)
traefik.http.routers.production_focalboard_focalboard.entrypoints: websecure
traefik.http.routers.production_focalboard_focalboard.tls.certresolver: letsencryptresolver
traefik.http.routers.production_focalboard_focalboard.service: production_focalboard_focalboard
traefik.http.routers.production_productivity_productivity.tls: "true"
traefik.http.services.production_productivity_productivity.loadbalancer.server.port: 80
traefik.http.routers.production_productivity_productivity.rule: Host(`productivity.nixc.us`)
traefik.http.routers.production_productivity_productivity.entrypoints: websecure
traefik.http.routers.production_productivity_productivity.tls.certresolver: letsencryptresolver
traefik.http.routers.production_productivity_productivity.service: production_productivity_productivity
traefik.docker.network: traefik
# - '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:
- default
traefik
networks:
traefik:
external: true
default:
external: true

View File

@ -1,68 +1,33 @@
version: "3.7"
services:
focalboard:
image: git.nixc.us/nixius/focalboard:staging-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/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"
productivity:
image: git.nixc.us/nixius/super-productivity:staging
volumes:
- "/mnt/tank/persist/nixc.us/productivity/staging/data/:/home/user/.config/superProductivity"
deploy:
replicas: 1
placement:
constraints:
- 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:
replicas: 1
labels:
homepage.group: apps
homepage.name: focalboard
homepage.href: https://focalboard.nixc.us/
homepage.name: productivity
homepage.href: https://staging.productivity.nixc.us/
homepage.description:
us.nixc.autodeploy: "true"
traefik.enable: "true"
traefik.http.routers.staging_focalboard_focalboard.tls: "true"
traefik.http.services.staging_focalboard_focalboard.loadbalancer.server.port: 80
traefik.http.routers.staging_focalboard_focalboard.rule: Host(`staging.focalboard.nixc.us`)
traefik.http.routers.staging_focalboard_focalboard.entrypoints: websecure
traefik.http.routers.staging_focalboard_focalboard.tls.certresolver: letsencryptresolver
traefik.http.routers.staging_focalboard_focalboard.service: staging_focalboard_focalboard
traefik.http.routers.staging_productivity_productivity.tls: "true"
traefik.http.services.staging_productivity_productivity.loadbalancer.server.port: 80
traefik.http.routers.staging_productivity_productivity.rule: Host(`staging.productivity.nixc.us`)
traefik.http.routers.staging_productivity_productivity.entrypoints: websecure
traefik.http.routers.staging_productivity_productivity.tls.certresolver: letsencryptresolver
traefik.http.routers.staging_productivity_productivity.service: staging_productivity_productivity
traefik.docker.network: traefik
# - '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:
- default
traefik
networks:
traefik:
external: true
default:
external: true