This docker compose setup is part of the fewohbee guesthouse administration tool. It provides all necessary services to run fewohbee out of the box.
| Service | Image | Description |
|---|---|---|
web |
fewohbee-web | Web server |
php |
fewohbee-phpfpm | PHP 8 FPM – clones and runs the app on first start |
cron |
fewohbee-phpcli | PHP CLI for scheduled tasks |
db |
mariadb | Database |
redis |
redis | In-memory cache |
acme |
fewohbee-acme | SSL certificate management (Let's Encrypt or self-signed) |
All settings are stored in a single .env file. Use .env.dist as the reference template.
Works on Linux, macOS and Windows — requires only Docker.
# Clone the repository first
git clone https://github.com/developeregrem/fewohbee-dockerized.git
cd fewohbee-dockerized
# Linux / macOS
docker run --rm -it -v $(pwd):/config developeregrem/fewohbee-setup
# Windows PowerShell
docker run --rm -it -v ${PWD}:/config developeregrem/fewohbee-setupThe container asks a few questions (hostname, SSL mode, language), generates passwords and writes .env.
A Bash script that additionally sets up optional cron jobs for database backups and automatic updates:
git clone https://github.com/developeregrem/fewohbee-dockerized.git
cd fewohbee-dockerized
chmod +x install.sh
sudo ./install.shFor servers with direct internet access. Manages SSL certificates automatically via the acme container (self-signed or Let's Encrypt).
docker compose up -dFor deployments behind an external reverse proxy (Traefik, Nginx Proxy Manager, Caddy, etc.) that handles SSL termination. No acme container — the web container serves plain HTTP.
Set COMPOSE_FILE=docker-compose.no-ssl.yml in .env (done automatically by the setup scripts when choosing reverse-proxy) and then:
docker compose up -dConfigure the exposed HTTP port via LISTEN_PORT in .env (default: 80).
After starting the stack, the PHP container clones the app and installs dependencies (~2 minutes). Monitor progress:
docker compose logs -f phpOnce ready to handle connections appears, run once to create the first admin user:
docker compose exec --user www-data php /bin/sh -c "php fewohbee/bin/console app:first-run"chmod +x update-docker.sh
./update-docker.shThe script pulls new images, restarts the stack and automatically syncs any new environment variables into .env and both compose files. New variables should be reviewed and adjusted after the update.
Full setup and configuration documentation: Docker-Setup and Portainer-Setup