Deployment with docker compose
Here is a sample docker-compose file that defines 2 containers: 1) a postgres container to run the database and 2) a frepple web application server.
You access the application with your browser on the URL http://localhost:9000/
The frepple log and configuration files are put in volumes (which allows to reuse them between different releases of the frepple image).
Note that the postgres database container comes with default settings. For production use you should update the configuration with the pgtune recommendations from https://pgtune.leopard.in.ua/ (use “data warehouse” as application type and also assure the max_connections setting is moved from the default 100 to eg 400).
services:
frepple:
image: "ghcr.io/frepple/frepple-community:latest"
container_name: frepple-community-webserver
ports:
- 9000:80
depends_on:
- frepple-community-postgres
networks:
- backend
volumes:
- log-apache-community:/var/log/apache2
- log-frepple-community:/var/log/frepple
- config-frepple-community:/etc/frepple
environment:
POSTGRES_HOST: "frepple-community-postgres"
POSTGRES_PORT: 5432
POSTGRES_USER: "frepple"
POSTGRES_PASSWORD: "frepple"
FREPPLE_DATE_STYLE: "year-month-day"
FREPPLE_DATE_STYLE_WITH_HOURS: "false"
FREPPLE_TIME_ZONE: "UTC"
FREPPLE_THEMES: "earth grass lemon odoo openbravo orange snow strawberry water"
FREPPLE_DEFAULT_THEME: "earth"
FREPPLE_EMAIL_USE_TLS: "true"
FREPPLE_DEFAULT_FROM_EMAIL: "your_email@domain.com"
FREPPLE_SERVER_EMAIL: "your_email@domain.com"
FREPPLE_EMAIL_HOST_USER: "your_email@domain.com"
FREPPLE_EMAIL_HOST_PASSWORD: "frePPLeIsTheBest"
FREPPLE_EMAIL_HOST: ""
FREPPLE_EMAIL_PORT: 25
FREPPLE_CONTENT_SECURITY_POLICY: "frame-ancestors 'self'"
FREPPLE_X_FRAME_OPTIONS: "SAMEORIGIN"
FREPPLE_CSRF_TRUSTED_ORIGINS: ""
FREPPLE_SECURE_PROXY_SSL_HEADER: ""
FREPPLE_SESSION_COOKIE_SECURE: "false"
FREPPLE_CSRF_COOKIE_SAMESITE: "lax"
FREPPLE_FTP_PROTOCOL: "SFTP"
FREPPLE_FTP_HOST: ""
FREPPLE_FTP_PORT: 22
FREPPLE_FTP_USER: ""
FREPPLE_FTP_PASSWORD: ""
frepple-community-postgres:
image: "postgres:16"
container_name: frepple-community-postgres
networks:
- backend
environment:
POSTGRES_PASSWORD: frepple
POSTGRES_DB: frepple
POSTGRES_USER: frepple
POSTGRES_DBNAME: frepple
volumes:
log-apache-community:
log-frepple-community:
config-frepple-community:
networks:
backend: