Compare commits
16 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 4578bca759 | |||
| d8b53a06bb | |||
| f5a8215f41 | |||
| 77a0acd25e | |||
| dc478f02df | |||
| d5c7c5fe4b | |||
| 60fbdda423 | |||
| 1b4695d9dd | |||
| ae9517fb2e | |||
| 9f96c46eee | |||
| 8158225b5b | |||
| d0847f679b | |||
| fc98a18f34 | |||
| 5ca82e6611 | |||
| e6c843af02 | |||
| bdff96df68 |
@@ -0,0 +1,160 @@
|
||||
name: Gitea Branch PR & Ansible Configurations Deployment
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- '**'
|
||||
paths:
|
||||
- '**.j2'
|
||||
jobs:
|
||||
check-and-create-pr:
|
||||
if: github.ref != 'refs/heads/main'
|
||||
name: Check and Create PR
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout Code
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
fetch-depth: 1
|
||||
- name: Cache tea CLI
|
||||
id: cache-tea
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: /opt/hostedtoolcache/tea/0.9.2/x64
|
||||
key: tea-${{ runner.os }}-0.9.2
|
||||
- name: Install tea
|
||||
uses: supplypike/setup-bin@v4
|
||||
with:
|
||||
uri: 'https://gitea.com/gitea/tea/releases/download/v0.9.2/tea-0.9.2-linux-amd64'
|
||||
name: 'tea'
|
||||
version: '0.9.2'
|
||||
- name: Check if open PR exists
|
||||
id: check-opened-pr-step
|
||||
continue-on-error: true
|
||||
run: |
|
||||
tea login add --name gitea-rinoa --url "${{ secrets.RINOA_GITEA_URL }}" --user gitea-sonarqube-bot --password "${{ secrets.BOT_GITEA_PASSWORD }}" --token ${{ secrets.BOT_GITEA_TOKEN }}
|
||||
pr_exists=$(tea pr list --repo ${{ github.repository }} --state open --fields index,title,head | egrep ${{ github.ref_name }} | tail -1 | wc -l)
|
||||
echo "exists=$pr_exists" >> $GITHUB_OUTPUT
|
||||
- name: Create PR
|
||||
if: ${{ steps.check-opened-pr-step.outputs.exists == '0' }}
|
||||
run: |
|
||||
tea login default gitea-rinoa
|
||||
pr_index_old=$(tea pr ls --repo ${{ github.repository }} --state all --fields index,title,head --output csv | sed -e 's|"||g' | egrep '^[0-9]' | head -1 | awk -F"," '{print $1}')
|
||||
pr_index_new=$(expr ${pr_index_old} + 1)
|
||||
tea pr c -r ${{ github.repository }} -t "Automated PR for ${{ github.ref_name }} - #${pr_index_new}" -d "Automatically created PR for branch: ${{ github.ref_name }}" -a ${{ github.actor }} -L "Ansible Configs.j2"
|
||||
ansible-lint:
|
||||
name: Ansible Lint
|
||||
needs: [check-and-create-pr]
|
||||
runs-on: ubuntu-latest
|
||||
env:
|
||||
VAULT_ADDR: ${{ secrets.RINOA_VAULT_ADDR }}
|
||||
VAULT_TOKEN: ${{ secrets.VAULT_GITEA_TOKEN }}
|
||||
VAULT_NAMESPACE: ""
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
- name: Cache Ansible Galaxy Collections
|
||||
uses: actions/cache@v3
|
||||
with:
|
||||
path: ansible/collections
|
||||
key: ${{ runner.os }}-ansible-${{ hashFiles('./ansible/collections/requirements.yml') }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-ansible-
|
||||
- name: Install Ansible
|
||||
uses: alex-oleshkevich/setup-ansible@v1.0.1
|
||||
with:
|
||||
version: "11.0.0"
|
||||
- name: Install Vault
|
||||
uses: cpanato/vault-installer@main
|
||||
- name: Install hvac
|
||||
run: pip install hvac
|
||||
- name: Ansible Playbook Dry Run
|
||||
uses: dawidd6/action-ansible-playbook@v2
|
||||
with:
|
||||
directory: ansible/
|
||||
playbook: docker_config_deploy.yml
|
||||
key: ${{ secrets.RINOA_ANSIBLE_PRIVATE_KEY }}
|
||||
options: |
|
||||
--inventory inventory/hosts.yml
|
||||
--check
|
||||
requirements: collections/requirements.yml
|
||||
vault_password: ${{ secrets.ANSIBLE_VAULT_PASSWORD }}
|
||||
- name: Gotify Notification
|
||||
uses: eikendev/gotify-action@master
|
||||
with:
|
||||
gotify_api_base: '${{ secrets.RINOA_GOTIFY_URL }}'
|
||||
gotify_app_token: '${{ secrets.RINOA_RUNNER_GOTIFY_TOKEN }}'
|
||||
notification_title: 'GITEA: Ansible Config Dry Run @ Rinoa'
|
||||
notification_message: 'Ansible dry run completed successfully.'
|
||||
pr-merge:
|
||||
name: PR Merge
|
||||
needs: [regenerate-readme-modified-services]
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
- name: Install tea
|
||||
uses: supplypike/setup-bin@v4
|
||||
with:
|
||||
uri: 'https://gitea.com/gitea/tea/releases/download/v0.9.2/tea-0.9.2-linux-amd64'
|
||||
name: 'tea'
|
||||
version: '0.9.2'
|
||||
- name: PR Merge
|
||||
id: pr_merge
|
||||
run: |
|
||||
tea login add --name gitea-rinoa --url ${{ secrets.RINOA_GITEA_URL }} --user gitea-sonarqube-bot --password "${{ secrets.BOT_GITEA_PASSWORD }}" --token ${{ secrets.BOT_GITEA_TOKEN }}
|
||||
tea login default gitea-rinoa
|
||||
echo "Merging PR..."
|
||||
pr_index=$(tea pr ls --repo ${{ github.repository }} --state open --fields index,title,head,state --output csv | egrep ${{ github.ref_name }} | awk -F"," '{print $1}' | sed -e 's|"||g')
|
||||
tea pr m --repo ${{ github.repository }} --title "Auto Merge of PR ${pr_index} - ${{ github.ref_name }}" --message "Merged by ${{ github.actor }}" ${pr_index}
|
||||
echo "pr_index=${pr_index}" >> $GITHUB_OUTPUT
|
||||
- name: Gotify Notification
|
||||
uses: eikendev/gotify-action@master
|
||||
with:
|
||||
gotify_api_base: '${{ secrets.RINOA_GOTIFY_URL }}'
|
||||
gotify_app_token: '${{ secrets.RINOA_RUNNER_GOTIFY_TOKEN }}'
|
||||
notification_title: 'GITEA: PR Merge Successful'
|
||||
notification_message: 'PR #${{ steps.pr_merge.outputs.pr_index }} merged.'
|
||||
ansible-config-deploy:
|
||||
name: Deploy via Ansible & Docker Compose
|
||||
runs-on: ubuntu-latest
|
||||
needs: [pr-merge]
|
||||
env:
|
||||
VAULT_ADDR: ${{ secrets.RINOA_VAULT_ADDR }}
|
||||
VAULT_TOKEN: ${{ secrets.VAULT_GITEA_TOKEN }}
|
||||
DOCKER_HOST: tcp://dockerproxy:2375
|
||||
steps:
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v4
|
||||
with:
|
||||
ref: main
|
||||
- name: Cache Vault install
|
||||
id: cache-vault
|
||||
uses: actions/cache@v4
|
||||
with:
|
||||
path: /opt/hostedtoolcache/vault/1.18.0/x64
|
||||
key: vault-${{ runner.os }}-1.18.0
|
||||
- name: Install Ansible
|
||||
uses: alex-oleshkevich/setup-ansible@v1.0.1
|
||||
with:
|
||||
version: "11.0.0"
|
||||
- name: Install Vault
|
||||
uses: cpanato/vault-installer@main
|
||||
- name: Install hvac
|
||||
run: pip install hvac
|
||||
- name: Deploy Docker Configs via Ansible
|
||||
uses: dawidd6/action-ansible-playbook@v2
|
||||
with:
|
||||
directory: ansible/
|
||||
playbook: docker_config_deploy.yml
|
||||
key: ${{secrets.RINOA_ANSIBLE_PRIVATE_KEY}}
|
||||
options: |
|
||||
--inventory inventory/hosts.yml
|
||||
requirements: collections/requirements.yml
|
||||
vault_password: ${{ secrets.ANSIBLE_VAULT_PASSWORD }}
|
||||
- name: Gotify Notification
|
||||
uses: eikendev/gotify-action@master
|
||||
with:
|
||||
gotify_api_base: '${{ secrets.RINOA_GOTIFY_URL }}'
|
||||
gotify_app_token: '${{ secrets.RINOA_RUNNER_GOTIFY_TOKEN }}'
|
||||
notification_title: 'GITEA: Ansible Config Deployment @ Rinoa'
|
||||
notification_message: 'Deployment completed successfully.'
|
||||
@@ -1,14 +1,13 @@
|
||||
name: Gitea Branch PR, Cloudflare DNS, README generation, & Ansible/Docker Deployment
|
||||
on:
|
||||
push:
|
||||
branches-ignore:
|
||||
- main
|
||||
branches:
|
||||
- '**'
|
||||
paths:
|
||||
- '**.yaml'
|
||||
- '**.yml'
|
||||
- '**.j2'
|
||||
- 'docker-compose.yml'
|
||||
jobs:
|
||||
check-and-create-pr:
|
||||
if: github.ref != 'refs/heads/main'
|
||||
name: Check and Create PR
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
@@ -41,7 +40,7 @@ jobs:
|
||||
tea login default gitea-rinoa
|
||||
pr_index_old=$(tea pr ls --repo ${{ github.repository }} --state all --fields index,title,head --output csv | sed -e 's|"||g' | egrep '^[0-9]' | head -1 | awk -F"," '{print $1}')
|
||||
pr_index_new=$(expr ${pr_index_old} + 1)
|
||||
tea pr c -r ${{ github.repository }} -t "Automated PR for ${{ github.ref_name }} - #${pr_index_new}" -d "Automatically created PR for branch: ${{ github.ref_name }}" -a ${{ github.actor }}
|
||||
tea pr c -r ${{ github.repository }} -t "Automated PR for ${{ github.ref_name }} - #${pr_index_new}" -d "Automatically created PR for branch: ${{ github.ref_name }}" -a ${{ github.actor }} -L "Docker Compose, Ansible Configs.j2"
|
||||
docker-compose-ansible-lints:
|
||||
name: Docker Compose & Ansible Lints
|
||||
needs: [check-and-create-pr]
|
||||
|
||||
@@ -22,9 +22,9 @@ provider: duckduckgo
|
||||
|
||||
layout:
|
||||
System Administration:
|
||||
style: row
|
||||
columns: 4
|
||||
# fiveColumns: true
|
||||
# style: row
|
||||
# columns: 4
|
||||
fiveColumns: true
|
||||
Infrastructure/App Performance Monitoring:
|
||||
style: row
|
||||
columns: 3
|
||||
@@ -45,7 +45,7 @@ layout:
|
||||
row: 5
|
||||
Personal Services:
|
||||
style: row
|
||||
columns: 4
|
||||
columns: 3
|
||||
Professional Services:
|
||||
style: row
|
||||
columns: 3
|
||||
|
||||
+89
-337
@@ -61,47 +61,12 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "3001"
|
||||
target: 3000
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "446"
|
||||
target: 443
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8008"
|
||||
target: 80
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "853"
|
||||
target: 853
|
||||
- host_ip: 0.0.0.0
|
||||
mode: ingress
|
||||
protocol: tcp
|
||||
published: "53"
|
||||
target: 53
|
||||
- host_ip: 0.0.0.0
|
||||
mode: ingress
|
||||
protocol: udp
|
||||
published: "53"
|
||||
target: 53
|
||||
- host_ip: 0.0.0.0
|
||||
mode: ingress
|
||||
protocol: udp
|
||||
published: "67"
|
||||
target: 67
|
||||
- host_ip: 0.0.0.0
|
||||
mode: ingress
|
||||
protocol: tcp
|
||||
published: "688"
|
||||
target: 68
|
||||
- host_ip: 0.0.0.0
|
||||
mode: ingress
|
||||
protocol: udp
|
||||
published: "688"
|
||||
target: 68
|
||||
- 3001:3000
|
||||
- 446:443
|
||||
- 8008:80
|
||||
- 853:853
|
||||
- 67:67
|
||||
- 688:68
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- bind:
|
||||
@@ -158,10 +123,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "13378"
|
||||
target: 80
|
||||
- 13378:80
|
||||
restart: unless-stopped
|
||||
user: 1000:1000
|
||||
volumes:
|
||||
@@ -274,10 +236,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "6767"
|
||||
target: 6767
|
||||
- 6767:6767
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- bind:
|
||||
@@ -338,12 +297,7 @@ services:
|
||||
network_mode: host
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- /dev/sda:/extra-filesystems/sda:ro
|
||||
- /dev/sdb:/extra-filesystems/sdb:ro
|
||||
- /dev/sdc:/extra-filesystems/sdc:ro
|
||||
- /dev/sdd:/extra-filesystems/sdd:ro
|
||||
- /dev/sde:/extra-filesystems/sde:ro
|
||||
- /dev/sdf:/extra-filesystems/sdf:ro
|
||||
- /rinoa-storage:/extra-filesystems/rinoa-storage:ro
|
||||
- /dev/nvme0n1:/extra-filesystems/nvme0n1:ro
|
||||
bitmagnet:
|
||||
command:
|
||||
@@ -445,14 +399,8 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "3012"
|
||||
target: 3012
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8013"
|
||||
target: 80
|
||||
- 3012:3012
|
||||
- 8013:80
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- bind:
|
||||
@@ -680,10 +628,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8101"
|
||||
target: 8080
|
||||
- 8101:8080
|
||||
restart: unless-stopped
|
||||
security_opt:
|
||||
- no-new-privileges=true
|
||||
@@ -748,10 +693,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8908"
|
||||
target: 3000
|
||||
- 8908:3000
|
||||
restart: always
|
||||
volumes:
|
||||
- source: crowdsec-db
|
||||
@@ -783,10 +725,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "5800"
|
||||
target: 5800
|
||||
- 5800:5800
|
||||
privileged: true
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
@@ -819,7 +758,7 @@ services:
|
||||
environment:
|
||||
RAILS_ENV: development
|
||||
REDIS_URL: redis://redis:6379/
|
||||
DATABASE_HOST: dawarich-db
|
||||
DATABASE_HOST: dawarich-pg-db
|
||||
DATABASE_USERNAME: dawarich
|
||||
DATABASE_PASSWORD: ${DAWARICH_PG_PASSWORD}
|
||||
DATABASE_NAME: dawarich
|
||||
@@ -886,7 +825,7 @@ services:
|
||||
environment:
|
||||
RAILS_ENV: development
|
||||
REDIS_URL: redis://redis:6379/
|
||||
DATABASE_HOST: dawarich-db
|
||||
DATABASE_HOST: dawarich-pg-db
|
||||
DATABASE_USERNAME: dawarich
|
||||
DATABASE_PASSWORD: ${DAWARICH_PG_PASSWORD}
|
||||
DATABASE_NAME: dawarich
|
||||
@@ -926,7 +865,7 @@ services:
|
||||
volumes:
|
||||
- dawarich_public:/var/app/public
|
||||
- dawarich_watched:/var/app/tmp/imports/watched
|
||||
- ${DOCKER_VOLUME_CONFIG}/dawarich/sideqik-entrypoint.sh:/usr/local/bin/sidekiq-entrypoint.sh
|
||||
- ${DOCKER_VOLUME_CONFIG}/dawarich/sidekiq-entrypoint.sh:/usr/local/bin/sidekiq-entrypoint.sh
|
||||
dbgate:
|
||||
container_name: dbgate
|
||||
environment:
|
||||
@@ -1105,26 +1044,11 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "58846"
|
||||
target: 58846
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "58946"
|
||||
target: 58946
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "6881"
|
||||
target: 6881
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8112"
|
||||
target: 8112
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8118"
|
||||
target: 8118
|
||||
- 58846:58846
|
||||
- 58946:58946
|
||||
- 6881:6881
|
||||
- 8112:8112
|
||||
- 8118:8118
|
||||
privileged: true
|
||||
restart: unless-stopped
|
||||
sysctls:
|
||||
@@ -1176,10 +1100,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "2375"
|
||||
target: 2375
|
||||
- 2375:2375
|
||||
privileged: true
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
@@ -1206,10 +1127,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "3002"
|
||||
target: 3000
|
||||
- 3002:3000
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- source: ${DOCKER_VOLUME_CONFIG}/docuseal
|
||||
@@ -1238,11 +1156,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8282"
|
||||
target: 8200
|
||||
- ${DUPLICATI_PORT_8200}:8200
|
||||
- 8282:8200
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- bind:
|
||||
@@ -1289,10 +1203,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8105"
|
||||
target: 8080
|
||||
- 8105:8080
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- source: fastenhealth-cache
|
||||
@@ -1318,10 +1229,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8191"
|
||||
target: 8191
|
||||
- 8191:8191
|
||||
restart: unless-stopped
|
||||
sysctls:
|
||||
- net.ipv6.conf.all.disable_ipv6=1
|
||||
@@ -1415,14 +1323,8 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "3013"
|
||||
target: 3000
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "222"
|
||||
target: 22
|
||||
- 3013:3000
|
||||
- 222:22
|
||||
restart: always
|
||||
volumes:
|
||||
- source: ${DOCKER_VOLUME_CONFIG}/gitea
|
||||
@@ -1548,30 +1450,11 @@ services:
|
||||
ipv4_address: 192.168.55.7
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "3333"
|
||||
target: 3333
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "3334"
|
||||
target: 3334
|
||||
- mode: ingress
|
||||
protocol: udp
|
||||
published: "3334"
|
||||
target: 3334
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "5030"
|
||||
target: 5030
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "5031"
|
||||
target: 5031
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "50300"
|
||||
target: 50300
|
||||
- 3333:3333
|
||||
- 3334:3334
|
||||
- 5030:5030
|
||||
- 5031:5031
|
||||
- 50300:50300
|
||||
restart: always
|
||||
gotify:
|
||||
container_name: gotify
|
||||
@@ -1613,10 +1496,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8097"
|
||||
target: 80
|
||||
- 8097:80
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- source: ${DOCKER_VOLUME_CONFIG}/gotify
|
||||
@@ -1657,10 +1537,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "3004"
|
||||
target: 3000
|
||||
- 3004:3000
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- source: ${DOCKER_VOLUME_CONFIG}/homepage
|
||||
@@ -1715,10 +1592,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8006"
|
||||
target: 80
|
||||
- 8006:80
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- source: hortusfox_app_images
|
||||
@@ -1760,10 +1634,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "1313"
|
||||
target: 1313
|
||||
- 1313:1313
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- source: ${DOCKER_VOLUME_CONFIG}/hugo/
|
||||
@@ -1972,10 +1843,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "3007"
|
||||
target: 3000
|
||||
- 3007:3000
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- ${DOCKER_VOLUME_CONFIG}/invidious/config.yml:/config.yml
|
||||
@@ -2065,10 +1933,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8003"
|
||||
target: 8003
|
||||
- 8003:8003
|
||||
restart: always
|
||||
volumes:
|
||||
- invoice-ninja_cache:/var/www/html/bootstrap/cache
|
||||
@@ -2124,10 +1989,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8005"
|
||||
target: 80
|
||||
- 8005:80
|
||||
restart: always
|
||||
volumes:
|
||||
- ${DOCKER_VOLUME_CONFIG}/invoice-ninja/nginx:/etc/nginx/conf.d:ro
|
||||
@@ -2150,10 +2012,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8104"
|
||||
target: 80
|
||||
- 8104:80
|
||||
restart: unless-stopped
|
||||
jellyfin:
|
||||
container_name: jellyfin
|
||||
@@ -2334,7 +2193,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- 127.0.0.1:${JICOFO_REST_PORT:-8889}:8888
|
||||
- 8889:8888
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- bind:
|
||||
@@ -2395,7 +2254,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- ${JIGASI_PORT_MIN:-20000}-${JIGASI_PORT_MAX:-20050}:${JIGASI_PORT_MIN:-20000}-${JIGASI_PORT_MAX:-20050}/udp
|
||||
- 20000-20050:20000-20050/udp
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- bind:
|
||||
@@ -2454,8 +2313,8 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- ${JVB_PORT:-10000}:${JVB_PORT:-10000}/udp
|
||||
- 127.0.0.1:${JVB_COLIBRI_PORT:-8091}:8080
|
||||
- 10000:10000/udp
|
||||
- 8091:8080
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- bind:
|
||||
@@ -2554,7 +2413,7 @@ services:
|
||||
XMPP_RECORDER_DOMAIN:
|
||||
XMPP_PORT:
|
||||
expose:
|
||||
- ${XMPP_PORT:-5222}
|
||||
- 5222
|
||||
- "5347"
|
||||
- "5280"
|
||||
image: jitsi/prosody:${JITSI_IMAGE_VERSION:-stable}
|
||||
@@ -2735,8 +2594,8 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- ${JITSI__HTTP_PORT}:80
|
||||
- ${JITSI__HTTPS_PORT}:443
|
||||
- 8001:80
|
||||
- 8002:443
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- bind:
|
||||
@@ -2810,10 +2669,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "22300"
|
||||
target: 22300
|
||||
- 22300:22300
|
||||
restart: unless-stopped
|
||||
libretranslate:
|
||||
container_name: libretranslate
|
||||
@@ -2863,10 +2719,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8686"
|
||||
target: 8686
|
||||
- 8686:8686
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- bind:
|
||||
@@ -2966,10 +2819,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "17170"
|
||||
target: 17170
|
||||
- 17170:17170
|
||||
restart: always
|
||||
volumes:
|
||||
- source: ${DOCKER_VOLUME_CONFIG}/lldap
|
||||
@@ -3008,10 +2858,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "42010"
|
||||
target: 42010
|
||||
- 42010:42010
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- source: ${DOCKER_VOLUME_CONFIG}/maloja/config
|
||||
@@ -3041,10 +2888,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "3306"
|
||||
target: 3306
|
||||
- 3306:3306
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- bind:
|
||||
@@ -3170,14 +3014,8 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "9001"
|
||||
target: 9000
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "9092"
|
||||
target: 9090
|
||||
- 9001:9000
|
||||
- 9092:9090
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- source: ${DOCKER_VOLUME_CONFIG}/minio/data
|
||||
@@ -3233,10 +3071,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "9078"
|
||||
target: 9078
|
||||
- 9078:9078
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- source: ${DOCKER_VOLUME_CONFIG}/multi-scrobbler
|
||||
@@ -3308,10 +3143,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "4533"
|
||||
target: 4533
|
||||
- 4533:4533
|
||||
restart: unless-stopped
|
||||
user: 1000:1000
|
||||
volumes:
|
||||
@@ -3486,7 +3318,7 @@ services:
|
||||
homepage.icon: nextcloud.svg
|
||||
homepage.description: Private Cloud
|
||||
homepage.widget.type: nextcloud
|
||||
homepage.widget.url: https://cloud.trez.wtf/
|
||||
homepage.widget.url: http://nextcloud-aio-apache:11000
|
||||
homepage.widget.key: ${NEXTCLOUD_HOMEPAGE_TOKEN}
|
||||
swag: enable
|
||||
swag_port: 11000
|
||||
@@ -3531,10 +3363,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "3579"
|
||||
target: 3579
|
||||
- 3579:3579
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- bind:
|
||||
@@ -3620,10 +3449,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8004"
|
||||
target: 8000
|
||||
- 8004:8000
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- source: paperless-ngx-data
|
||||
@@ -3805,10 +3631,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8107"
|
||||
target: 8000
|
||||
- 8107:8000
|
||||
restart: always
|
||||
plausible_db:
|
||||
container_name: plausible-db
|
||||
@@ -3905,10 +3728,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "25"
|
||||
target: 25
|
||||
- 25:25
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- source: ${DOCKER_VOLUME_CONFIG}/postal
|
||||
@@ -3936,10 +3756,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "5001"
|
||||
target: 5000
|
||||
- 5001:5000
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- source: ${DOCKER_VOLUME_CONFIG}/postal
|
||||
@@ -3988,10 +3805,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "9696"
|
||||
target: 9696
|
||||
- 9696:9696
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- bind:
|
||||
@@ -4086,10 +3900,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "7878"
|
||||
target: 7878
|
||||
- 7878:7878
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- bind:
|
||||
@@ -4157,10 +3968,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "3011"
|
||||
target: 3000
|
||||
- 3011:3000
|
||||
restart: unless-stopped
|
||||
reactive-resume-pg:
|
||||
container_name: reactive-resume-pg
|
||||
@@ -4200,10 +4008,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8787"
|
||||
target: 8787
|
||||
- 8787:8787
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- bind:
|
||||
@@ -4287,10 +4092,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8103"
|
||||
target: 8080
|
||||
- 8103:8080
|
||||
read_only: true
|
||||
restart: always
|
||||
security_opt:
|
||||
@@ -4371,18 +4173,9 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8080"
|
||||
target: 8080
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8090"
|
||||
target: 8090
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8119"
|
||||
target: 8118
|
||||
- 8080:8080
|
||||
- 8090:8090
|
||||
- 8119:8118
|
||||
privileged: true
|
||||
restart: unless-stopped
|
||||
sysctls:
|
||||
@@ -4473,14 +4266,8 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8909"
|
||||
target: 8080
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8910"
|
||||
target: 8086
|
||||
- 8909:8080
|
||||
- 8910:8086
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- bind:
|
||||
@@ -4530,10 +4317,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8095"
|
||||
target: 8080
|
||||
- 8095:8080
|
||||
privileged: true
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
@@ -4622,10 +4406,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8989"
|
||||
target: 8989
|
||||
- 8989:8989
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- bind:
|
||||
@@ -4870,18 +4651,9 @@ services:
|
||||
- default
|
||||
- nextcloud-aio
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "443"
|
||||
target: 443
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "80"
|
||||
target: 80
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "81"
|
||||
target: 81
|
||||
- 443:443
|
||||
- 80:80
|
||||
- 81:81
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- bind:
|
||||
@@ -4940,10 +4712,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8106"
|
||||
target: 8080
|
||||
- 8106:8080
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- source: ${DOCKER_VOLUME_CONFIG}/tandoor/static
|
||||
@@ -4997,10 +4766,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8911"
|
||||
target: 8888
|
||||
- 8911:8888
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- source: ${DOCKER_VOLUME_CONFIG}/unmanic
|
||||
@@ -5043,10 +4809,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "3003"
|
||||
target: 3001
|
||||
- 3003:3001
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- bind:
|
||||
@@ -5153,9 +4916,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
target: 80
|
||||
- 32768:80
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- source: ${DOCKER_VOLUME_CONFIG}/wallabag/images
|
||||
@@ -5182,10 +4943,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8283"
|
||||
target: 80
|
||||
- 8283:80
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- wallos-db:/var/www/html/db
|
||||
@@ -5260,10 +5018,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "3010"
|
||||
target: 3000
|
||||
- 3010:3000
|
||||
restart: unless-stopped
|
||||
your_spotify:
|
||||
container_name: your_spotify
|
||||
@@ -5294,8 +5049,8 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- ${YOUR_SPOTIFY_PORT_80}:80
|
||||
- ${YOUR_SPOTIFY_PORT_443}:443
|
||||
- 8088:80
|
||||
- 8098:443
|
||||
restart: always
|
||||
youtubedl:
|
||||
container_name: youtubedl
|
||||
@@ -5322,10 +5077,7 @@ services:
|
||||
networks:
|
||||
default: null
|
||||
ports:
|
||||
- mode: ingress
|
||||
protocol: tcp
|
||||
published: "8089"
|
||||
target: 8080
|
||||
- 8089:8080
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
- bind:
|
||||
@@ -5386,7 +5138,7 @@ services:
|
||||
start_period: '20s'
|
||||
image: postgres:16-alpine
|
||||
restart: unless-stopped
|
||||
volumes:
|
||||
volumes:
|
||||
- zitadel-pg-db:/var/lib/postgresql/data
|
||||
volumes:
|
||||
authelia-pg-db:
|
||||
|
||||
Reference in New Issue
Block a user