Compare commits
30 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 59cc0bc271 | |||
| e864a2ca50 | |||
| 683aae4c06 | |||
| cae1347710 | |||
| 087c4df7d2 | |||
| 466811c167 | |||
| 81a5fb1fca | |||
| 86961b7f53 | |||
| dc2897fd51 | |||
| 2326281ec7 | |||
| c0f154f3d9 | |||
| 62d6023e9c | |||
| c4b05e9343 | |||
| 849ccddcb1 | |||
| fcc7390eab | |||
| 1fea1bf20e | |||
| 03919a9849 | |||
| 8ffc3b82df | |||
| 43047db674 | |||
| d0d12b0b4b | |||
| e14ef89f50 | |||
| e75ed645b0 | |||
| edcc1dfac8 | |||
| 70c103358d | |||
| 3c3652afd7 | |||
| 7fde85c28a | |||
| b5236c1ab4 | |||
| 9935fc65c3 | |||
| 7cf7c4a2aa | |||
| 6be4453ffb |
@@ -58,26 +58,25 @@ jobs:
|
|||||||
gotify_app_token: '${{ secrets.RINOA_RUNNER_GOTIFY_TOKEN }}'
|
gotify_app_token: '${{ secrets.RINOA_RUNNER_GOTIFY_TOKEN }}'
|
||||||
notification_title: 'GITEA: PR Check'
|
notification_title: 'GITEA: PR Check'
|
||||||
notification_message: 'PR Created 🎟️'
|
notification_message: 'PR Created 🎟️'
|
||||||
docker-compose-dry-run:
|
generate-service-list:
|
||||||
name: Docker Compose Dry Run
|
name: Generate list of added/modified/deleted services
|
||||||
needs: [check-and-create-pr]
|
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
env:
|
needs: [check-and-create-pr]
|
||||||
VAULT_ADDR: ${{ secrets.RINOA_VAULT_ADDR }}
|
|
||||||
VAULT_TOKEN: ${{ secrets.VAULT_GITEA_TOKEN }}
|
|
||||||
VAULT_NAMESPACE: ""
|
|
||||||
RINOA_REGISTRY_PASSWORD: ${{ secrets.BOT_GITEA_PASSWORD }}
|
|
||||||
outputs:
|
outputs:
|
||||||
svc_deploy_list: ${{ steps.modded_svcs.outputs.rinoa_svcs }}
|
svc_deploy_list: ${{ steps.detected_services.outputs.docker_svc_list }}
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
uses: actions/checkout@v4
|
uses: actions/checkout@v4
|
||||||
- name: Fetch base branch
|
- name: Fetch base branch
|
||||||
run: |
|
run: |
|
||||||
git fetch origin ${{ github.event.pull_request.base.ref }}
|
git fetch origin ${{ github.event.pull_request.base.ref }}
|
||||||
- name: Login to Gitea Container Registry
|
- name: Gotify Notification
|
||||||
run: |
|
uses: eikendev/gotify-action@master
|
||||||
docker login -u gitea-sonarqube-bot -p ${RINOA_REGISTRY_PASSWORD} git.trez.wtf
|
with:
|
||||||
|
gotify_api_base: '${{ secrets.RINOA_GOTIFY_URL }}'
|
||||||
|
gotify_app_token: '${{ secrets.RINOA_RUNNER_GOTIFY_TOKEN }}'
|
||||||
|
notification_title: 'GITEA: Services TBD'
|
||||||
|
notification_message: 'Generating list of services to deploy...'
|
||||||
- name: Save both versions of docker-compose.yml
|
- name: Save both versions of docker-compose.yml
|
||||||
run: |
|
run: |
|
||||||
git show origin/main:docker-compose.yml > docker-compose-main.yml || touch docker-compose-main.yml
|
git show origin/main:docker-compose.yml > docker-compose-main.yml || touch docker-compose-main.yml
|
||||||
@@ -107,8 +106,27 @@ jobs:
|
|||||||
echo "Detected service changes:"
|
echo "Detected service changes:"
|
||||||
cat service_changes.txt
|
cat service_changes.txt
|
||||||
|
|
||||||
svc_list=$(paste -sd '|' service_changes.txt)
|
temp_svc_list=$(paste -sd '|' service_changes.txt)
|
||||||
echo "classified_services=$svc_list" >> "$GITHUB_OUTPUT"
|
mod_svcs=$(echo "${temp_svc_list}" | sed -e 's/|//g' -e 's/: \(add\|modifi\|delet\)ed/ /g')
|
||||||
|
echo "docker_svc_list=$mod_svcs" >> "$GITHUB_OUTPUT"
|
||||||
|
- name: Testing service list output
|
||||||
|
run: |
|
||||||
|
echo ${{ steps.detected_services.outputs.docker_svc_list }}
|
||||||
|
docker-compose-dry-run:
|
||||||
|
name: Docker Compose Dry Run
|
||||||
|
needs: [generate-service-list]
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
env:
|
||||||
|
VAULT_ADDR: ${{ secrets.RINOA_VAULT_ADDR }}
|
||||||
|
VAULT_TOKEN: ${{ secrets.VAULT_GITEA_TOKEN }}
|
||||||
|
VAULT_NAMESPACE: ""
|
||||||
|
RINOA_REGISTRY_PASSWORD: ${{ secrets.BOT_GITEA_PASSWORD }}
|
||||||
|
steps:
|
||||||
|
- name: Checkout
|
||||||
|
uses: actions/checkout@v4
|
||||||
|
- name: Login to Gitea Container Registry
|
||||||
|
run: |
|
||||||
|
docker login -u gitea-sonarqube-bot -p ${RINOA_REGISTRY_PASSWORD} git.trez.wtf
|
||||||
- name: Install Vault
|
- name: Install Vault
|
||||||
uses: cpanato/vault-installer@main
|
uses: cpanato/vault-installer@main
|
||||||
- name: Gotify Notification
|
- name: Gotify Notification
|
||||||
@@ -118,37 +136,18 @@ jobs:
|
|||||||
gotify_app_token: '${{ secrets.RINOA_RUNNER_GOTIFY_TOKEN }}'
|
gotify_app_token: '${{ secrets.RINOA_RUNNER_GOTIFY_TOKEN }}'
|
||||||
notification_title: 'GITEA: Docker Compose Dry Run @ Rinoa'
|
notification_title: 'GITEA: Docker Compose Dry Run @ Rinoa'
|
||||||
notification_message: 'Starting Docker Compose dry run...'
|
notification_message: 'Starting Docker Compose dry run...'
|
||||||
- name: Cache .env Files
|
- name: Generate .env file for Docker Compose
|
||||||
uses: actions/cache@v4
|
|
||||||
with:
|
|
||||||
path: .env
|
|
||||||
key: ${{ runner.os }}-env-${{ hashFiles('docker-compose.yml') }}
|
|
||||||
- name: Generate modified services list & .env file for Docker Compose Dry Run
|
|
||||||
id: modded_svcs
|
|
||||||
run: |
|
run: |
|
||||||
mod_svcs=$(echo "${{ steps.detect_services.outputs.classified_services }}" | sed -e 's/|//g' -e 's/: \(add\|modifi\|delet\)ed/ /g')
|
|
||||||
echo ${mod_svcs}
|
|
||||||
vault kv get -format=json rinoa-docker/env | jq -r '.data.data' | jq -r 'keys[] as $k | "\($k)='\''\(.[$k])'\''"' > .env
|
vault kv get -format=json rinoa-docker/env | jq -r '.data.data' | jq -r 'keys[] as $k | "\($k)='\''\(.[$k])'\''"' > .env
|
||||||
echo "rinoa_svcs=${mod_svcs}" >> "$GITHUB_OUTPUT"
|
|
||||||
- name: Testing service list output
|
|
||||||
run: |
|
|
||||||
echo ${{ steps.modded_svcs.outputs.rinoa_svcs }}
|
|
||||||
- name: Docker Compose Dry Run
|
- name: Docker Compose Dry Run
|
||||||
timeout-minutes: 360
|
uses: hoverkraft-tech/compose-action@v2.2.0
|
||||||
continue-on-error: true
|
|
||||||
uses: chaplyk/docker-compose-remote-action@v1.1
|
|
||||||
with:
|
|
||||||
ssh_host: 192.168.1.254
|
|
||||||
ssh_port: 22
|
|
||||||
ssh_user: gitea-deploy
|
|
||||||
ssh_key: ${{ secrets.RINOA_GITEA_PRIVATE_SSH_KEY }}
|
|
||||||
service: ${{ steps.modded_svcs.outputs.rinoa_svcs }}
|
|
||||||
compose_file: docker-compose.yml
|
|
||||||
pull: false
|
|
||||||
build: false
|
|
||||||
options: -d --remove-orphans
|
|
||||||
env:
|
env:
|
||||||
DOCKER_HOST: tcp://dockerproxy:2375
|
DOCKER_HOST: tcp://dockerproxy:2375
|
||||||
|
with:
|
||||||
|
services: ${{ needs.generate-service-list.outputs.svc_deploy_list }}
|
||||||
|
up-flags: -d --remove-orphans --dry-run
|
||||||
|
down-flags: --dry-run
|
||||||
|
compose-flags: --dry-run
|
||||||
- name: Gotify Notification
|
- name: Gotify Notification
|
||||||
uses: eikendev/gotify-action@master
|
uses: eikendev/gotify-action@master
|
||||||
with:
|
with:
|
||||||
@@ -158,7 +157,7 @@ jobs:
|
|||||||
notification_message: 'Docker Compose dry run completed successfully.'
|
notification_message: 'Docker Compose dry run completed successfully.'
|
||||||
cloudflare-dns-setup:
|
cloudflare-dns-setup:
|
||||||
name: Cloudflare DNS Setup
|
name: Cloudflare DNS Setup
|
||||||
needs: [docker-compose-ansible-lints]
|
needs: [docker-compose-dry-run]
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout
|
- name: Checkout
|
||||||
@@ -299,7 +298,7 @@ jobs:
|
|||||||
docker-compose-deploy:
|
docker-compose-deploy:
|
||||||
name: Docker Compose Deployment
|
name: Docker Compose Deployment
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
needs: [docker-compose-dry-run, pr-merge]
|
needs: [generate-service-list, docker-compose-dry-run, pr-merge]
|
||||||
env:
|
env:
|
||||||
VAULT_ADDR: ${{ secrets.RINOA_VAULT_ADDR }}
|
VAULT_ADDR: ${{ secrets.RINOA_VAULT_ADDR }}
|
||||||
VAULT_TOKEN: ${{ secrets.VAULT_GITEA_TOKEN }}
|
VAULT_TOKEN: ${{ secrets.VAULT_GITEA_TOKEN }}
|
||||||
@@ -333,21 +332,14 @@ jobs:
|
|||||||
run: |
|
run: |
|
||||||
vault kv get -format=json rinoa-docker/env | jq -r '.data.data' | jq -r 'keys[] as $k | "\($k)='\''\(.[$k])'\''"' > .env
|
vault kv get -format=json rinoa-docker/env | jq -r '.data.data' | jq -r 'keys[] as $k | "\($k)='\''\(.[$k])'\''"' > .env
|
||||||
- name: Docker Compose Deployment
|
- name: Docker Compose Deployment
|
||||||
timeout-minutes: 360
|
uses: hoverkraft-tech/compose-action@v2.2.0
|
||||||
continue-on-error: true
|
|
||||||
uses: chaplyk/docker-compose-remote-action@v1.1
|
|
||||||
env:
|
env:
|
||||||
DOCKER_HOST: tcp://dockerproxy:2375
|
DOCKER_HOST: tcp://dockerproxy:2375
|
||||||
with:
|
with:
|
||||||
ssh_host: 192.168.1.254
|
docker-flags: -H "$DOCKER_HOST"
|
||||||
ssh_port: 22
|
services: ${{ needs.generate-service-list.outputs.svc_deploy_list }}
|
||||||
ssh_user: gitea-deploy
|
up-flags: -d --remove-orphans
|
||||||
ssh_key: ${{ secrets.RINOA_GITEA_PRIVATE_SSH_KEY }}
|
down-flags: --dry-run
|
||||||
service: ${DOCKER_SVC_LIST}
|
|
||||||
compose_file: docker-compose.yml
|
|
||||||
pull: false
|
|
||||||
build: false
|
|
||||||
options: -d --remove-orphans
|
|
||||||
- name: Gotify Notification
|
- name: Gotify Notification
|
||||||
uses: eikendev/gotify-action@master
|
uses: eikendev/gotify-action@master
|
||||||
with:
|
with:
|
||||||
|
|||||||
@@ -13,6 +13,10 @@ containers:
|
|||||||
invidious:
|
invidious:
|
||||||
keywords:
|
keywords:
|
||||||
- regex: 'Error reading.*Connection reset by peer trying to reconnect...'
|
- regex: 'Error reading.*Connection reset by peer trying to reconnect...'
|
||||||
|
scrutiny:
|
||||||
|
action_keywords:
|
||||||
|
- restart:
|
||||||
|
regex: s6.*fatal
|
||||||
global_keywords:
|
global_keywords:
|
||||||
keywords:
|
keywords:
|
||||||
- panic
|
- panic
|
||||||
|
|||||||
+35
-24
@@ -33,9 +33,9 @@ x-maxun: &maxun-env
|
|||||||
REDIS_PORT: 6379
|
REDIS_PORT: 6379
|
||||||
BACKEND_PORT: 8080
|
BACKEND_PORT: 8080
|
||||||
FRONTEND_PORT: 5173
|
FRONTEND_PORT: 5173
|
||||||
BACKEND_URL: http://maxun-backend:8080
|
BACKEND_URL: https://scrape.trez.wtf/api
|
||||||
PUBLIC_URL: https://scrape.trez.wtf
|
PUBLIC_URL: https://scrape.trez.wtf
|
||||||
VITE_BACKEND_URL: http://maxun-backend:8080
|
VITE_BACKEND_URL: https://scrape.trez.wtf/api
|
||||||
VITE_PUBLIC_URL: https://scrape.trez.wtf
|
VITE_PUBLIC_URL: https://scrape.trez.wtf
|
||||||
MAXUN_TELEMETRY: true
|
MAXUN_TELEMETRY: true
|
||||||
PLAYWRIGHT_BROWSERS_PATH: /ms-playwright
|
PLAYWRIGHT_BROWSERS_PATH: /ms-playwright
|
||||||
@@ -179,6 +179,11 @@ services:
|
|||||||
APPRISE_STATEFUL_MODE: simple
|
APPRISE_STATEFUL_MODE: simple
|
||||||
image: lscr.io/linuxserver/apprise-api:latest
|
image: lscr.io/linuxserver/apprise-api:latest
|
||||||
labels:
|
labels:
|
||||||
|
cloudflare.tunnel.enable: true
|
||||||
|
cloudflare.tunnel.hostname: apprise.trez.wtf
|
||||||
|
cloudflare.tunnel.service: http://apprise:8000
|
||||||
|
cloudflare.tunnel.zonename: trez.wtf
|
||||||
|
cloudflare.tunnel.no_tls_verify: true
|
||||||
homepage.group: Infrastructure/App Performance Monitoring
|
homepage.group: Infrastructure/App Performance Monitoring
|
||||||
homepage.name: Apprise
|
homepage.name: Apprise
|
||||||
homepage.icon: apprise.png
|
homepage.icon: apprise.png
|
||||||
@@ -448,8 +453,8 @@ services:
|
|||||||
image: vaultwarden/server:latest
|
image: vaultwarden/server:latest
|
||||||
labels:
|
labels:
|
||||||
homepage.group: Privacy/Security
|
homepage.group: Privacy/Security
|
||||||
homepage.name: Bitwarden
|
homepage.name: Vaultwarden
|
||||||
homepage.icon: bitwarden.png
|
homepage.icon: vaultwarden.svg
|
||||||
homepage.href: https://bitwarden.${MY_TLD}
|
homepage.href: https://bitwarden.${MY_TLD}
|
||||||
homepage.description: Credential/Information Vault
|
homepage.description: Credential/Information Vault
|
||||||
swag: enable
|
swag: enable
|
||||||
@@ -708,10 +713,12 @@ services:
|
|||||||
- ${DOCKER_VOLUME_CONFIG}/cronicle/workloads/app:/app
|
- ${DOCKER_VOLUME_CONFIG}/cronicle/workloads/app:/app
|
||||||
crowdsec:
|
crowdsec:
|
||||||
container_name: crowdsec
|
container_name: crowdsec
|
||||||
|
depends_on:
|
||||||
|
- swag
|
||||||
environment:
|
environment:
|
||||||
DOCKER_HOST: tcp://dockerproxy:2375
|
DOCKER_HOST: tcp://dockerproxy:2375
|
||||||
GID: 1000
|
GID: 1000
|
||||||
BOUNCER_KEY_SWAG: ${CROWDSEC_API_KEY}
|
BOUNCER_KEY_SWAG: ${CROWDSEC_SWAG_API_KEY}
|
||||||
COLLECTIONS: >-
|
COLLECTIONS: >-
|
||||||
corvese/apache-guacamole
|
corvese/apache-guacamole
|
||||||
crowdsecurity/home-assistant
|
crowdsecurity/home-assistant
|
||||||
@@ -744,15 +751,13 @@ services:
|
|||||||
security_opt:
|
security_opt:
|
||||||
- no-new-privileges=true
|
- no-new-privileges=true
|
||||||
volumes:
|
volumes:
|
||||||
- ${DOCKER_VOLUME_CONFIG}/crowdsec/config.yaml.local:/etc/crowdsec/config.yaml
|
# - ${DOCKER_VOLUME_CONFIG}/crowdsec/config.yaml.local:/etc/crowdsec/config.yaml
|
||||||
- ${DOCKER_VOLUME_CONFIG}/crowdsec/local-api-credentials.yaml:/etc/crowdsec/local_api_credentials.yaml
|
|
||||||
- ${DOCKER_VOLUME_CONFIG}/crowdsec/online-api-credentials.yaml:/etc/crowdsec/online_api_credentials.yaml
|
|
||||||
- ${DOCKER_VOLUME_CONFIG}/swag/log/nginx:/var/log/swag:ro # SWAG
|
- ${DOCKER_VOLUME_CONFIG}/swag/log/nginx:/var/log/swag:ro # SWAG
|
||||||
- ${DOCKER_VOLUME_CONFIG}/mariadb/:/var/lib/mysql:ro # MariaDB
|
- ${DOCKER_VOLUME_CONFIG}/mariadb/:/var/lib/mysql:ro # MariaDB
|
||||||
- ${DOCKER_VOLUME_CONFIG}/audiobookshelf/.metadata/logs:/var/log/audiobookself:ro # Audiobookshelf
|
- ${DOCKER_VOLUME_CONFIG}/audiobookshelf/.metadata/logs:/var/log/audiobookself:ro # Audiobookshelf
|
||||||
- crowdsec-config:/etc/crowdsec
|
- crowdsec-config:/etc/crowdsec
|
||||||
- crowdsec-db:/var/lib/crowdsec/data
|
- crowdsec-db:/var/lib/crowdsec/data
|
||||||
- /var/log/journal:/var/log/host:ro
|
- /var/log/journal:/var/log/host/journal:ro
|
||||||
- /var/log/auth.log:/var/log/host/auth.log:ro
|
- /var/log/auth.log:/var/log/host/auth.log:ro
|
||||||
crowdsec-dashboard:
|
crowdsec-dashboard:
|
||||||
container_name: crowdsec-dashboard
|
container_name: crowdsec-dashboard
|
||||||
@@ -788,11 +793,7 @@ services:
|
|||||||
- 8908:3000
|
- 8908:3000
|
||||||
restart: always
|
restart: always
|
||||||
volumes:
|
volumes:
|
||||||
- ${DOCKER_VOLUME_CONFIG}/crowdsec/local-api-credentials.yaml:/etc/crowdsec/local_api_credentials.yaml
|
- crowdsec-db:/data/
|
||||||
- source: crowdsec-db
|
|
||||||
target: /data/
|
|
||||||
type: volume
|
|
||||||
volume: {}
|
|
||||||
cyber-chef:
|
cyber-chef:
|
||||||
container_name: cyber-chef
|
container_name: cyber-chef
|
||||||
image: mpepping/cyberchef:latest
|
image: mpepping/cyberchef:latest
|
||||||
@@ -870,7 +871,7 @@ services:
|
|||||||
entrypoint: web-entrypoint.sh
|
entrypoint: web-entrypoint.sh
|
||||||
environment:
|
environment:
|
||||||
RAILS_ENV: development
|
RAILS_ENV: development
|
||||||
REDIS_URL: redis://redis:6379/
|
REDIS_URL: redis://redis:6379
|
||||||
DATABASE_HOST: dawarich-pg-db
|
DATABASE_HOST: dawarich-pg-db
|
||||||
DATABASE_USERNAME: dawarich
|
DATABASE_USERNAME: dawarich
|
||||||
DATABASE_PASSWORD: ${DAWARICH_PG_PASSWORD}
|
DATABASE_PASSWORD: ${DAWARICH_PG_PASSWORD}
|
||||||
@@ -922,7 +923,7 @@ services:
|
|||||||
POSTGRES_USER: dawarich
|
POSTGRES_USER: dawarich
|
||||||
POSTGRES_PASSWORD: ${DAWARICH_PG_PASSWORD}
|
POSTGRES_PASSWORD: ${DAWARICH_PG_PASSWORD}
|
||||||
healthcheck:
|
healthcheck:
|
||||||
test: [ "CMD-SHELL", "pg_isready -U postgres -d dawarich_development" ]
|
test: [ "CMD-SHELL", "pg_isready -U dawarich -d dawarich" ]
|
||||||
interval: 10s
|
interval: 10s
|
||||||
retries: 5
|
retries: 5
|
||||||
start_period: 30s
|
start_period: 30s
|
||||||
@@ -954,7 +955,7 @@ services:
|
|||||||
entrypoint: sidekiq-entrypoint.sh
|
entrypoint: sidekiq-entrypoint.sh
|
||||||
environment:
|
environment:
|
||||||
RAILS_ENV: development
|
RAILS_ENV: development
|
||||||
REDIS_URL: redis://redis:6379/
|
REDIS_URL: redis://redis:6379
|
||||||
DATABASE_HOST: dawarich-pg-db
|
DATABASE_HOST: dawarich-pg-db
|
||||||
DATABASE_USERNAME: dawarich
|
DATABASE_USERNAME: dawarich
|
||||||
DATABASE_PASSWORD: ${DAWARICH_PG_PASSWORD}
|
DATABASE_PASSWORD: ${DAWARICH_PG_PASSWORD}
|
||||||
@@ -1375,7 +1376,6 @@ services:
|
|||||||
cloudflare.tunnel.enable: true
|
cloudflare.tunnel.enable: true
|
||||||
cloudflare.tunnel.hostname: git-ssh.trez.wtf
|
cloudflare.tunnel.hostname: git-ssh.trez.wtf
|
||||||
cloudflare.tunnel.service: http://gitea:22
|
cloudflare.tunnel.service: http://gitea:22
|
||||||
cloudflare.tunnel.zonename: trez.wtf
|
|
||||||
cloudflare.tunnel.no_tls_verify: true
|
cloudflare.tunnel.no_tls_verify: true
|
||||||
homepage.group: Code/DevOps
|
homepage.group: Code/DevOps
|
||||||
homepage.name: Gitea
|
homepage.name: Gitea
|
||||||
@@ -3192,10 +3192,12 @@ services:
|
|||||||
- 8080
|
- 8080
|
||||||
image: getmaxun/maxun-backend:latest
|
image: getmaxun/maxun-backend:latest
|
||||||
mem_limit: 2g # Set a 2GB memory limit
|
mem_limit: 2g # Set a 2GB memory limit
|
||||||
|
ports:
|
||||||
|
- 8369:8080
|
||||||
|
restart: unless-stopped
|
||||||
security_opt:
|
security_opt:
|
||||||
- seccomp=unconfined # This might help with browser sandbox issues
|
- seccomp=unconfined # This might help with browser sandbox issues
|
||||||
shm_size: '2gb' # Increase shared memory size for Chromium
|
shm_size: '2gb' # Increase shared memory size for Chromium
|
||||||
restart: unless-stopped
|
|
||||||
volumes:
|
volumes:
|
||||||
- /var/run/dbus:/var/run/dbus
|
- /var/run/dbus:/var/run/dbus
|
||||||
maxun-frontend:
|
maxun-frontend:
|
||||||
@@ -3206,6 +3208,10 @@ services:
|
|||||||
image: getmaxun/maxun-frontend:latest
|
image: getmaxun/maxun-frontend:latest
|
||||||
labels:
|
labels:
|
||||||
swag: enable
|
swag: enable
|
||||||
|
swag_server_custom_directive:
|
||||||
|
location /api {
|
||||||
|
proxy_pass http://maxun-backend:8080;
|
||||||
|
}
|
||||||
swag_proto: http
|
swag_proto: http
|
||||||
swag_port: 5173
|
swag_port: 5173
|
||||||
swag_url: scrape.${MY_TLD}
|
swag_url: scrape.${MY_TLD}
|
||||||
@@ -3472,6 +3478,11 @@ services:
|
|||||||
PORT: 20211
|
PORT: 20211
|
||||||
image: jokobsk/netalertx:latest
|
image: jokobsk/netalertx:latest
|
||||||
labels:
|
labels:
|
||||||
|
cloudflare.tunnel.enable: true
|
||||||
|
cloudflare.tunnel.hostname: net.trez.wtf
|
||||||
|
cloudflare.tunnel.service: http://192.168.1.254:20211
|
||||||
|
cloudflare.tunnel.zonename: trez.wtf
|
||||||
|
cloudflare.tunnel.no_tls_verify: true
|
||||||
homepage.group: Infrastructure/App Performance Monitoring
|
homepage.group: Infrastructure/App Performance Monitoring
|
||||||
homepage.name: NetAlertX
|
homepage.name: NetAlertX
|
||||||
homepage.href: http://192.168.1.254:20211
|
homepage.href: http://192.168.1.254:20211
|
||||||
@@ -3948,12 +3959,12 @@ services:
|
|||||||
homepage.group: Downloaders
|
homepage.group: Downloaders
|
||||||
homepage.name: qBittorrent
|
homepage.name: qBittorrent
|
||||||
homepage.href: https://qbit.${MY_TLD}
|
homepage.href: https://qbit.${MY_TLD}
|
||||||
homepage.icon: qBittorrent.svg
|
homepage.icon: qbittorrent.svg
|
||||||
homepage.description: qbittorrentvpn over VPN
|
homepage.description: Fast and stable torrent client
|
||||||
homepage.widget.type: qbittorrent
|
homepage.widget.type: qbittorrent
|
||||||
homepage.widget.url: http://qbittorrentvpn:8080
|
homepage.widget.url: http://qbittorrentvpn:8080
|
||||||
homepage.widget.user: admin
|
homepage.widget.user: admin
|
||||||
homepage.widget.password: "${DELUGEVPN_PASSWORD}"
|
homepage.widget.password: ${DELUGEVPN_PASSWORD}
|
||||||
swag: enable
|
swag: enable
|
||||||
swag_port: 8080
|
swag_port: 8080
|
||||||
swag_proto: http
|
swag_proto: http
|
||||||
@@ -4442,7 +4453,7 @@ services:
|
|||||||
cloudflare.tunnel.no_tls_verify: true
|
cloudflare.tunnel.no_tls_verify: true
|
||||||
homepage.group: Infrastructure/App Performance Monitoring
|
homepage.group: Infrastructure/App Performance Monitoring
|
||||||
homepage.name: Scrutiny
|
homepage.name: Scrutiny
|
||||||
homepage.href: http://192.168.1.254:8909
|
homepage.href: https://smartd.trez.wtf
|
||||||
homepage.icon: scrutiny.png
|
homepage.icon: scrutiny.png
|
||||||
homepage.description: WebUI for smartd S.M.A.R.T monitoring
|
homepage.description: WebUI for smartd S.M.A.R.T monitoring
|
||||||
homepage.widget.type: scrutiny
|
homepage.widget.type: scrutiny
|
||||||
@@ -4940,7 +4951,7 @@ services:
|
|||||||
TZ: America/New_York
|
TZ: America/New_York
|
||||||
URL: trez.wtf
|
URL: trez.wtf
|
||||||
VALIDATION: dns
|
VALIDATION: dns
|
||||||
CROWDSEC_API_KEY: ${CROWDSEC_API_KEY}
|
CROWDSEC_API_KEY: ${CROWDSEC_SWAG_API_KEY}
|
||||||
CROWDSEC_LAPI_URL: http://crowdsec:8080
|
CROWDSEC_LAPI_URL: http://crowdsec:8080
|
||||||
DOCKER_MODS: linuxserver/mods:universal-docker|linuxserver/mods:swag-auto-reload|linuxserver/mods:swag-auto-proxy|linuxserver/mods:swag-dashboard|linuxserver/mods:swag-maxmind|linuxserver/mods:universal-stdout-logs|linuxserver/mods:universal-package-install|ghcr.io/linuxserver/mods:swag-crowdsec #|linuxserver/mods:swag-auto-uptime-kuma
|
DOCKER_MODS: linuxserver/mods:universal-docker|linuxserver/mods:swag-auto-reload|linuxserver/mods:swag-auto-proxy|linuxserver/mods:swag-dashboard|linuxserver/mods:swag-maxmind|linuxserver/mods:universal-stdout-logs|linuxserver/mods:universal-package-install|ghcr.io/linuxserver/mods:swag-crowdsec #|linuxserver/mods:swag-auto-uptime-kuma
|
||||||
INSTALL_PACKAGES: nginx-mod-http-js
|
INSTALL_PACKAGES: nginx-mod-http-js
|
||||||
|
|||||||
Reference in New Issue
Block a user