73ac77a2f551e1fd12c94aef1e14543d9dd13993
- Extend `department_selfserve_tasks_o` with `buttons` and `dynamic_images_vehicle_type` properties. - Add normalization/validation methods for `buttons` and `dynamic_images_vehicle_type` parameters. - Update `departmentSelfserveTasksRoute` to handle new fields in task creation and update. - Add OpenAPI specifications for `buttons` and `dynamic_images_vehicle_type`. - Include comprehensive tests for button normalization and vehicle type selection.
Local TLS certificates with Docker Compose
Nginx is configured to terminate TLS using certificates mounted at /etc/letsencrypt inside the container. To use your real Let’s Encrypt certificates on the host, the Compose file mounts a configurable path via LETSENCRYPT_PATH.
1) Configure the host certificate path
Copy .env.example to .env in the project root and adjust the path for your environment:
cp .env.example .env
# Edit .env and set one of the following:
# Linux: LETSENCRYPT_PATH=/etc/letsencrypt
# Windows (WSL Ubuntu): LETSENCRYPT_PATH=//wsl$/Ubuntu/etc/letsencrypt
Ensure the following files exist under the path you set:
live/api.truckwash.dk/fullchain.pemlive/api.truckwash.dk/privkey.pemlive/cloud.truckwash.dk/fullchain.pemlive/cloud.truckwash.dk/privkey.pem
If you don’t have certs for cloud.truckwash.dk locally, either comment out that TLS server block in services/nginx/nginx.conf or place a temporary self‑signed cert/key at the expected path.
2) Start Nginx
docker compose up -d nginx
Check logs:
docker compose logs -f nginx
3) Troubleshooting
- “cannot load certificate … no such file or directory”: verify
LETSENCRYPT_PATHand that alllive/<domain>/files exist on the host. - For purely local testing without HTTPS, you may comment out the HTTPS server blocks and the HTTP→HTTPS redirect in
services/nginx/nginx.confand run on port 80.
Languages
PHP
93.5%
HTML
3.5%
JavaScript
1.9%
Shell
0.4%
Python
0.3%
Other
0.3%