paulmixxx / podlodka-php-crew-2

Docker setup example for Podlodka PHP Crew #2 conference livecoding

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Podlodka PHP Crew #2 Livecoding Example: "Just Dockerize it!"

Launching the Example

  1. Install Docker (tested on Docker version 20.10.22 and Docker Compose version v2.15.1).
  2. Ensure that ports 80, 443, and 5432 are not already allocated (Traefik requires them in the current configuration).
  3. Install mkcert
  4. Run make init. This will:
    • copy .env and .env.app from samples
    • generate certificates
    • run Docker with the docker-compose.yml configuration (without volumes)
    • copy the vendor directory from the running PHP container to the host
    • run Docker with both the docker-compose.yml and docker-compose.local.yml configurations (with volumes)
  5. Visit http://localhost:8082/ to view the Traefik admin dashboard.
  6. Visit https://podlodka.localhost/ to view the application.
  7. Visit https://mail.podlodka.localhost/ to view the Mailhog admin.
  8. Visit https://s3.podlodka.localhost/ to view the Minio admin (use AWS_KEY and AWS_SECRET from .env as credentials)
  9. Create a podlodka bucket in Minio if you plan to test the code later.

To test linting with Hadolint, run:

make lint
make blint1
make blint2

To test security, run:

make trivy

To check image layers, run:

make dive

To test mail sending, run:

make mail

To test PDF generation + S3 combo (don't forget to create the podlodka bucket first in Minio), run:

make pdf

To turn off the local setup, run:

make down

About

Docker setup example for Podlodka PHP Crew #2 conference livecoding

License:MIT License


Languages

Language:PHP 54.4%Language:Hack 39.9%Language:Dockerfile 3.9%Language:Makefile 1.4%Language:CSS 0.5%