Cambiando stacks

This commit is contained in:
2025-11-07 20:01:06 -03:00
parent eb2ab36dc3
commit 1e67c4200e
21 changed files with 229 additions and 195 deletions

View File

@@ -1,13 +1,12 @@
services:
actual_server:
image: docker.io/actualbudget/actual-server:latest
networks:
macvlan_192_168_3_0:
ipv4_address: 192.168.3.13
volumes:
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/actual:/data
restart: unless-stopped
actual_server:
image: ghcr.io/actualbudget/actual:latest
restart: unless-stopped
volumes:
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/actual:/data
networks:
macvlan_192_168_3_0:
ipv4_address: 192.168.103.13
networks:
macvlan_192_168_3_0:
external: true

View File

@@ -1,15 +0,0 @@
version: "3"
services:
adguard:
image: adguard/adguardhome
restart: unless-stopped
volumes:
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/adguard/data:/opt/adguardhome/work
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/adguard/config:/opt/adguardhome/conf
networks:
macvlan_192_168_3_0:
ipv4_address: 192.168.3.1
networks:
macvlan_192_168_3_0:
external: true

View File

@@ -1,6 +0,0 @@
PUID=1000
PGID=1000
IP6_PROVIDER=none
CF_API_TOKEN=EXAMPLE
DOMAINS=local.skrd.fun,direct.skrd.fun
PROXIED=false

View File

@@ -1,14 +0,0 @@
version: "3"
services:
cloudflare-ddns:
image: favonia/cloudflare-ddns:latest
restart: always
cap_add:
- SETUID
- SETGID
cap_drop:
- all
read_only: true
security_opt:
- no-new-privileges:true
env_file: stack.env

View File

@@ -1,6 +0,0 @@
TYPE="AUTO_CURSEFORGE"
CF_API_KEY="SECRET"
CF_PAGE_URL="https://www.curseforge.com/minecraft/modpacks/create-astral"
MEMORY="10G"
EULA="TRUE"
ONLINE_MODE="TRUE"

View File

@@ -1,18 +0,0 @@
version: "3"
services:
feed_the_beast:
image: itzg/minecraft-server
tty: true
stdin_open: true
restart: unless-stopped
env_file: stack.env
volumes:
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/feed-the-beast/data:/data
networks:
macvlan_192_168_3_0:
ipv4_address: 192.168.3.5
networks:
macvlan_192_168_3_0:
external: true

View File

@@ -1,43 +0,0 @@
services:
app:
image: fireflyiii/core:latest
restart: unless-stopped
volumes:
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/firefly_iii/upload:/var/www/html/storage/upload
env_file: stack.env
networks:
firefly_iii:
macvlan_192_168_3_0:
ipv4_address: 192.168.3.15
depends_on:
- db
db:
image: mariadb:lts
restart: unless-stopped
env_file: stack.env
networks:
- firefly_iii
volumes:
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/firefly_iii/db:/var/lib/mysql
cron:
#
# To make this work, set STATIC_CRON_TOKEN in your .env file or as an environment variable and replace REPLACEME below
# The STATIC_CRON_TOKEN must be *exactly* 32 characters long
#
image: alpine
restart: unless-stopped
env_file: stack.env
command: sh -c "
apk add tzdata
&& ln -s /usr/share/zoneinfo/${TZ} /etc/localtime
| echo \"0 3 * * * wget -qO- http://app:8080/api/v1/cron/REPLACEME;echo\"
| crontab -
&& crond -f -L /dev/stdout"
networks:
- firefly_iii
networks:
firefly_iii:
macvlan_192_168_3_0:
external: true

View File

@@ -1,5 +1,3 @@
version: "3"
services:
gametabs:
image: nginx
@@ -8,7 +6,7 @@ services:
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/gametabs:/usr/share/nginx/html
networks:
macvlan_192_168_3_0:
ipv4_address: 192.168.3.6
ipv4_address: 192.168.103.6
networks:
macvlan_192_168_3_0:
external: true

View File

@@ -1,8 +1,11 @@
CONFIG_FILE=/config/config.yaml
GITEA_INSTANCE_URL="https://git.skrd.fun"
GITEA_RUNNER_REGISTRATION_TOKEN="SECRET"
GITEA_RUNNER_NAME="gitea-runner-1"
USER_UID=1000
USER_GID=1000
POSTGRES_PASSWORD="SECRET"
POSTGRES_DB="gitea"
POSTGRES_USER="gitea"
CONFIG_FILE=/config/config.yaml
GITEA_INSTANCE_URL=https://git.skrd.fun
GITEA_RUNNER_REGISTRATION_TOKEN=secret
GITEA_RUNNER_NAME=gitea-runner-1
POSTGRES_PASSWORD=secret
POSTGRES_DB=gitea
POSTGRES_USER=gitea

View File

