Compare commits
12 Commits
073dc3bccd
...
5ded0bcec9
| Author | SHA1 | Date | |
|---|---|---|---|
| 5ded0bcec9 | |||
| 1df4988d38 | |||
| ae568f0ba7 | |||
| f5bbe2b949 | |||
| 696ee86d78 | |||
| a4238128b3 | |||
| 29b35c2a22 | |||
| d89da82b69 | |||
| 6c5986d894 | |||
| 44803f11b7 | |||
| aa9f80dbdf | |||
| ad9885542c |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -4,4 +4,5 @@ data
|
|||||||
db
|
db
|
||||||
|
|
||||||
# Files
|
# Files
|
||||||
|
.dashboardUsers
|
||||||
.env
|
.env
|
||||||
@@ -6,13 +6,19 @@ services:
|
|||||||
container_name: gitea
|
container_name: gitea
|
||||||
restart: always
|
restart: always
|
||||||
depends_on:
|
depends_on:
|
||||||
- gitea_db
|
gitea_db:
|
||||||
|
condition: service_healthy
|
||||||
environment:
|
environment:
|
||||||
- GITEA__database__DB_TYPE=postgres
|
- GITEA__database__DB_TYPE=postgres
|
||||||
- GITEA__database__HOST=gitea_db:5432
|
- GITEA__database__HOST=gitea_db:5432
|
||||||
- GITEA__database__NAME=gitea
|
- GITEA__database__NAME=gitea
|
||||||
- GITEA__database__USER=gitea
|
- GITEA__database__USER=gitea
|
||||||
- GITEA__database__PASSWD=${DB_PASSWORD}
|
- GITEA__database__PASSWD=${DB_PASSWORD}
|
||||||
|
healthcheck:
|
||||||
|
test: curl -f http://localhost:3000/api/healthz || exit 1
|
||||||
|
interval: 30s
|
||||||
|
timeout: 10s
|
||||||
|
retries: 3
|
||||||
networks:
|
networks:
|
||||||
- default
|
- default
|
||||||
- traefik
|
- traefik
|
||||||
@@ -29,6 +35,11 @@ services:
|
|||||||
- POSTGRES_DB=gitea
|
- POSTGRES_DB=gitea
|
||||||
- POSTGRES_USER=gitea
|
- POSTGRES_USER=gitea
|
||||||
- POSTGRES_PASSWORD=${DB_PASSWORD}
|
- POSTGRES_PASSWORD=${DB_PASSWORD}
|
||||||
|
healthcheck:
|
||||||
|
test: pg_isready
|
||||||
|
interval: 30s
|
||||||
|
timeout: 10s
|
||||||
|
retries: 3
|
||||||
networks:
|
networks:
|
||||||
- default
|
- default
|
||||||
volumes:
|
volumes:
|
||||||
|
|||||||
41
hedgedoc/compose.yml
Normal file
41
hedgedoc/compose.yml
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
# /services/hedgedoc/compose.yml
|
||||||
|
|
||||||
|
services:
|
||||||
|
hedgedoc:
|
||||||
|
image: quay.io/hedgedoc/hedgedoc:1.10.3
|
||||||
|
container_name: hedgedoc
|
||||||
|
restart: always
|
||||||
|
depends_on:
|
||||||
|
hedgedoc_db:
|
||||||
|
condition: service_healthy
|
||||||
|
environment:
|
||||||
|
- CMD_DB_URL=postgres://hedgedoc:${DB_PASSWORD}@hedgedoc_db:5432/hedgedoc
|
||||||
|
- CMD_DOMAIN=pad.eliasfink.de
|
||||||
|
- CMD_PROTOCOL_USESSL=true
|
||||||
|
networks:
|
||||||
|
- default
|
||||||
|
- traefik
|
||||||
|
volumes:
|
||||||
|
- ./uploads:/hedgedoc/public/uploads
|
||||||
|
|
||||||
|
hedgedoc_db:
|
||||||
|
image: postgres:17
|
||||||
|
container_name: hedgedoc_db
|
||||||
|
restart: always
|
||||||
|
environment:
|
||||||
|
- POSTGRES_DB=hedgedoc
|
||||||
|
- POSTGRES_USER=hedgedoc
|
||||||
|
- POSTGRES_PASSWORD=${DB_PASSWORD}
|
||||||
|
healthcheck:
|
||||||
|
test: pg_isready
|
||||||
|
interval: 30s
|
||||||
|
timeout: 10s
|
||||||
|
retries: 3
|
||||||
|
networks:
|
||||||
|
- default
|
||||||
|
volumes:
|
||||||
|
- ./db:/var/lib/postgresql/data
|
||||||
|
|
||||||
|
networks:
|
||||||
|
traefik:
|
||||||
|
external: true
|
||||||
@@ -6,14 +6,21 @@ services:
|
|||||||
container_name: nextcloud
|
container_name: nextcloud
|
||||||
restart: always
|
restart: always
|
||||||
depends_on:
|
depends_on:
|
||||||
- nextcloud_db
|
nextcloud_db:
|
||||||
- nextcloud_redis
|
condition: service_healthy
|
||||||
|
nextcloud_redis:
|
||||||
|
condition: service_healthy
|
||||||
environment:
|
environment:
|
||||||
- POSTGRES_HOST=nextcloud_db
|
- POSTGRES_HOST=nextcloud_db
|
||||||
- POSTGRES_DB=nextcloud
|
- POSTGRES_DB=nextcloud
|
||||||
- POSTGRES_USER=nextcloud
|
- POSTGRES_USER=nextcloud
|
||||||
- POSTGRES_PASSWORD=${DB_PASSWORD}
|
- POSTGRES_PASSWORD=${DB_PASSWORD}
|
||||||
- REDIS_HOST=nextcloud_redis
|
- REDIS_HOST=nextcloud_redis
|
||||||
|
healthcheck:
|
||||||
|
test: curl -f http://localhost/status.php || exit 1
|
||||||
|
interval: 30s
|
||||||
|
timeout: 10s
|
||||||
|
retries: 3
|
||||||
networks:
|
networks:
|
||||||
- default
|
- default
|
||||||
- traefik
|
- traefik
|
||||||
@@ -29,6 +36,11 @@ services:
|
|||||||
- POSTGRES_DB=nextcloud
|
- POSTGRES_DB=nextcloud
|
||||||
- POSTGRES_USER=nextcloud
|
- POSTGRES_USER=nextcloud
|
||||||
- POSTGRES_PASSWORD=${DB_PASSWORD}
|
- POSTGRES_PASSWORD=${DB_PASSWORD}
|
||||||
|
healthcheck:
|
||||||
|
test: pg_isready
|
||||||
|
interval: 30s
|
||||||
|
timeout: 10s
|
||||||
|
retries: 3
|
||||||
networks:
|
networks:
|
||||||
- default
|
- default
|
||||||
volumes:
|
volumes:
|
||||||
@@ -38,6 +50,11 @@ services:
|
|||||||
image: redis:8
|
image: redis:8
|
||||||
container_name: nextcloud_redis
|
container_name: nextcloud_redis
|
||||||
restart: always
|
restart: always
|
||||||
|
healthcheck:
|
||||||
|
test: redis-cli ping
|
||||||
|
interval: 30s
|
||||||
|
timeout: 10s
|
||||||
|
retries: 3
|
||||||
networks:
|
networks:
|
||||||
- default
|
- default
|
||||||
volumes:
|
volumes:
|
||||||
|
|||||||
@@ -5,11 +5,17 @@ services:
|
|||||||
image: traefik:3
|
image: traefik:3
|
||||||
container_name: traefik
|
container_name: traefik
|
||||||
restart: always
|
restart: always
|
||||||
|
healthcheck:
|
||||||
|
test: traefik healthcheck
|
||||||
|
interval: 30s
|
||||||
|
timeout: 10s
|
||||||
|
retries: 3
|
||||||
networks:
|
networks:
|
||||||
- traefik
|
- traefik
|
||||||
ports:
|
ports:
|
||||||
- 80:80
|
- 80:80
|
||||||
- 443:443
|
- 443:443
|
||||||
|
- 8080:8080
|
||||||
volumes:
|
volumes:
|
||||||
- ./:/etc/traefik
|
- ./:/etc/traefik
|
||||||
|
|
||||||
|
|||||||
@@ -6,4 +6,11 @@ http:
|
|||||||
entryPoints:
|
entryPoints:
|
||||||
- https
|
- https
|
||||||
rule: Host(`traefik.eliasfink.de`)
|
rule: Host(`traefik.eliasfink.de`)
|
||||||
service: api@internal
|
middlewares:
|
||||||
|
- traefik-dashboard-auth
|
||||||
|
service: api@internal
|
||||||
|
|
||||||
|
middlewares:
|
||||||
|
traefik-dashboard-auth:
|
||||||
|
digestAuth:
|
||||||
|
usersFile: /etc/traefik/config/.dashboardUsers
|
||||||
15
traefik/config/hedgedoc.yml
Normal file
15
traefik/config/hedgedoc.yml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
# /services/traefik/config/hedgedoc.yml
|
||||||
|
|
||||||
|
http:
|
||||||
|
routers:
|
||||||
|
pad:
|
||||||
|
entryPoints:
|
||||||
|
- https
|
||||||
|
rule: Host(`pad.eliasfink.de`)
|
||||||
|
service: hedgedoc
|
||||||
|
|
||||||
|
services:
|
||||||
|
hedgedoc:
|
||||||
|
loadBalancer:
|
||||||
|
servers:
|
||||||
|
- url: http://hedgedoc:3000
|
||||||
15
traefik/config/uptime-kuma.yml
Normal file
15
traefik/config/uptime-kuma.yml
Normal file
@@ -0,0 +1,15 @@
|
|||||||
|
# /services/traefik/config/uptime-kuma.yml
|
||||||
|
|
||||||
|
http:
|
||||||
|
routers:
|
||||||
|
status:
|
||||||
|
entryPoints:
|
||||||
|
- https
|
||||||
|
rule: Host(`status.eliasfink.de`)
|
||||||
|
service: uptime-kuma
|
||||||
|
|
||||||
|
services:
|
||||||
|
uptime-kuma:
|
||||||
|
loadBalancer:
|
||||||
|
servers:
|
||||||
|
- url: http://uptime-kuma:3001
|
||||||
@@ -1,9 +1,12 @@
|
|||||||
# /services/traefik/traefik.yml
|
# /services/traefik/traefik.yml
|
||||||
|
|
||||||
global:
|
global:
|
||||||
checkNewVersion: true
|
|
||||||
sendAnonymousUsage: false
|
sendAnonymousUsage: false
|
||||||
|
|
||||||
|
api: {}
|
||||||
|
|
||||||
|
ping: {}
|
||||||
|
|
||||||
entryPoints:
|
entryPoints:
|
||||||
http:
|
http:
|
||||||
address: :80
|
address: :80
|
||||||
@@ -19,8 +22,6 @@ entryPoints:
|
|||||||
tls:
|
tls:
|
||||||
certResolver: letsencrypt
|
certResolver: letsencrypt
|
||||||
|
|
||||||
api: {}
|
|
||||||
|
|
||||||
providers:
|
providers:
|
||||||
file:
|
file:
|
||||||
directory: /etc/traefik/config
|
directory: /etc/traefik/config
|
||||||
|
|||||||
16
uptime-kuma/compose.yml
Normal file
16
uptime-kuma/compose.yml
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
# /services/uptime-kuma/compose.yml
|
||||||
|
|
||||||
|
services:
|
||||||
|
uptime-kuma:
|
||||||
|
image: louislam/uptime-kuma:1
|
||||||
|
container_name: uptime-kuma
|
||||||
|
restart: always
|
||||||
|
networks:
|
||||||
|
- traefik
|
||||||
|
volumes:
|
||||||
|
- ./data:/app/data
|
||||||
|
- /var/run/docker.sock:/var/run/docker.sock
|
||||||
|
|
||||||
|
networks:
|
||||||
|
traefik:
|
||||||
|
external: true
|
||||||
Reference in New Issue
Block a user