1. The problem I’m having:
I’m trying to serve adminer.css
over caddy file server. My Caddyfile contains a php reverse proxy, adminer’s reverse proxy and file_server. The file will get served if I request it with no parameters (https://localhost/adminer.css), but when Adminer requests it with a query parameter it will try to respond with fastcgi (url = https://localhost/adminer.css?v=1639178368)
2. Caddy version: Latest (caddy:alpine docker)
4. How I installed and ran Caddy: Docker-compose
a. System environment: Docker WSL
b. Command: Default docker command
c. Service/unit/compose file:
version: "3"
services:
caddy:
image: caddy:alpine
restart: always
ports:
- "80:80"
- "2019:2019"
- "443:443"
- "443:443/udp"
depends_on:
- php
volumes:
- ./public:/srv
- ./config/adminer/adminer.css:/public/adminer.css:ro
- ./config/caddy/Caddyfile:/etc/caddy/Caddyfile:ro
- ./logs:/var/log/caddy
- caddy:/data
php:
image: sparanoid/php-fpm:8-latest
restart: always
depends_on:
- redis
- mariadb
volumes:
- ./public:/srv
- ./config/php/php.ini:/usr/local/etc/php/php.ini:rw
environment:
- MYSQL_ROOT_PASSWORD=culo
- MYSQL_DATABASE=db
mariadb:
image: mariadb
restart: always
volumes:
- db:/var/lib/mysql
environment:
- MYSQL_ROOT_PASSWORD=culo
- MYSQL_DATABASE=MYSQL_DATABASE
redis:
image: redis
restart: always
adminer:
image: adminer
restart: always
links:
- "mariadb:db"
volumes:
- ./config/adminer/adminer.css:/var/www/html/adminer.css:ro
ports:
- 127.0.0.1:8080:8080
depends_on:
- php
environment:
- ADMINER_ABSOLUTE_URI=https://localhost/pma
volumes:
db:
caddy:
d. My complete Caddy config:
localhost
root * /srv
encode zstd gzip
php_fastcgi php:9000
reverse_proxy /pma adminer:8080
file_server
log {
output file /var/log/caddy/access.log {
roll_size 10MiB
roll_keep 100
}
level debug
}