Add watchtower, fixes and prepare for new caddy handling
This commit is contained in:
parent
a594e5d083
commit
29f31783f5
14 changed files with 213 additions and 42 deletions
|
@ -4,6 +4,8 @@ services:
|
|||
server:
|
||||
image: gitea/gitea:1.17
|
||||
container_name: gitea
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
env_file:
|
||||
- .env
|
||||
- .secret.env
|
||||
|
@ -16,6 +18,14 @@ services:
|
|||
- "3000:3000"
|
||||
- "3022:22"
|
||||
- "22:22"
|
||||
networks:
|
||||
services:
|
||||
aliases:
|
||||
- gitea
|
||||
|
||||
volumes:
|
||||
data:
|
||||
|
||||
networks:
|
||||
services:
|
||||
external: true
|
||||
|
|
|
@ -2,8 +2,10 @@ version: '3'
|
|||
|
||||
services:
|
||||
grafana:
|
||||
image: grafana/grafana
|
||||
image: grafana/grafana:latest
|
||||
restart: always
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
env_file:
|
||||
- .env
|
||||
- .secret.env
|
||||
|
@ -12,5 +14,14 @@ services:
|
|||
user: "104"
|
||||
ports:
|
||||
- 3001:3000/tcp
|
||||
networks:
|
||||
services:
|
||||
aliases:
|
||||
- grafana
|
||||
|
||||
volumes:
|
||||
grafana-data:
|
||||
|
||||
networks:
|
||||
services:
|
||||
external: true
|
||||
|
|
|
@ -1,14 +0,0 @@
|
|||
version: '3'
|
||||
services:
|
||||
app:
|
||||
image: 'jc21/nginx-proxy-manager:latest'
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- '80:80'
|
||||
- '443:443'
|
||||
- '81:81'
|
||||
volumes:
|
||||
- data:/data
|
||||
- /etc/letsencrypt:/etc/letsencrypt
|
||||
volumes:
|
||||
data:
|
|
@ -5,20 +5,31 @@ services:
|
|||
synapse:
|
||||
image: docker.io/matrixdotorg/synapse:latest
|
||||
restart: always
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
environment:
|
||||
- SYNAPSE_CONFIG_PATH=/data/
|
||||
volumes:
|
||||
- ./data:/data
|
||||
- media_store:/media_store
|
||||
ports:
|
||||
- 8008:8008/tcp
|
||||
networks:
|
||||
services:
|
||||
aliases:
|
||||
- synapse
|
||||
|
||||
synapse-admin:
|
||||
image: awesometechnologies/synapse-admin:latest
|
||||
restart: always
|
||||
ports:
|
||||
- "8009:80"
|
||||
restart: always
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
networks:
|
||||
services:
|
||||
aliases:
|
||||
- synapse-admin
|
||||
|
||||
volumes:
|
||||
media_store:
|
||||
|
||||
networks:
|
||||
services:
|
||||
external: true
|
||||
|
|
|
@ -3,6 +3,8 @@ services:
|
|||
web_recipes:
|
||||
image: vabene1111/recipes
|
||||
restart: always
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
env_file:
|
||||
- .env
|
||||
- .secret.env
|
||||
|
@ -10,12 +12,14 @@ services:
|
|||
- staticfiles:/opt/recipes/staticfiles
|
||||
- nginx_config:/opt/recipes/nginx/conf.d
|
||||
- mediafiles:/opt/recipes/mediafiles
|
||||
networks:
|
||||
tandoor:
|
||||
|
||||
nginx_recipes:
|
||||
image: nginx:mainline-alpine
|
||||
restart: always
|
||||
ports:
|
||||
- 3017:80
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
env_file:
|
||||
- .env
|
||||
- .secret.env
|
||||
|
@ -25,8 +29,18 @@ services:
|
|||
- nginx_config:/etc/nginx/conf.d:ro
|
||||
- staticfiles:/static
|
||||
- mediafiles:/media
|
||||
networks:
|
||||
tandoor:
|
||||
services:
|
||||
aliases:
|
||||
- tandoor
|
||||
|
||||
volumes:
|
||||
nginx_config:
|
||||
staticfiles:
|
||||
mediafiles:
|
||||
|
||||
networks:
|
||||
tandoor:
|
||||
services:
|
||||
external: true
|
||||
|
|
|
@ -13,5 +13,3 @@ TTRSS_SELF_URL_PATH=https://rss.serguzim.me/tt-rss/
|
|||
# TTRSS_SESSION_COOKIE_LIFETIME=2592000
|
||||
# TTRSS_FORCE_ARTICLE_PURGE=30
|
||||
# etc, etc.
|
||||
|
||||
HTTP_PORT=8280
|
||||
|
|
|
@ -4,15 +4,23 @@ services:
|
|||
app:
|
||||
image: cthulhoo/ttrss-fpm-pgsql-static
|
||||
restart: always
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
env_file:
|
||||
- .env
|
||||
- .secret.env
|
||||
volumes:
|
||||
- app:/var/www/html
|
||||
networks:
|
||||
tt-rss:
|
||||
aliases:
|
||||
- tt-rss-app
|
||||
|
||||
updater:
|
||||
image: cthulhoo/ttrss-fpm-pgsql-static
|
||||
restart: always
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
env_file:
|
||||
- .env
|
||||
- .secret.env
|
||||
|
@ -21,16 +29,29 @@ services:
|
|||
depends_on:
|
||||
- app
|
||||
command: /opt/tt-rss/updater.sh
|
||||
networks:
|
||||
tt-rss:
|
||||
|
||||
web-nginx:
|
||||
image: cthulhoo/ttrss-web-nginx
|
||||
restart: always
|
||||
ports:
|
||||
- ${HTTP_PORT}:80
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
volumes:
|
||||
- app:/var/www/html:ro
|
||||
- ./nginx.conf:/etc/nginx/nginx.conf
|
||||
depends_on:
|
||||
- app
|
||||
networks:
|
||||
tt-rss:
|
||||
services:
|
||||
aliases:
|
||||
- tt-rss
|
||||
|
||||
volumes:
|
||||
app:
|
||||
|
||||
networks:
|
||||
tt-rss:
|
||||
services:
|
||||
external: true
|
||||
|
|
61
tt-rss/nginx.conf
Normal file
61
tt-rss/nginx.conf
Normal file
|
@ -0,0 +1,61 @@
|
|||
worker_processes auto;
|
||||
pid /var/run/nginx.pid;
|
||||
|
||||
events {
|
||||
worker_connections 1024;
|
||||
}
|
||||
|
||||
http {
|
||||
include /etc/nginx/mime.types;
|
||||
default_type application/octet-stream;
|
||||
|
||||
access_log /dev/stdout;
|
||||
error_log /dev/stderr warn;
|
||||
|
||||
sendfile on;
|
||||
|
||||
index index.php;
|
||||
|
||||
upstream app {
|
||||
server tt-rss-app:9000;
|
||||
}
|
||||
|
||||
server {
|
||||
listen 80;
|
||||
listen [::]:80;
|
||||
|
||||
root /var/www/html;
|
||||
|
||||
location /tt-rss/cache {
|
||||
aio threads;
|
||||
internal;
|
||||
}
|
||||
|
||||
location /tt-rss/backups {
|
||||
internal;
|
||||
}
|
||||
|
||||
location ~ \.php$ {
|
||||
# regex to split $uri to $fastcgi_script_name and $fastcgi_path
|
||||
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
|
||||
|
||||
# Check that the PHP script exists before passing it
|
||||
try_files $fastcgi_script_name =404;
|
||||
|
||||
# Bypass the fact that try_files resets $fastcgi_path_info
|
||||
# see: http://trac.nginx.org/nginx/ticket/321
|
||||
set $path_info $fastcgi_path_info;
|
||||
fastcgi_param PATH_INFO $path_info;
|
||||
|
||||
fastcgi_index index.php;
|
||||
include fastcgi.conf;
|
||||
|
||||
fastcgi_pass app;
|
||||
}
|
||||
|
||||
location / {
|
||||
try_files $uri $uri/ =404;
|
||||
}
|
||||
|
||||
}
|
||||
}
|
|
@ -1,10 +1,18 @@
|
|||
version: '3'
|
||||
services:
|
||||
umami:
|
||||
image: ghcr.io/mikecao/umami:postgresql-latest
|
||||
ports:
|
||||
- "3013:3000"
|
||||
app:
|
||||
image: docker.umami.is/umami-software/umami:postgresql-latest
|
||||
restart: always
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
env_file:
|
||||
- .env
|
||||
- .secret.env
|
||||
restart: always
|
||||
networks:
|
||||
services:
|
||||
aliases:
|
||||
- umami
|
||||
|
||||
networks:
|
||||
services:
|
||||
external: true
|
||||
|
|
11
watchtower/.env
Normal file
11
watchtower/.env
Normal file
|
@ -0,0 +1,11 @@
|
|||
WATCHTOWER_LABEL_ENABLE=true
|
||||
WATCHTOWER_CLEANUP=true
|
||||
|
||||
WATCHTOWER_NOTIFICATIONS=email
|
||||
WATCHTOWER_NOTIFICATION_EMAIL_FROM=watchtower@serguzim.me
|
||||
WATCHTOWER_NOTIFICATION_EMAIL_TO=tobias@msrg.cc
|
||||
WATCHTOWER_NOTIFICATION_EMAIL_SERVER=mail.serguzim.me
|
||||
WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PORT=587
|
||||
WATCHTOWER_NOTIFICATION_EMAIL_SERVER_USER=watchtower@serguzim.me
|
||||
WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PASSWORD=
|
||||
WATCHTOWER_NOTIFICATION_EMAIL_DELAY=5
|
11
watchtower/docker-compose.yml
Normal file
11
watchtower/docker-compose.yml
Normal file
|
@ -0,0 +1,11 @@
|
|||
version: "3"
|
||||
|
||||
services:
|
||||
watchtower:
|
||||
image: containrrr/watchtower
|
||||
restart: always
|
||||
env_file:
|
||||
- .env
|
||||
- .secret.env
|
||||
volumes:
|
||||
- /var/run/docker.sock:/var/run/docker.sock
|
|
@ -2,21 +2,28 @@ services:
|
|||
webdis:
|
||||
image: nicolas/webdis:latest
|
||||
restart: always
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
command: /usr/local/bin/webdis /config/webdis.json
|
||||
volumes:
|
||||
- ./webdis.json:/config/webdis.json
|
||||
networks:
|
||||
- shared
|
||||
local-net:
|
||||
services:
|
||||
aliases:
|
||||
- webdis
|
||||
depends_on:
|
||||
- redis
|
||||
ports:
|
||||
- "127.0.0.1:7379:7379"
|
||||
|
||||
redis:
|
||||
image: redis:6.2.6
|
||||
restart: always
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
networks:
|
||||
- shared
|
||||
local-net:
|
||||
|
||||
networks:
|
||||
shared:
|
||||
local-net:
|
||||
services:
|
||||
external: true
|
||||
|
|
|
@ -1,11 +1,19 @@
|
|||
version: '3'
|
||||
|
||||
services:
|
||||
wiki-js:
|
||||
app:
|
||||
image: requarks/wiki
|
||||
restart: always
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
env_file:
|
||||
- .env
|
||||
- .secret.env
|
||||
ports:
|
||||
- 3003:3000/tcp
|
||||
networks:
|
||||
services:
|
||||
aliases:
|
||||
- wiki-js
|
||||
|
||||
networks:
|
||||
services:
|
||||
external: true
|
||||
|
|
|
@ -4,16 +4,23 @@ services:
|
|||
woodpecker-server:
|
||||
image: woodpeckerci/woodpecker-server:latest
|
||||
restart: always
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
env_file:
|
||||
- .env
|
||||
- .secret.env
|
||||
ports:
|
||||
- 3500:8000
|
||||
networks:
|
||||
local-net:
|
||||
services:
|
||||
aliases:
|
||||
- woodpecker
|
||||
|
||||
woodpecker-agent:
|
||||
image: woodpeckerci/woodpecker-agent:latest
|
||||
command: agent
|
||||
restart: always
|
||||
labels:
|
||||
com.centurylinklabs.watchtower.enable: true
|
||||
command: agent
|
||||
env_file:
|
||||
- .env
|
||||
- .secret.env
|
||||
|
@ -23,3 +30,10 @@ services:
|
|||
- /var/run/docker.sock:/var/run/docker.sock
|
||||
environment:
|
||||
WOODPECKER_SERVER: "woodpecker-server:9000"
|
||||
networks:
|
||||
local-net:
|
||||
|
||||
networks:
|
||||
local-net:
|
||||
services:
|
||||
external: true
|
||||
|
|
Reference in a new issue