Files
README.md

symfony-docker #

A Symfony application served by FrankenPHP in worker mode, behind a Traefik router, with traces, metrics and logs in a bundled Grafana. Everything runs in Docker. The host needs Docker and Nix, nothing else.

Requirements #

  • Docker with the Compose plugin
  • devenv

Start #

  1. Add devenv's shell hook to your shell config once, if you haven't for another project already:

    eval "$(devenv hook bash)"     # ~/.bashrc
    eval "$(devenv hook zsh)"      # ~/.zshrc
    
  2. Allow this project once. It puts Castor, mkcert and symfony-cli on your PATH whenever you cd into it:

    devenv allow
    
  3. Build and start the stack:

    castor start
    

    The first run asks for your password twice: once to write app.test into /etc/hosts, once to trust the local certificate authority.

  4. Open https://app.test. Grafana is at https://grafana.app.test.

Every day #

castor                          list all tasks
castor about                    the URLs this project answers on
castor qa                       the QA gate: style, static analysis, tests
castor builder                  a shell inside the PHP container
castor builder -- <command>     one command inside it: bin/console, composer, ...
castor logs                     follow container output
castor stop                     stop the stack

AGENTS.md describes the layout and the conventions.