Electric Eel - How I am using Dockerfile, .env files, compose files

Thanks all for the excellent information in this post! A few things I thought might be useful for folks:

  1. This actually doesn’t seem to be necessary, thanks @swc-phil!
  1. Don’t forget services: {} in the custom yaml box:

25.10 RC1 Custom App YAML Input Bug? - #5 by Rocketplanner83

include:
  - path: /path/to/your/compose.yaml
services: {}
  1. Updating container images via the Apps interface is not straightforward in my experience (compared to the regular docker compose pull and docker compose up -d approach). However, you can add pull_policy to each service to trigger a pull when you restart the app from the Apps interface. I have tested and confirmed that pull_policy: always works, and I currently have everything set to either daily (most things) or build (Caddy built with the Cloudflare module, I have it commented so it doesn’t re-build on every restart, see below).
  1. One other thing that seems useful that I don’t see mentioned elsewhere, you can create external networks as normal, just access the shell and sudo docker network create caddy-nextcloud-net (before you start the container for the first time). Add the network to your compose file as normal:
services:
  caddy:
    ...
    networks:
      - nextcloud
    # uncomment and restart via Apps interface if an update is needed
    # pull_policy: build

networks:
  nextcloud:
    name: caddy-nextcloud-net
    external: true