Compare commits

..

1 Commits

Author SHA1 Message Date
Trez.One ab4d6c2242 Typo fix for Soularr.
Gitea Branch PR, SonarQube Analyze, and Merge Workflow / Check and Create PR (push) Has been cancelled
Gitea Branch PR, SonarQube Analyze, and Merge Workflow / Docker Compose Test (push) Has been cancelled
Gitea Branch PR, SonarQube Analyze, and Merge Workflow / Cloudflare DNS Setup (push) Has been cancelled
Gitea Branch PR, SonarQube Analyze, and Merge Workflow / PR Merge (push) Has been cancelled
2025-01-07 11:54:55 -05:00
3 changed files with 613 additions and 288 deletions
+27 -113
View File
@@ -14,49 +14,36 @@ jobs:
- name: Checkout Code
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: Check if PR exists & Create
- name: PR list
id: list-prs
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 "Checking if PR exists for ${{ github.ref_name }}..."
tea pr ls --repo ${{ github.repository }} --state all --fields index,title,head,state --output csv | egrep '${{ github.ref_name }}' | head -1 | egrep -q 'open'
if [ $? -eq 0 ]; then
echo "An open PR exists, skipping creation..."
elif [ $? -eq 1 ]; then
echo "No open PRs, creating one..."
tea pr c -r "${{ github.repository }}" -t "Automated PR for ${{ github.ref_name }}" -d "Automated PR for ${{ github.ref_name }}"
fi
pr_check=$(curl ${{ vars.RINOA_GITEA_URL }}/api/v1/repos/${{ github.repository }}/pulls/main/${{ github.ref_name }} \
-X 'GET' \
-H 'Accept: application/json' \
-H 'Authorization: token ${{ secrets.BOT_GITEA_TOKEN }}' \
-sS | jq '{index: .number, state: .state}')
pr_state=$(echo ${pr_check} | jq -r '.state')
- name: Create PR
if: steps.list-prs.outputs.pr_state != 'open'
uses: arifer612/Gitea-PR-action@v1.2.0
with:
url: ${{ gitea.server_url }}
token: ${{ secrets.BOT_GITEA_TOKEN }}
pr-label: 'auto-deploy-pr'
docker-compose-test:
name: Docker Compose Test
needs: [check-and-create-pr]
runs-on: ubuntu-latest
env:
VAULT_ADDR: ${{ secrets.RINOA_VAULT_ADDR }}
VAULT_TOKEN: ${{ secrets.VAULT_GITEA_TOKEN }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install jq
uses: dcarbone/install-jq-action@v3.0.1
- name: Install Vault
uses: cpanato/vault-installer@main
with:
vault-release: '1.18.3'
- name: Generate .env file for linting
- name: Generate ephemeral .env compose file
id: generate-env-file-pr
run: |
vault kv get -format=json rinoa-docker/env | jq -r '.data.data' | jq -r 'keys[] as $k | "\($k)='\''\(.[$k])'\''"' > .env
echo "${{ secrets.RINOA_ENV }}" > .env
- name: Docker Compose Lint
uses: yu-ichiro/spin-up-docker-compose-action@v1
@@ -113,7 +100,6 @@ jobs:
- name: Create Subdomains
if: steps.compare-subdomains.outputs.output != ''
continue-on-error: true
env:
CF_API_TOKEN: ${{ secrets.CF_API_TOKEN }}
CF_API_EMAIL: ${{ secrets.CF_API_EMAIL }}
@@ -123,92 +109,20 @@ jobs:
flarectl dns create --zone "trez.wtf" --name "${subdomain}" --type=CNAME --content "trez.wtf"
done
regenerate-readme:
name: Update README
runs-on: ubuntu-latest
needs: [cloudflare-dns-setup]
outputs:
pr-pushed: ${{ steps.commit-readme.outputs.pushed }}
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Install yq
uses: dcarbone/install-yq-action@v1
- name: Generate service list
run: |
yq '.services | to_entries | map({"service": .key, "image": .value.image})' docker-compose.yml > services.yml
- name: Generate Markdown Table
uses: gazab/create-markdown-table@v1
id: service-table
with:
file: ./services.yml
- name: Regenerate README
run: |
echo "# List of Services" > README.md
echo -e "\n\n" >> README.md
echo "${{ steps.service-table.outputs.table }}" >> README.md
- name: Add/Commit README.md
id: commit-readme
uses: EndBug/add-and-commit@v9
with:
message: "chore: Update README"
add: "README.md"
pr-merge:
merge-pr:
name: PR Merge
needs: [regenerate-readme]
runs-on: ubuntu-latest
if: ${{ always() }}
needs: [cloudflare-dns-setup]
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
- name: Tea CLI Setup & 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
curl -sSL https://dl.gitea.com/tea/main/tea-main-linux-amd64 -o /usr/local/bin/tea
chmod +x /usr/local/bin/tea
echo "Merging PR..."
tea login add --name gitea-rinoa --url ${{ vars.RINOA_GITEA_URL }} --user gitea-sonarqube-bot --password "${{ secrets.BOT_GITEA_PASSWORD }}" --token ${{ secrets.BOT_GITEA_TOKEN }}
pr_index=$(tea pr ls --repo ${{ github.repository }} --state open --fields index,title,head,state --output csv | egrep ${{ gitea.ref_name }} | awk -F, '{print $1}' | sed -e 's|"||g')
tea pr m --repo ${{ github.repository }} --title "Auto Merge of PR #${pr_index} - ${{ gitea.ref_name }}" --message "Merged by ${{ gitea.actor }}" --output table ${pr_index}
docker-compose-deploy:
name: Deploy via 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: Install Vault
uses: cpanato/vault-installer@main
- name: Generate .env file for deployment
run: |
vault kv get -format=json rinoa-docker/env | jq -r '.data.data' | jq -r 'keys[] as $k | "\($k)='\''\(.[$k])'\''"' > .env
- name: Docker Compose Deployment
uses: keatonLiu/docker-compose-remote-action@v1.2
with:
ssh_user: gitea-deploy
ssh_host: 192.168.1.254
ssh_host_public_key: ${{ secrets.RINOA_GITEA_PUBLIC_SSH_KEY }}
ssh_private_key: ${{ secrets.RINOA_GITEA_PRIVATE_SSH_KEY }}
docker_compose_file: docker-compose.yml
tea pr m --repo ${{ github.repository }} --title "${{ github.ref_name }} Auto Merge" --message "Merged by ${{ gitea.actor }}" --output table ${pr_index}
+585 -154
View File
@@ -1,157 +1,588 @@
# List of Services
```json
~> yq '.services | to_entries | map({service: .key, image: .value.image})' docker-compose.yml
| Service | Image |
| --- | --- |
| actual_server | docker.io/actualbudget/actual-server:latest |
| adguard | adguard/adguardhome:latest |
| apprise | lscr.io/linuxserver/apprise-api:latest |
| audiobookshelf | ghcr.io/advplyr/audiobookshelf:latest |
| authelia | authelia/authelia:master |
| authelia-pg | postgres:16-alpine |
| bazarr | lscr.io/linuxserver/bazarr:latest |
| bitmagnet | ghcr.io/bitmagnet-io/bitmagnet:latest |
| bitmagnet-pg-db | postgres:17-alpine |
| bitwarden | vaultwarden/server:latest |
| bluesky-pds | ghcr.io/bluesky-social/pds:latest |
| browserless | ghcr.io/browserless/chromium:latest |
| bunkerweb | bunkerity/bunkerweb:latest |
| bunkerweb-scheduler | bunkerity/bunkerweb-scheduler:latest |
| bunkerweb-ui | bunkerity/bunkerweb-ui:latest |
| castopod | castopod/castopod:latest |
| cloudflared | cloudflare/cloudflared:latest |
| cloudflareddns | ghcr.io/hotio/cloudflareddns:latest |
| crowdsec | crowdsecurity/crowdsec:latest |
| crowdsec-dashboard | metabase/metabase |
| czkawka | jlesage/czkawka |
| dagu-scheduler | ghcr.io/dagu-org/dagu:latest |
| dagu-server | ghcr.io/dagu-org/dagu:latest |
| delugevpn | ghcr.io/binhex/arch-delugevpn:latest |
| docker-socket-proxy | ghcr.io/tecnativa/docker-socket-proxy:latest |
| docuseal | docuseal/docuseal:latest |
| duplicati | lscr.io/linuxserver/duplicati:latest |
| fastenhealth | ghcr.io/fastenhealth/fasten-onprem:main |
| flaresolverr | ghcr.io/flaresolverr/flaresolverr:latest |
| ghost | ghost:latest |
| gitea | gitea/gitea:1.22.6 |
| gitea-db | postgres:14 |
| gitea-opengist | ghcr.io/thomiceli/opengist:latest |
| gitea-runner | gitea/act_runner:latest |
| gitea-sonarqube-bot | justusbunsi/gitea-sonarqube-bot:v0.4.0 |
| gluetun | qmcgaw/gluetun:latest |
| gotify | gotify/server |
| grafana | grafana/grafana-enterprise:latest |
| grafana-alloy | grafana/alloy:latest |
| grafana-loki | grafana/loki:latest |
| grafana-mimir | grafana/mimir:latest |
| grafana-mimir-memcached | memcached |
| grafana-pyroscope | grafana/pyroscope:latest |
| grafana-tempo | grafana/tempo:latest |
| guacamole | flcontainers/guacamole:latest |
| homepage | ghcr.io/gethomepage/homepage:latest |
| hortusfox | ghcr.io/danielbrendel/hortusfox-web:latest |
| hugo | hugomods/hugo:exts |
| invidious | quay.io/invidious/invidious:latest |
| invidious-db | docker.io/library/postgres:14 |
| invoice_ninja | invoiceninja/invoiceninja:5 |
| invoice_ninja_proxy | nginx |
| it-tools | ghcr.io/corentinth/it-tools:latest |
| jellyfin | jellyfin/jellyfin |
| jitsi-etherpad | etherpad/etherpad:1.8.6 |
| jitsi-jibri | jitsi/jibri:stable |
| jitsi-jicofo | jitsi/jicofo:stable |
| jitsi-jigasi | jitsi/jigasi:stable |
| jitsi-jvb | jitsi/jvb:stable |
| jitsi-prosody | jitsi/prosody:stable |
| jitsi-web | jitsi/web:stable |
| joplin-db | postgres:17-alpine |
| joplin | joplin/server:latest |
| komodo-core | ghcr.io/mbecker20/komodo:latest |
| komodo-ferretdb | ghcr.io/ferretdb/ferretdb |
| komodo-periphery | ghcr.io/mbecker20/periphery:latest |
| komodo-pg-db | postgres:17-alpine |
| librespeed | lscr.io/linuxserver/librespeed:latest |
| lidarr | lscr.io/linuxserver/lidarr:latest |
| lidify | thewicklowwolf/lidify:latest |
| lldap | lldap/lldap:stable |
| localai | localai/localai:latest-aio-cpu |
| maloja | krateng/maloja:latest |
| mariadb | ghcr.io/linuxserver/mariadb |
| mastodon-pg-db | postgres:17-alpine |
| minio | minio/minio |
| mongodb | mongo:7.0 |
| multi-scrobbler | foxxmd/multi-scrobbler |
| n8n | docker.n8n.io/n8nio/n8n |
| navidrome | deluan/navidrome:latest |
| netbox | lscr.io/linuxserver/netbox:latest |
| netbox-db | postgres:17-alpine |
| nextcloud | lscr.io/linuxserver/nextcloud:latest |
| ollama | ollama/ollama |
| ombi | lscr.io/linuxserver/ombi:latest |
| paperless-ngx | ghcr.io/paperless-ngx/paperless-ngx:latest |
| plausible | ghcr.io/plausible/community-edition:v2.1.0 |
| plausible_db | postgres:16-alpine |
| plausible_events_db | clickhouse/clickhouse-server:24.3.3.102-alpine |
| postal-smtp | ghcr.io/postalserver/postal:latest |
| postal-web | ghcr.io/postalserver/postal:latest |
| postal-worker | ghcr.io/postalserver/postal:latest |
| prowlarr | lscr.io/linuxserver/prowlarr:latest |
| radarec | thewicklowwolf/radarec:latest |
| radarr | lscr.io/linuxserver/radarr:latest |
| reactive-resume | amruthpillai/reactive-resume:latest |
| reactive-resume-pg | postgres:16-alpine |
| readarr | lscr.io/linuxserver/readarr:develop |
| redis | redis:alpine |
| redlib | quay.io/redlib/redlib:latest |
| sabnzbdvpn | ghcr.io/binhex/arch-sabnzbdvpn:latest |
| scraperr | jpyles0524/scraperr:latest |
| scraperr-api | jpyles0524/scraperr_api:latest |
| scrutiny | ghcr.io/analogj/scrutiny:master-omnibus |
| searxng | searxng/searxng:latest |
| semaphore | semaphoreui/semaphore:v2.10.32 |
| slurpit-portal | slurpit/portal:latest |
| slurpit-scanner | slurpit/scanner:latest |
| slurpit-scraper | slurpit/scraper:latest |
| slurpit-warehouse | slurpit/warehouse:latest |
| sonarqube | mc1arke/sonarqube-with-community-branch-plugin:lts |
| sonarqube-pg-db | postgres:17-alpine |
| sonarr | lscr.io/linuxserver/sonarr:latest |
| sonashow | thewicklowwolf/sonashow:latest |
| soularr | mrusse08/soularr:latest |
| soulseek | slskd/slskd |
| spotisub | blastbeng/spotisub:latest |
| swag | lscr.io/linuxserver/swag:latest |
| synapse | docker.io/matrixdotorg/synapse:latest |
| synapse-db | postgres:16-alpine |
| tandoor | vabene1111/recipes |
| tandoor-pg | postgres:16-alpine |
| traccar | traccar/traccar:latest |
| traccar-pg | postgres:16-alpine |
| unmanic | josh5/unmanic:latest |
| uptimekuma | louislam/uptime-kuma:latest |
| vault | hashicorp/vault:latest |
| wallabag | wallabag/wallabag |
| wallos | bellamy/wallos:latest |
| watchtower | ghcr.io/containrrr/watchtower:latest |
| wazuh.agent | opennix/wazuh-agent:latest |
| wazuh.dashboard | wazuh/wazuh-dashboard: |
| wazuh.indexer | wazuh/wazuh-indexer: |
| wazuh.manager | wazuh/wazuh-manager: |
| web-check | lissy93/web-check |
| whodb | clidey/whodb |
| your_spotify | lscr.io/linuxserver/your_spotify:latest |
| youtubedl | nbr23/youtube-dl-server:latest |
| zammad-backup | postgres: |
| zammad-elasticsearch | bitnami/elasticsearch: |
| zammad-init | : |
| zammad-memcached | memcached: |
| zammad-nginx | : |
| zammad-postgresql | postgres: |
| zammad-railsserver | : |
| zammad-redis | redis: |
| zammad-scheduler | : |
| zammad-websocket | : |
| zitadel | ghcr.io/zitadel/zitadel:latest |
| zitadel-pg-db | postgres:16-alpine |
[
{
"service": "actual_server",
"image": "docker.io/actualbudget/actual-server:latest"
},
{
"service": "adguard",
"image": "adguard/adguardhome:latest"
},
{
"service": "apprise",
"image": "lscr.io/linuxserver/apprise-api:latest"
},
{
"service": "audiobookshelf",
"image": "ghcr.io/advplyr/audiobookshelf:latest"
},
{
"service": "authelia",
"image": "authelia/authelia:master"
},
{
"service": "authelia-pg",
"image": "postgres:16-alpine"
},
{
"service": "bazarr",
"image": "lscr.io/linuxserver/bazarr:latest"
},
{
"service": "bitmagnet",
"image": "ghcr.io/bitmagnet-io/bitmagnet:latest"
},
{
"service": "bitmagnet-pg-db",
"image": "postgres:17-alpine"
},
{
"service": "bitwarden",
"image": "vaultwarden/server:latest"
},
{
"service": "bluesky-pds",
"image": "ghcr.io/bluesky-social/pds:latest"
},
{
"service": "browserless",
"image": "ghcr.io/browserless/chromium:latest"
},
{
"service": "castopod",
"image": "castopod/castopod:latest"
},
{
"service": "cloudflared",
"image": "cloudflare/cloudflared:latest"
},
{
"service": "cloudflareddns",
"image": "ghcr.io/hotio/cloudflareddns:latest"
},
{
"service": "crowdsec",
"image": "crowdsecurity/crowdsec:latest"
},
{
"service": "crowdsec-dashboard",
"image": "metabase/metabase"
},
{
"service": "czkawka",
"image": "jlesage/czkawka"
},
{
"service": "dagu-scheduler",
"image": "ghcr.io/dagu-org/dagu:latest"
},
{
"service": "dagu-server",
"image": "ghcr.io/dagu-org/dagu:latest"
},
{
"service": "delugevpn",
"image": "ghcr.io/binhex/arch-delugevpn:latest"
},
{
"service": "docker-socket-proxy",
"image": "ghcr.io/tecnativa/docker-socket-proxy:latest"
},
{
"service": "docuseal",
"image": "docuseal/docuseal:latest"
},
{
"service": "duplicati",
"image": "lscr.io/linuxserver/duplicati:latest"
},
{
"service": "fastenhealth",
"image": "ghcr.io/fastenhealth/fasten-onprem:main"
},
{
"service": "flaresolverr",
"image": "ghcr.io/flaresolverr/flaresolverr:latest"
},
{
"service": "ghost",
"image": "ghost:latest"
},
{
"service": "gitea",
"image": "gitea/gitea:1.22.2"
},
{
"service": "gitea-db",
"image": "postgres:14"
},
{
"service": "gitea-opengist",
"image": "ghcr.io/thomiceli/opengist:latest"
},
{
"service": "gitea-runner",
"image": "gitea/act_runner:latest"
},
{
"service": "gitea-sonarqube-bot",
"image": "justusbunsi/gitea-sonarqube-bot:v0.4.0"
},
{
"service": "gluetun",
"image": "qmcgaw/gluetun:latest"
},
{
"service": "gotify",
"image": "gotify/server"
},
{
"service": "grafana",
"image": "grafana/grafana-enterprise:latest"
},
{
"service": "grafana-alloy",
"image": "grafana/alloy:latest"
},
{
"service": "grafana-loki",
"image": "grafana/loki:latest"
},
{
"service": "grafana-mimir",
"image": "grafana/mimir:latest"
},
{
"service": "grafana-mimir-memcached",
"image": "memcached"
},
{
"service": "grafana-pyroscope",
"image": "grafana/pyroscope:latest"
},
{
"service": "grafana-tempo",
"image": "grafana/tempo:latest"
},
{
"service": "homepage",
"image": "ghcr.io/gethomepage/homepage:latest"
},
{
"service": "hortusfox",
"image": "ghcr.io/danielbrendel/hortusfox-web:latest"
},
{
"service": "hugo",
"image": "hugomods/hugo:exts"
},
{
"service": "invidious",
"image": "quay.io/invidious/invidious:latest"
},
{
"service": "invidious-db",
"image": "docker.io/library/postgres:14"
},
{
"service": "invoice_ninja",
"image": "invoiceninja/invoiceninja:5"
},
{
"service": "invoice_ninja_proxy",
"image": "nginx"
},
{
"service": "it-tools",
"image": "ghcr.io/corentinth/it-tools:latest"
},
{
"service": "jellyfin",
"image": "jellyfin/jellyfin"
},
{
"service": "jitsi-etherpad",
"image": "etherpad/etherpad:1.8.6"
},
{
"service": "jitsi-jibri",
"image": "jitsi/jibri:${JITSI_IMAGE_VERSION:-stable}"
},
{
"service": "jitsi-jicofo",
"image": "jitsi/jicofo:${JITSI_IMAGE_VERSION:-stable}"
},
{
"service": "jitsi-jigasi",
"image": "jitsi/jigasi:${JITSI_IMAGE_VERSION:-stable}"
},
{
"service": "jitsi-jvb",
"image": "jitsi/jvb:${JITSI_IMAGE_VERSION:-stable}"
},
{
"service": "jitsi-prosody",
"image": "jitsi/prosody:${JITSI_IMAGE_VERSION:-stable}"
},
{
"service": "jitsi-web",
"image": "jitsi/web:${JITSI_IMAGE_VERSION:-stable}"
},
{
"service": "joplin-db",
"image": "postgres:17-alpine"
},
{
"service": "joplin",
"image": "joplin/server:latest"
},
{
"service": "komodo-core",
"image": "ghcr.io/mbecker20/komodo:latest"
},
{
"service": "komodo-ferretdb",
"image": "ghcr.io/ferretdb/ferretdb"
},
{
"service": "komodo-periphery",
"image": "ghcr.io/mbecker20/periphery:latest"
},
{
"service": "komodo-pg-db",
"image": "postgres:17-alpine"
},
{
"service": "librespeed",
"image": "lscr.io/linuxserver/librespeed:latest"
},
{
"service": "lidarr",
"image": "lscr.io/linuxserver/lidarr:latest"
},
{
"service": "lidify",
"image": "thewicklowwolf/lidify:latest"
},
{
"service": "lldap",
"image": "lldap/lldap:stable"
},
{
"service": "localai",
"image": "localai/localai:latest-aio-cpu"
},
{
"service": "maloja",
"image": "krateng/maloja:latest"
},
{
"service": "mariadb",
"image": "ghcr.io/linuxserver/mariadb"
},
{
"service": "meshcentral",
"image": "ghcr.io/ylianst/meshcentral:master"
},
{
"service": "minio",
"image": "minio/minio"
},
{
"service": "mongodb",
"image": "mongo:7.0"
},
{
"service": "multi-scrobbler",
"image": "foxxmd/multi-scrobbler"
},
{
"service": "n8n",
"image": "docker.n8n.io/n8nio/n8n"
},
{
"service": "navidrome",
"image": "deluan/navidrome:latest"
},
{
"service": "netbox",
"image": "lscr.io/linuxserver/netbox:latest"
},
{
"service": "netbox-db",
"image": "postgres:17-alpine"
},
{
"service": "nextcloud",
"image": "lscr.io/linuxserver/nextcloud:latest"
},
{
"service": "ollama",
"image": "ollama/ollama"
},
{
"service": "ombi",
"image": "lscr.io/linuxserver/ombi:latest"
},
{
"service": "paperless-ngx",
"image": "ghcr.io/paperless-ngx/paperless-ngx:latest"
},
{
"service": "plausible",
"image": "ghcr.io/plausible/community-edition:v2.1.0"
},
{
"service": "plausible_db",
"image": "postgres:16-alpine"
},
{
"service": "plausible_events_db",
"image": "clickhouse/clickhouse-server:24.3.3.102-alpine"
},
{
"service": "postal-smtp",
"image": "ghcr.io/postalserver/postal:latest"
},
{
"service": "postal-web",
"image": "ghcr.io/postalserver/postal:latest"
},
{
"service": "postal-worker",
"image": "ghcr.io/postalserver/postal:latest"
},
{
"service": "prowlarr",
"image": "lscr.io/linuxserver/prowlarr:latest"
},
{
"service": "radarec",
"image": "thewicklowwolf/radarec:latest"
},
{
"service": "radarr",
"image": "lscr.io/linuxserver/radarr:latest"
},
{
"service": "reactive-resume",
"image": "amruthpillai/reactive-resume:latest"
},
{
"service": "reactive-resume-pg",
"image": "postgres:16-alpine"
},
{
"service": "readarr",
"image": "lscr.io/linuxserver/readarr:develop"
},
{
"service": "redis",
"image": "redis:alpine"
},
{
"service": "redlib",
"image": "quay.io/redlib/redlib:latest"
},
{
"service": "sabnzbdvpn",
"image": "ghcr.io/binhex/arch-sabnzbdvpn:latest"
},
{
"service": "scraperr",
"image": "jpyles0524/scraperr:latest"
},
{
"service": "scraperr-api",
"image": "jpyles0524/scraperr_api:latest"
},
{
"service": "scrutiny",
"image": "ghcr.io/analogj/scrutiny:master-omnibus"
},
{
"service": "searxng",
"image": "searxng/searxng:latest"
},
{
"service": "semaphore",
"image": "semaphoreui/semaphore:v2.10.32"
},
{
"service": "slurpit-portal",
"image": "slurpit/portal:latest"
},
{
"service": "slurpit-scanner",
"image": "slurpit/scanner:latest"
},
{
"service": "slurpit-scraper",
"image": "slurpit/scraper:latest"
},
{
"service": "slurpit-warehouse",
"image": "slurpit/warehouse:latest"
},
{
"service": "sonarqube",
"image": "mc1arke/sonarqube-with-community-branch-plugin:lts"
},
{
"service": "sonarqube-pg-db",
"image": "postgres:17-alpine"
},
{
"service": "sonarr",
"image": "lscr.io/linuxserver/sonarr:latest"
},
{
"service": "sonashow",
"image": "thewicklowwolf/sonashow:latest"
},
{
"service": "soulseek",
"image": "slskd/slskd"
},
{
"service": "spotisub",
"image": "blastbeng/spotisub:latest"
},
{
"service": "swag",
"image": "lscr.io/linuxserver/swag:latest"
},
{
"service": "synapse",
"image": "docker.io/matrixdotorg/synapse:latest"
},
{
"service": "synapse-db",
"image": "postgres:16-alpine"
},
{
"service": "tandoor",
"image": "vabene1111/recipes"
},
{
"service": "tandoor-pg",
"image": "postgres:16-alpine"
},
{
"service": "traccar",
"image": "traccar/traccar:latest"
},
{
"service": "traccar-pg",
"image": "postgres:16-alpine"
},
{
"service": "unmanic",
"image": "josh5/unmanic:latest"
},
{
"service": "uptimekuma",
"image": "louislam/uptime-kuma:latest"
},
{
"service": "vault",
"image": "hashicorp/vault:latest"
},
{
"service": "wallabag",
"image": "wallabag/wallabag"
},
{
"service": "wallos",
"image": "bellamy/wallos:latest"
},
{
"service": "watchtower",
"image": "ghcr.io/containrrr/watchtower:latest"
},
{
"service": "wazuh.agent",
"image": "opennix/wazuh-agent:latest"
},
{
"service": "wazuh.dashboard",
"image": "wazuh/wazuh-dashboard:${WAZUH_VERSION}"
},
{
"service": "wazuh.indexer",
"image": "wazuh/wazuh-indexer:${WAZUH_VERSION}"
},
{
"service": "wazuh.manager",
"image": "wazuh/wazuh-manager:${WAZUH_VERSION}"
},
{
"service": "web-check",
"image": "lissy93/web-check"
},
{
"service": "whodb",
"image": "clidey/whodb"
},
{
"service": "your_spotify",
"image": "lscr.io/linuxserver/your_spotify:latest"
},
{
"service": "youtubedl",
"image": "nbr23/youtube-dl-server:latest"
},
{
"service": "zammad-backup",
"image": "postgres:${ZAMMAD_POSTGRES_VERSION}"
},
{
"service": "zammad-elasticsearch",
"image": "bitnami/elasticsearch:${ZAMMAD_ELASTICSEARCH_VERSION}"
},
{
"service": "zammad-init",
"image": "${ZAMMAD_IMAGE_REPO}:${ZAMMAD_VERSION}"
},
{
"service": "zammad-memcached",
"image": "memcached:${ZAMMAD_MEMCACHE_VERSION}"
},
{
"service": "zammad-nginx",
"image": "${ZAMMAD_IMAGE_REPO}:${ZAMMAD_VERSION}"
},
{
"service": "zammad-postgresql",
"image": "postgres:${ZAMMAD_POSTGRES_VERSION}"
},
{
"service": "zammad-railsserver",
"image": "${ZAMMAD_IMAGE_REPO}:${ZAMMAD_VERSION}"
},
{
"service": "zammad-redis",
"image": "redis:${ZAMMAD_REDIS_VERSION}"
},
{
"service": "zammad-scheduler",
"image": "${ZAMMAD_IMAGE_REPO}:${ZAMMAD_VERSION}"
},
{
"service": "zammad-websocket",
"image": "${ZAMMAD_IMAGE_REPO}:${ZAMMAD_VERSION}"
},
{
"service": "zitadel",
"image": "ghcr.io/zitadel/zitadel:latest"
},
{
"service": "zitadel-pg-db",
"image": "postgres:16-alpine"
}
]
```
+1 -21
View File
@@ -556,10 +556,7 @@ services:
castopod:
container_name: castopod
depends_on:
mariadb:
condition: service_started
required: true
restart: true
- mariadb
environment:
MYSQL_DATABASE: castopod
MYSQL_USER: castopod
@@ -1709,7 +1706,6 @@ services:
mariadb:
condition: service_started
required: true
restart: true
environment:
APP_ADMIN_EMAIL: charish.patel@trez.wtf
APP_ADMIN_PASSWORD: ${HORTUSFOX_ADMIN_PASSWORD}
@@ -1872,11 +1868,6 @@ services:
create_host_path: true
invoice_ninja:
container_name: invoice_ninja
depends_on:
mariadb:
condition: service_started
required: true
restart: true
environment:
APP_DEBUG: true
APP_KEY: ${IN_APP_KEY}
@@ -3320,11 +3311,6 @@ services:
volume: {}
nextcloud:
container_name: nextcloud
depends_on:
mariadb:
condition: service_started
required: true
restart: true
environment:
PGID: 1000
PUID: 1000
@@ -3437,11 +3423,6 @@ services:
type: bind
paperless-ngx:
container_name: paperless-ngx
depends_on:
mariadb:
condition: service_started
required: true
restart: true
environment:
PAPERLESS_DBENGINE: mariadb
PAPERLESS_DBHOST: mariadb
@@ -6091,7 +6072,6 @@ services:
mariadb:
condition: service_started
required: true
restart: true
redis:
condition: service_started
required: true