services:
  https:
    image: caddy:2.6.2-alpine@sha256:25a0097607868fb05a89a5ab9fea2f2ea4cecdc89d887d7dcee8c778a21b9e1f
    restart: unless-stopped
    ports:
      - "80:80"
      - "443:443/udp"
      - "443:443/tcp"
      - "127.0.0.1:2019:2019"
    volumes:
      - ./etc/caddy:/etc/caddy
      - caddy_data:/data
      - caddy_config:/config
    networks:
      - fogtype
  dns:
    image: coredns/coredns:1.10.0@sha256:017727efcfeb7d053af68e51436ce8e65edbc6ca573720afb4f79c8594036955
    restart: unless-stopped
    expose: ["443"]
    ports:
      - "53:53/udp"
      - "53:53/tcp"
      - "853:853"
      - "127.0.0.1:9153:9153"
    volumes:
      - ./etc/coredns:/etc/coredns
      - caddy_data:/var/lib/caddy/data
    command: "-conf /etc/coredns/Corefile"
    networks:
      - fogtype
  gts:
    image: superseriousbusiness/gotosocial:0.6.0@sha256:c3dbefe684529c7f97eb7d221f64bd9d14bd9c94e6543e6a8afe5a3469a9d77e
    restart: unless-stopped
    expose: ["8080"]
    environment:
      GTS_HOST: fogtype.com
      GTS_TRUSTED_PROXIES: 172.30.0.0/24
    volumes:
      - /usr/share/zoneinfo/Asia/Tokyo:/etc/localtime:ro
      - ./etc/gotosocial:/etc/gotosocial
      - gotosocial_data:/gotosocial
    command: "--config-path /etc/gotosocial/config.yaml"
    networks:
      - fogtype
volumes:
  caddy_data:
  caddy_config:
  gotosocial_data:
networks:
  fogtype:
    ipam:
     driver: default
     config:
       - subnet: 172.30.0.0/24