60 lines
2.2 KiB
Markdown
60 lines
2.2 KiB
Markdown
# Pretix Customized for CCCHH
|
|
|
|
The image adds an entrypoint script that creates `/etc/pretix/pretix.cfg` from environment variables at startup. The file is only created if it doesn't exist or is empty; this means that you can still mount your own config file into the container as with the original image.
|
|
|
|
The script will fail and point out if required variables are not set.
|
|
|
|
The image is available at `gitlab-cr.hamburg.ccc.de/ccchh/ccchh-pretix/ccchh-pretix:23.10.0`.
|
|
|
|
## Configuration
|
|
|
|
The config file is created from a template, with environment variables substituted.
|
|
|
|
```ini
|
|
[pretix]
|
|
instance_name=${PRETIX_INSTANCE_NAME}
|
|
url=${PRETIX_URL}
|
|
currency=${PRETIX_CURRENCY:-EUR}
|
|
datadir=${PRETIX_DATADIR:-/data}
|
|
trust_x_forwarded_for=${PRETIX_TRUST_X_FORWARDED_FOR:-on}
|
|
trust_x_forwarded_proto=${PRETIX_TRUST_X_FORWARDED_PROTO:-on}
|
|
|
|
[database]
|
|
backend=${DATABASE_BACKEND}
|
|
name=${DATABASE_NAME}
|
|
user=${DATABASE_USER}
|
|
password=${DATABASE_PASSWORD}
|
|
host=${DATABASE_HOST}
|
|
|
|
[mail]
|
|
from=${MAIL_FROM}
|
|
host=${MAIL_HOST}
|
|
|
|
[redis]
|
|
location=${REDIS_LOCATION}
|
|
sessions=${REDIS_SESSION:-true}
|
|
|
|
[celery]
|
|
backend=${CELERY_BACKEND}
|
|
broker=${CELERY_BROKER}
|
|
EOF
|
|
```
|
|
|
|
## Updating the image
|
|
|
|
You will need to look up the latest tag at https://hub.docker.com/r/pretix/standalone/tags and change it in both the `Dockerfile`` and in ``.gitlab-ci.yml`.
|
|
|
|
## Testing the build
|
|
|
|
```shell
|
|
docker build -t ccchh-pretix:latest .
|
|
```
|
|
|
|
```shell
|
|
docker run -it --rm --name pretix -e PRETIX_INSTANCE_NAME=foo -e PRETIX_URL=http://localhost -e DATABASE_BACKEND=postgresql -e DATABASE_NAME=postgres -e DATABASE_USER=postgres -e DATABASE_PASSWORD=geheim -e DATABASE_HOST=postgres -e MAIL_FROM=foo@example.com -e MAIL_HOST=mail -e REDIS_LOCATION=redis://redis/0 -e CELERY_BACKEND=redis://redis/0 -e CELERY_BROKER=redis://redis/1 ccchh-pretix
|
|
```
|
|
|
|
```shell
|
|
docker run -it --rm --name pretix -e PRETIX_INSTANCE_NAME=foo -e PRETIX_URL=http://localhost -e DATABASE_BACKEND=postgresql -e DATABASE_NAME=postgres -e DATABASE_USER=postgres -e DATABASE_PASSWORD=geheim -e DATABASE_HOST=postgres -e MAIL_FROM=foo@example.com -e MAIL_HOST=mail -e REDIS_LOCATION=redis://redis/0 -e CELERY_BACKEND=redis://redis/0 -e CELERY_BROKER=redis://redis/1 gitlab-cr.hamburg.ccc.de/ccchh/ccchh-pretix/ccchh-pretix:23.10.0
|
|
```
|