version: '3.8' services: # Firefly III firefly-app: image: fireflyiii/core:latest hostname: app container_name: firefly_iii_core networks: - firefly_iii restart: always volumes: - firefly_iii_upload:/var/www/html/storage/upload env_file: ./firefly/.env ports: - '80:8080' depends_on: - firefly-db healthcheck: test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8080/api/v1/about"] interval: 30s timeout: 10s retries: 3 start_period: 60s firefly-db: image: mariadb:lts hostname: db container_name: firefly_iii_db networks: - firefly_iii restart: always env_file: ./firefly/.db.env volumes: - firefly_iii_db:/var/lib/mysql healthcheck: test: ["CMD", "mysqladmin", "ping", "-h", "localhost"] interval: 30s timeout: 10s retries: 3 start_period: 40s firefly-importer: image: fireflyiii/data-importer:latest hostname: importer restart: always container_name: firefly_iii_importer networks: - firefly_iii ports: - '81:8080' depends_on: - firefly-app env_file: ./firefly/.importer.env healthcheck: test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8080/health"] interval: 30s timeout: 10s retries: 3 start_period: 40s firefly-cron: image: alpine container_name: firefly_iii_cron restart: always 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/HcguQHJQpjR38uLfred;echo\" | crontab - && crond -f -L /dev/stdout" networks: - firefly_iii # Frigate frigate: container_name: frigate restart: unless-stopped stop_grace_period: 30s image: ghcr.io/blakeblackshear/frigate:stable shm_size: "512mb" devices: - /dev/bus/usb:/dev/bus/usb volumes: - /etc/localtime:/etc/localtime:ro - ./frigate/config:/config - ./frigate/storage:/media/frigate - type: tmpfs target: /tmp/cache tmpfs: size: 3000000000 ports: - "8971:8971" - "5000:5000" - "8554:8554" - "8555:8555/tcp" - "8555:8555/udp" environment: FRIGATE_RTSP_PASSWORD: "password" healthcheck: test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:5000/api/version"] interval: 30s timeout: 10s retries: 3 start_period: 60s # Gitea gitea-server: image: docker.gitea.com/gitea:latest container_name: gitea environment: - USER_UID=1000 - USER_GID=1000 - GITEA__database__DB_TYPE=postgres - GITEA__database__HOST=gitea-db:5432 - GITEA__database__NAME=gitea - GITEA__database__USER=gitea - GITEA__database__PASSWD=gitea restart: always networks: - gitea volumes: - ./gitea/gitea:/data - /etc/timezone:/etc/timezone:ro - /etc/localtime:/etc/localtime:ro ports: - "3000:3000" - "222:22" depends_on: - gitea-db gitea-db: image: docker.io/library/postgres:14 restart: always environment: - POSTGRES_USER=gitea - POSTGRES_PASSWORD=gitea - POSTGRES_DB=gitea networks: - gitea volumes: - ./gitea/postgres:/var/lib/postgresql/data # Immich immich-server: container_name: immich_server image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release} volumes: - ${UPLOAD_LOCATION}:/data - /etc/localtime:/etc/localtime:ro env_file: - ./immich/.env ports: - '2283:2283' depends_on: - immich-redis - immich-database restart: unless-stopped healthcheck: test: ["CMD-SHELL", "timeout 1 bash -c ' redis-server --requirepass Olenoob2209 --appendonly yes ports: - "6379:6379" volumes: - redis-data:/data environment: - REDIS_PASSWORD=Olenoob2209 networks: - redis-net healthcheck: test: ["CMD", "redis-cli", "-a", "Olenoob2209", "ping"] interval: 10s timeout: 3s retries: 5 start_period: 5s redisinsight: image: redislabs/redisinsight:2.70 container_name: redisinsight restart: unless-stopped ports: - "5540:5540" networks: - redis-net volumes: - redisinsight-data:/db # What's Up Docker whatsupdocker: image: getwud/wud container_name: wud volumes: - /var/run/docker.sock:/var/run/docker.sock ports: - 9999:3000 environment: - WUD_TRIGGER_HTTP_MYREMOTEHOST_URL=https://satisfhome.duckdns.org/webhook/4865569a-ceb7-4d46-8c69-a50e39b8fa6d # WebMap nmap: image: instrumentisto/nmap container_name: nmap command: -sT -A -T3 -oX tmp/myscan.xml 192.168.2.0/24 cap_add: - NET_ADMIN volumes: - ./webmap/webmap:/tmp network_mode: host environment: - PUID=1000 - PGID=100 webmap: container_name: webmap hostname: webmap ports: - '8001:8000' volumes: - ./webmap/webmap:/opt/xml image: reborntc/webmap environment: - PUID=1000 - PGID=100 restart: unless-stopped healthcheck: test: ["CMD", "wget", "--no-verbose", "--tries=1", "--spider", "http://localhost:8000"] interval: 30s timeout: 10s retries: 3 start_period: 40s volumes: firefly_iii_upload: firefly_iii_db: immich-model-cache: mongodb-data: n8n-data: portainer-data: redis-data: redisinsight-data: networks: firefly_iii: driver: bridge gitea: driver: bridge redis-net: driver: bridge