# Halcyon Docker This Docker setup for Halcyon includes just Halcyon, php-fpm and the necessary locales for internationalization support in Halcyon. You'll need to use the main repo's nginx/apache/caddy configs for reverse proxy to the container. traefik will likely work but is untested. # Build Halcyon Container ``` sh cd /opt/halcyon/docker docker build -t halcyon/halcyon:latest . ``` # Configuration The container has the official example configs stored at ```/opt/halcyon/config.example``` inside the image. You can copy the examples from the container to the server via a temporary container and volume. The configs must be adjusted ahead of running the container for production use. Please note: The container build will checkout the latest release of Halcyon which may *not* match the current master brach HEAD. It's advisable to use the below to copy the configs so you're using the same config examples as the version deployed in the container. Example: ``` sh cd /opt/halcyon mkdir config docker run --rm -it \ --entrypoint /bin/sh \ -v /opt/halcyon/config:/opt/halcyon/config \ halcyon/halcyon:latest cp /opt/halcyon/config.example/* /opt/halcyon/config/ exit ``` # Running An example for running the container is below. ``` sh docker run \ --name halcyon \ --restart unless-stopped \ --net docker-private \ --ip 172.30.12.13 \ -e TZ=UTC \ -e DEBUG=1 \ -v /opt/halcyon/config:/opt/halcyon/config \ halcyon/halcyon:latest ```