97 lines
2.4 KiB
YAML
97 lines
2.4 KiB
YAML
# Firefly III - Finance manager
|
|
# Port: 8080
|
|
# Personal finance manager
|
|
|
|
services:
|
|
redis:
|
|
image: redis
|
|
container_name: Firefly-REDIS
|
|
hostname: firefly-redis
|
|
mem_limit: 256m
|
|
mem_reservation: 50m
|
|
cpu_shares: 768
|
|
security_opt:
|
|
- no-new-privileges:true
|
|
read_only: true
|
|
user: 1026:100
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "redis-cli ping || exit 1"]
|
|
volumes:
|
|
- /volume1/docker/firefly/redis:/data:rw
|
|
environment:
|
|
TZ: America/Los_Angeles
|
|
restart: on-failure:5
|
|
|
|
importer:
|
|
image: fireflyiii/data-importer:latest
|
|
container_name: Firefly-Importer
|
|
hostname: firefly-importer
|
|
security_opt:
|
|
- no-new-privileges:false
|
|
volumes:
|
|
- /volume1/docker/firefly/importer:/var/www/html/storage/upload:rw
|
|
ports:
|
|
- 6192:8080
|
|
restart: on-failure:5
|
|
depends_on:
|
|
firefly:
|
|
condition: service_healthy
|
|
|
|
db:
|
|
image: mariadb:11.4-noble #LTS Long Time Support Until May 29, 2029.
|
|
container_name: Firefly-DB
|
|
hostname: firefly-db
|
|
mem_limit: 512m
|
|
mem_reservation: 128m
|
|
cpu_shares: 768
|
|
security_opt:
|
|
- no-new-privileges:false
|
|
volumes:
|
|
- /volume1/docker/firefly/db:/var/lib/mysql:rw
|
|
environment:
|
|
TZ: America/Los_Angeles
|
|
MYSQL_ROOT_PASSWORD: "REDACTED_PASSWORD"
|
|
MYSQL_DATABASE: firefly
|
|
MYSQL_USER: fireflyuser
|
|
MYSQL_PASSWORD: "REDACTED_PASSWORD"
|
|
restart: on-failure:5
|
|
|
|
firefly:
|
|
image: fireflyiii/core:latest
|
|
container_name: Firefly
|
|
hostname: firefly
|
|
mem_limit: 1g
|
|
cpu_shares: 768
|
|
security_opt:
|
|
- no-new-privileges:true
|
|
healthcheck:
|
|
test: curl -f http://localhost:8080/ || exit 1
|
|
env_file:
|
|
- stack.env
|
|
volumes:
|
|
- /volume1/docker/firefly/upload:/var/www/html/storage/upload:rw
|
|
ports:
|
|
- 6182:8080
|
|
restart: on-failure:5
|
|
depends_on:
|
|
db:
|
|
condition: service_started
|
|
redis:
|
|
condition: service_healthy
|
|
|
|
cron:
|
|
image: alpine:latest
|
|
command: sh -c "echo \"0 3 * * * wget -qO- http://firefly:8080/api/v1/cron/9610001d2871a8622ea5bf5e65fe25db\" | crontab - && crond -f -L /dev/stdout"
|
|
container_name: Firefly-Cron
|
|
hostname: firefly-cron
|
|
mem_limit: 64m
|
|
cpu_shares: 256
|
|
security_opt:
|
|
- no-new-privileges:true
|
|
environment:
|
|
TZ: America/Los_Angeles
|
|
restart: on-failure:5
|
|
depends_on:
|
|
firefly:
|
|
condition: service_started
|