@@ -1,15 +1,13 @@
version: "3"
services:
gitea:
image: gitea/gitea:latest
restart: unless-stopped
environment:
- USER_UID=1000
- USER_GID=1000
env_file:
- gitea.env
networks:
gitea_network:
macvlan_192_168_3_0:
ipv4_address: 192.168.3.3
ipv4_address: 192.168.103.3
volumes:
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/gitea/data:/data
- /etc/timezone:/etc/timezone:ro
@@ -20,7 +18,8 @@ services:
runner:
image: gitea/act_runner:latest
restart: unless-stopped
env_file: stack.env
env_file:
- gitea.env
networks:
- gitea_network
volumes:
@@ -37,7 +36,8 @@ services:
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/gitea/db:/var/lib/postgresql/data
networks:
- gitea_network
env_file: stack.env
env_file:
- gitea.env
networks:
gitea_network:

View File

@@ -1,8 +1,8 @@
DB_PASSWORD=SECRET
DB_PASSWORD=secret
DB_USERNAME=postgres
DB_DATABASE_NAME=immich
POSTGRES_PASSWORD=SECRET
POSTGRES_PASSWORD=secret
POSTGRES_USER=postgres
POSTGRES_DB=immich
POSTGRES_INITDB_ARGS="--data-checksums"
POSTGRES_INITDB_ARGS='--data-checksums'

View File

@@ -1,6 +1,6 @@
services:
immich-server:
image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}
image: ghcr.io/immich-app/immich-server:release
restart: unless-stopped
volumes:
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/immich/upload:/usr/src/app/upload
@@ -8,14 +8,15 @@ services:
networks:
immich_network:
macvlan_192_168_3_0:
ipv4_address: 192.168.3.12
env_file: stack.env
ipv4_address: 192.168.103.12
env_file:
- immich.env
depends_on:
- redis
- database
immich-machine-learning:
image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}
image: ghcr.io/immich-app/immich-machine-learning:release
restart: unless-stopped
networks:
immich_network:
@@ -35,7 +36,8 @@ services:
restart: unless-stopped
networks:
immich_network:
env_file: stack.env
env_file:
- immich.env
volumes:
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/immich/postgres:/var/lib/postgresql/data
healthcheck:

View File

@@ -1,4 +1,3 @@
version: '3.5'
services:
jellyfin:
image: jellyfin/jellyfin
@@ -14,8 +13,7 @@ services:
- JELLYFIN_PublishedServerUrl=https://jelly.skrd.fun
networks:
macvlan_192_168_3_0:
ipv4_address: 192.168.3.11
ipv4_address: 192.168.103.11
networks:
macvlan_192_168_3_0:
external: true

View File

@@ -1,24 +0,0 @@
version: "3"
services:
mc:
image: itzg/minecraft-server
tty: true
stdin_open: true
restart: unless-stopped
environment:
type: "paper"
eula: "true"
online_mode: "false"
enable_autopause: "true"
jvm_dd_opts: "disable.watchdog:true"
debug_autopause: "true"
volumes:
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/minecraft/data:/data
networks:
macvlan_192_168_3_0:
ipv4_address: 192.168.3.9
networks:
macvlan_192_168_3_0:
external: true

63
stacks/moka.env.example Normal file
View File

@@ -0,0 +1,63 @@
APP_NAME=Moka
APP_ENV=production
APP_KEY=secret
APP_DEBUG=false
APP_URL=https://moka.skrd.fun
APP_LOCALE=es
APP_FALLBACK_LOCALE=en
APP_FAKER_LOCALE=en_US
APP_MAINTENANCE_DRIVER=file
HTTPS=on
PHP_CLI_SERVER_WORKERS=4
BCRYPT_ROUNDS=12
LOG_CHANNEL=stack
LOG_STACK=single
LOG_DEPRECATIONS_CHANNEL=null
LOG_LEVEL=debug
DB_CONNECTION=pgsql
DB_HOST=pgsql
DB_PORT=5432
DB_DATABASE=moka
DB_USERNAME=moka
DB_PASSWORD=secret
SESSION_DRIVER=database
SESSION_LIFETIME=120
SESSION_ENCRYPT=false
SESSION_PATH=/
SESSION_DOMAIN=null
BROADCAST_CONNECTION=log
FILESYSTEM_DISK=local
QUEUE_CONNECTION=database
CACHE_STORE=database
MEMCACHED_HOST=127.0.0.1
REDIS_CLIENT=phpredis
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_MAILER=log
MAIL_SCHEME=null
MAIL_HOST=127.0.0.1
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_FROM_ADDRESS="hello@example.com"
MAIL_FROM_NAME="${APP_NAME}"
AWS_ACCESS_KEY_ID=
AWS_SECRET_ACCESS_KEY=
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=
AWS_USE_PATH_STYLE_ENDPOINT=false
VITE_APP_NAME="${APP_NAME}"
OCTANE_SERVER=frankenphp

121
stacks/moka.yml Normal file
View File

