Dockerfile to build a LimeSurvey Image for the Docker container platform.
The apache image comes with an Apache Webserver and PHP installed.
To change to Apache Webserver configuration, mount a Volume into the Container at:
- /etc/apache2/sites-available/000-default.conf
See the example configuration provided.
To use the fpm image, you need an additional web server that can proxy http-request to the fpm-port of the container. See docker-compose.fpm.yml for example
LimeSurvey requires an external database (MySQL, PostgreSQL) to run. See docker-compose.yml for example.
To preserve the uploaded files assign the upload folder into a volume. See docker-compose.yml for example.
Path: /var/www/html/upload/surveys
Hint: The mounted directory must be owned by the webserver user (e.g. www-data)
The entrypoint will create a new config.php if none is provided and run the LimeSurvey command line interface for installation.
To change to LimeSurvey configuration, you can mount a Volume into the Container at:
- /my-data/config.php:/var/www/html/application/config/config.php
Hint: If this configuration is present before the installation, the LimeSurvey Web Installer will not run automatically.
Parameter | Description |
---|---|
DB_TYPE | Database Type to use. mysql or pgsql |
DB_HOST | Database server hostname |
DB_PORT | Database server port |
DB_SOCK | Database unix socket instead of host/port |
DB_NAME | Database name |
DB_TABLE_PREFIX | Database table prefix |
DB_USERNAME | Database user |
DB_PASSWORD | Database user's password |
ADMIN_USER | LimeSurvey Admin User |
ADMIN_NAME | LimeSurvey Admin Username |
ADMIN_EMAIL | LimeSurvey Admin Email |
ADMIN_PASSWORD | LimeSurvey Admin Password |
PUBLIC_URL | Public URL for public scripts |
URL_FORMAT | URL Format. path or get |
For further details on the settings see: https://manual.limesurvey.org/Optional_settings#Advanced_Path_Settings
The easiest way to get a fully featured and functional setup is using a docker-compose file. Several examples are provided in the repository.
docker-compose up
# Frontend
http://localhost:8080/
# Backend
http://localhost:8080/index.php/admin