@@ -0,0 +1,121 @@
services:
moka:
image: git.skrd.fun/skrd/moka:v0.3.9.1
restart: unless-stopped
env_file:
- moka.env
environment:
- SERVICE=server
volumes:
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/moka:/app/storage
depends_on:
redis:
condition: service_healthy
pgsql:
condition: service_healthy
networks:
moka_network:
macvlan_192_168_3_0:
ipv4_address: 192.168.103.19
init: true
healthcheck:
test: [ "CMD-SHELL", "curl -fsS http://localhost:8000/up >/dev/null || exit 1" ]
interval: 30s
timeout: 5s
retries: 3
start_period: 20s
schedule:
image: git.skrd.fun/skrd/moka:v0.3.9.1
restart: unless-stopped
env_file:
- moka.env
environment:
- SERVICE=schedule
volumes:
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/moka:/app/storage
depends_on:
redis:
condition: service_healthy
pgsql:
condition: service_healthy
networks:
moka_network:
init: true
healthcheck:
test: [ "CMD-SHELL", "pgrep -f 'artisan schedule:work' >/dev/null || exit 1" ]
interval: 30s
timeout: 5s
retries: 3
start_period: 15s
queue:
image: git.skrd.fun/skrd/moka:v0.3.9.1
restart: unless-stopped
env_file:
- .env
environment:
- SERVICE=queue
volumes:
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/moka:/app/storage
depends_on:
redis:
condition: service_healthy
pgsql:
condition: service_healthy
networks:
moka_network:
init: true
healthcheck:
test: [ "CMD-SHELL", "pgrep -f 'artisan queue:work' >/dev/null || exit 1" ]
interval: 30s
timeout: 5s
retries: 3
start_period: 15s
redis:
image: redis:alpine
restart: unless-stopped
volumes:
- redis_data:/data
networks:
moka_network:
healthcheck:
test: [ "CMD-SHELL", "redis-cli -h 127.0.0.1 ping | grep -q PONG" ]
interval: 3s
timeout: 3s
retries: 10
start_period: 5s
pgsql:
image: "postgres:18"
restart: unless-stopped
shm_size: 128mb
environment:
PGPASSWORD: "${DB_PASSWORD:-secret}"
POSTGRES_DB: "${DB_DATABASE}"
POSTGRES_USER: "${DB_USERNAME}"
POSTGRES_PASSWORD: "${DB_PASSWORD:-secret}"
volumes:
- postgres_data:/var/lib/postgresql/data
networks:
moka_network:
init: true
healthcheck:
test: [
"CMD-SHELL",
"pg_isready -h 127.0.0.1 -p 5432 -U ${POSTGRES_USER:-postgres} -d ${POSTGRES_DB:-postgres}"
]
interval: 3s
timeout: 3s
retries: 10
start_period: 10s
volumes:
redis_data:
postgres_data:
networks:
moka_network:
macvlan_192_168_3_0:
external: true

View File

@@ -1,21 +1,16 @@
version: "3"
services:
navidrome:
image: deluan/navidrome:latest
user: 1000:1000
restart: unless-stopped
environment:
ND_MUSICFOLDER: "/store"
ND_BASEURL: "https:://navi.skrd.fun"
ND_AUTOIMPORTPLAYLISTS: false
ND_ENABLESHARING: true
networks:
macvlan_192_168_3_0:
ipv4_address: 192.168.3.10
ipv4_address: 192.168.103.10
volumes:
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/navidrome:/data
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/music:/store/music:ro
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/ost:/store/ost:ro
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/music:/music:ro
networks:
macvlan_192_168_3_0:
external: true

View File

@@ -1,19 +0,0 @@
version: '3.8'
services:
nginx-proxy-manager:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
volumes:
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/npm/data:/data
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/npm/letsencrypt:/etc/letsencrypt
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/npm/ca.crt:/etc/my_ca.crt
networks:
proxy_network:
macvlan_192_168_3_0:
ipv4_address: 192.168.103.2
networks:
proxy_network:
external: true
macvlan_192_168_3_0:
external: true

View File

@@ -1,5 +1,3 @@
version: '3'
services:
qbittorrent:
image: lscr.io/linuxserver/qbittorrent:latest
@@ -15,7 +13,7 @@ services:
restart: unless-stopped
networks:
macvlan_192_168_3_0:
ipv4_address: 192.168.3.4
ipv4_address: 192.168.103.4
networks:
macvlan_192_168_3_0:

View File

@@ -1 +1 @@
MARIADB_ROOT_PASSWORD=SECRET
MARIADB_ROOT_PASSWORD=secret

View File

@@ -3,13 +3,15 @@ services:
db:
image: mariadb
restart: unless-stopped
env_file: stack.env
env_file:
- zenithar.env
volumes:
- /srv/dev-disk-by-uuid-1582b800-1f82-407a-a3aa-3460b3390127/docker/zenithar:/var/lib/mysql:Z
networks:
macvlan_192_168_3_0:
ipv4_address: 192.168.3.7
ipv4_address: 192.168.103.7
networks:
macvlan_192_168_3_0:
external: true