mirror of
https://github.com/mykitserver/docker-limesurvey.git
synced 2025-12-06 16:39:11 +01:00
Compare commits
108 Commits
6.1.4-2306
...
master
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
3dbc25240f | ||
|
|
58989030c7 | ||
|
|
c4cf9311d0 | ||
|
|
f2dfd48f94 | ||
|
|
20491441ac | ||
|
|
fb5a511f52 | ||
|
|
8fd8b192ff | ||
|
|
3e8ce5bba9 | ||
|
|
2387d27d53 | ||
|
|
7c2b1cb17d | ||
|
|
1ffa029bf4 | ||
|
|
0cfdcb2628 | ||
|
|
0c83353d84 | ||
|
|
c4c919b92c | ||
|
|
e0ceb06881 | ||
|
|
5b80aa6c06 | ||
|
|
5318ab5f54 | ||
|
|
ddb0a1513c | ||
|
|
79928f4075 | ||
|
|
b297c16f7c | ||
|
|
322cf3732e | ||
|
|
22fc8f2d56 | ||
|
|
e4facd925f | ||
|
|
80098d872b | ||
|
|
23f8264caa | ||
|
|
ef7111d27c | ||
|
|
73ff270819 | ||
|
|
b8ef3a9e7c | ||
|
|
73231ca1e2 | ||
|
|
121fa8db27 | ||
|
|
d7ce8fa25b | ||
|
|
930909ced0 | ||
|
|
7343b66cba | ||
|
|
55c7a955bc | ||
|
|
02e8715589 | ||
|
|
b19d599e78 | ||
|
|
98db5c64e9 | ||
|
|
cbc70e8d1f | ||
|
|
fbd0af36a9 | ||
|
|
cf6a81b1f0 | ||
|
|
7f9fb7c962 | ||
|
|
8b727d954f | ||
|
|
ef3fab259e | ||
|
|
e693a64bf5 | ||
|
|
b05e317c96 | ||
|
|
0744660347 | ||
|
|
96cc3ca3f7 | ||
|
|
c1ea856389 | ||
|
|
30ccc35721 | ||
|
|
6fd8b6983a | ||
|
|
15bdc9507e | ||
|
|
8cfc53adba | ||
|
|
7e73bf5223 | ||
|
|
e73940ecd8 | ||
|
|
487881f785 | ||
|
|
2c34e0fd73 | ||
|
|
98aa523b48 | ||
|
|
5b13fa3dd0 | ||
|
|
554a86cf2c | ||
|
|
97aa52b49e | ||
|
|
ee74cfbd89 | ||
|
|
38ea5d09ff | ||
|
|
2ef585ab53 | ||
|
|
195e017967 | ||
|
|
d53b6ed63d | ||
|
|
c40d1b648d | ||
|
|
bd14d877e5 | ||
|
|
5c95e13179 | ||
|
|
0e35341b7c | ||
|
|
469ca15cb5 | ||
|
|
4f8ea7c4f1 | ||
|
|
9c19d78e26 | ||
|
|
30cd0c51cc | ||
|
|
538f9837df | ||
|
|
8de96875af | ||
|
|
adbecadb0e | ||
|
|
d6270a9cad | ||
|
|
265b375fc1 | ||
|
|
9135f556f5 | ||
|
|
8ec394c7af | ||
|
|
acfd7b529d | ||
|
|
537c1e5313 | ||
|
|
1c108c70df | ||
|
|
42e521a759 | ||
|
|
432b17d255 | ||
|
|
215d95e43c | ||
|
|
03804c3b28 | ||
|
|
0639806b11 | ||
|
|
5ad9f7debc | ||
|
|
fb42a5ab24 | ||
|
|
7f0ad78dff | ||
|
|
46ce93f6a1 | ||
|
|
888b04c584 | ||
|
|
340d96e0cd | ||
|
|
7289e1b639 | ||
|
|
352fe09010 | ||
|
|
1bcf07c1c3 | ||
|
|
8b7d3f1beb | ||
|
|
dfa75801ca | ||
|
|
29f016d75d | ||
|
|
b476026121 | ||
|
|
200585ed62 | ||
|
|
b281762fd1 | ||
|
|
ecb0c6b188 | ||
|
|
6b109ed5bb | ||
|
|
eca133264d | ||
|
|
98f042dea9 | ||
|
|
749137e69c |
@@ -15,7 +15,7 @@ jobs:
|
||||
- 6.0/fpm-alpine/Dockerfile
|
||||
- 6.0/fpm/Dockerfile
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
|
||||
- uses: hadolint/hadolint-action@v3.1.0
|
||||
with:
|
||||
dockerfile: ${{ matrix.dockerfile }}
|
||||
@@ -31,24 +31,24 @@ jobs:
|
||||
contents: read
|
||||
steps:
|
||||
- name: 'Check out the repo'
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
|
||||
- name: 'Set up QEMU'
|
||||
uses: docker/setup-qemu-action@v2
|
||||
uses: docker/setup-qemu-action@v3
|
||||
with:
|
||||
platforms: 'arm64,arm'
|
||||
- name: 'Set up Docker Buildx'
|
||||
uses: docker/setup-buildx-action@v2
|
||||
uses: docker/setup-buildx-action@v3
|
||||
with:
|
||||
buildkitd-flags: --debug
|
||||
- name: 'Log in to DockerHub'
|
||||
if: github.event_name != 'pull_request'
|
||||
uses: docker/login-action@v2
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_HUB_TOKEN }}
|
||||
- name: 'Apache variant metadata'
|
||||
id: metadata-apache
|
||||
uses: docker/metadata-action@v4
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: |
|
||||
docker.io/martialblog/limesurvey
|
||||
@@ -59,7 +59,7 @@ jobs:
|
||||
latest=true
|
||||
suffix=-apache
|
||||
- name: 'Build and push latest Apache container images'
|
||||
uses: docker/build-push-action@v4
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: 6.0/apache
|
||||
push: true
|
||||
@@ -69,7 +69,7 @@ jobs:
|
||||
|
||||
- name: 'FPM variant metadata'
|
||||
id: metadata-fpm
|
||||
uses: docker/metadata-action@v4
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: |
|
||||
docker.io/martialblog/limesurvey
|
||||
@@ -80,7 +80,7 @@ jobs:
|
||||
latest=false
|
||||
suffix=-fpm
|
||||
- name: 'Build and push latest fpm container images'
|
||||
uses: docker/build-push-action@v4
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: 6.0/fpm
|
||||
push: true
|
||||
@@ -90,7 +90,7 @@ jobs:
|
||||
|
||||
- name: 'FPM Alpine variant metadata'
|
||||
id: metadata-fpm-alpine
|
||||
uses: docker/metadata-action@v4
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: |
|
||||
docker.io/martialblog/limesurvey
|
||||
@@ -101,7 +101,7 @@ jobs:
|
||||
latest=false
|
||||
suffix=-fpm-alpine
|
||||
- name: 'Build and push latest fpm-alpine container images'
|
||||
uses: docker/build-push-action@v4
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: 6.0/fpm-alpine
|
||||
push: true
|
||||
|
||||
@@ -15,7 +15,7 @@ jobs:
|
||||
- 5.0/fpm-alpine/Dockerfile
|
||||
- 5.0/fpm/Dockerfile
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
|
||||
- uses: hadolint/hadolint-action@v3.1.0
|
||||
with:
|
||||
dockerfile: ${{ matrix.dockerfile }}
|
||||
@@ -31,24 +31,24 @@ jobs:
|
||||
contents: read
|
||||
steps:
|
||||
- name: 'Check out the repo'
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
|
||||
- name: 'Set up QEMU'
|
||||
uses: docker/setup-qemu-action@v2
|
||||
uses: docker/setup-qemu-action@v3
|
||||
with:
|
||||
platforms: 'arm64,arm'
|
||||
- name: 'Set up Docker Buildx'
|
||||
uses: docker/setup-buildx-action@v2
|
||||
uses: docker/setup-buildx-action@v3
|
||||
with:
|
||||
buildkitd-flags: --debug
|
||||
- name: 'Log in to DockerHub'
|
||||
if: github.event_name != 'pull_request'
|
||||
uses: docker/login-action@v2
|
||||
uses: docker/login-action@v3
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_HUB_TOKEN }}
|
||||
- name: 'Apache variant metadata'
|
||||
id: metadata-apache
|
||||
uses: docker/metadata-action@v4
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: |
|
||||
docker.io/martialblog/limesurvey
|
||||
@@ -59,7 +59,7 @@ jobs:
|
||||
latest=false
|
||||
suffix=-apache
|
||||
- name: 'Build and push LTS apache container images'
|
||||
uses: docker/build-push-action@v4
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: 5.0/apache
|
||||
push: true
|
||||
@@ -69,7 +69,7 @@ jobs:
|
||||
|
||||
- name: 'FPM variant metadata'
|
||||
id: metadata-fpm
|
||||
uses: docker/metadata-action@v4
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: |
|
||||
docker.io/martialblog/limesurvey
|
||||
@@ -80,7 +80,7 @@ jobs:
|
||||
latest=false
|
||||
suffix=-fpm
|
||||
- name: 'Build and push LTS fpm container images'
|
||||
uses: docker/build-push-action@v4
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: 5.0/fpm
|
||||
push: true
|
||||
@@ -90,7 +90,7 @@ jobs:
|
||||
|
||||
- name: 'FPM Alpine variant metadata'
|
||||
id: metadata-fpm-alpine
|
||||
uses: docker/metadata-action@v4
|
||||
uses: docker/metadata-action@v5
|
||||
with:
|
||||
images: |
|
||||
docker.io/martialblog/limesurvey
|
||||
@@ -101,7 +101,7 @@ jobs:
|
||||
latest=false
|
||||
suffix=-fpm-alpine
|
||||
- name: 'Build and push LTS fpm-alpine container images'
|
||||
uses: docker/build-push-action@v4
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: 5.0/fpm-alpine
|
||||
push: true
|
||||
|
||||
2
.github/workflows/lint-dockerfiles.yaml
vendored
2
.github/workflows/lint-dockerfiles.yaml
vendored
@@ -17,7 +17,7 @@ jobs:
|
||||
- 6.0/fpm/Dockerfile
|
||||
runs-on: ubuntu-latest
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
|
||||
- uses: hadolint/hadolint-action@v3.1.0
|
||||
with:
|
||||
dockerfile: ${{ matrix.dockerfile }}
|
||||
|
||||
@@ -22,18 +22,18 @@ jobs:
|
||||
- linux/arm64
|
||||
steps:
|
||||
- name: 'Check out the repo'
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
|
||||
|
||||
- name: 'Set up QEMU'
|
||||
uses: docker/setup-qemu-action@v2
|
||||
uses: docker/setup-qemu-action@v3
|
||||
with:
|
||||
platforms: 'arm64,arm'
|
||||
|
||||
- name: 'Set up Docker Buildx'
|
||||
uses: docker/setup-buildx-action@v2
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: 'Build Container images'
|
||||
uses: docker/build-push-action@v4
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: 6.0/${{ matrix.context }}
|
||||
push: false
|
||||
|
||||
@@ -14,18 +14,18 @@ jobs:
|
||||
- fpm
|
||||
steps:
|
||||
- name: 'Check out the repo'
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
|
||||
|
||||
- name: 'Set up QEMU'
|
||||
uses: docker/setup-qemu-action@v2
|
||||
uses: docker/setup-qemu-action@v3
|
||||
with:
|
||||
platforms: 'arm64,arm'
|
||||
|
||||
- name: 'Set up Docker Buildx'
|
||||
uses: docker/setup-buildx-action@v2
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: 'Build Container images'
|
||||
uses: docker/build-push-action@v4
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: 6.0/${{ matrix.context }}
|
||||
push: false
|
||||
|
||||
@@ -14,16 +14,16 @@ jobs:
|
||||
- fpm
|
||||
steps:
|
||||
- name: 'Check out the repo'
|
||||
uses: actions/checkout@v3
|
||||
uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4
|
||||
|
||||
- name: 'Set up QEMU'
|
||||
uses: docker/setup-qemu-action@v2
|
||||
uses: docker/setup-qemu-action@v3
|
||||
|
||||
- name: 'Set up Docker Buildx'
|
||||
uses: docker/setup-buildx-action@v2
|
||||
uses: docker/setup-buildx-action@v3
|
||||
|
||||
- name: 'Build Container images'
|
||||
uses: docker/build-push-action@v4
|
||||
uses: docker/build-push-action@v5
|
||||
with:
|
||||
context: 5.0/${{ matrix.context }}
|
||||
push: false
|
||||
|
||||
@@ -6,6 +6,8 @@ RUN set -ex; \
|
||||
apt-get update; \
|
||||
apt-get install -y --no-install-recommends \
|
||||
netcat-openbsd \
|
||||
libldap-common \
|
||||
libsasl2-modules \
|
||||
; \
|
||||
\
|
||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
||||
@@ -79,9 +81,9 @@ RUN a2enmod headers rewrite remoteip; \
|
||||
# Use the default production configuration
|
||||
RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini"
|
||||
|
||||
ARG version="5.6.27+230621"
|
||||
ARG sha256_checksum="cdcaa951ade6d1f9476a0b0d42cc4650e697c52923fb5b5bf9f3a934c21be59d"
|
||||
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/${version}.tar.gz"
|
||||
ARG version="5.6.63+240508"
|
||||
ARG sha256_checksum="a027fdaa78e07d960987f64b807719f3e85d32753ec8021e35eddd26aa3604e3"
|
||||
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/refs/tags/${version}.tar.gz"
|
||||
ARG USER=www-data
|
||||
ARG LISTEN_PORT=8080
|
||||
ENV LIMESURVEY_VERSION=$version
|
||||
|
||||
@@ -1,6 +1,23 @@
|
||||
#!/bin/bash
|
||||
# Entrypoint for Docker Container
|
||||
|
||||
file_env() {
|
||||
local v="$1"
|
||||
local fv="${v}_FILE"
|
||||
local default="${2:-}"
|
||||
if [ "${!v:-}" ] && [ "${!fv:-}" ]; then
|
||||
echo >&2 "$v and $fv are exclusive"
|
||||
exit 1
|
||||
fi
|
||||
local val="$default"
|
||||
if [ "${!v:-}" ]; then
|
||||
val="${!v}"
|
||||
elif [ "${!fv:-}" ]; then
|
||||
val="$(< "${!fv}")"
|
||||
fi
|
||||
export "$v"="$val"
|
||||
unset "$fv"
|
||||
}
|
||||
|
||||
DB_TYPE=${DB_TYPE:-'mysql'}
|
||||
DB_HOST=${DB_HOST:-'mysql'}
|
||||
@@ -9,19 +26,19 @@ DB_SOCK=${DB_SOCK:-}
|
||||
DB_NAME=${DB_NAME:-'limesurvey'}
|
||||
DB_TABLE_PREFIX=${DB_TABLE_PREFIX:-'lime_'}
|
||||
DB_USERNAME=${DB_USERNAME:-'limesurvey'}
|
||||
DB_PASSWORD=${DB_PASSWORD:-}
|
||||
DB_MYSQL_ENGINE=${DB_MYSQL_ENGINE:-'MyISAM'}
|
||||
file_env 'DB_PASSWORD'
|
||||
|
||||
ENCRYPT_KEYPAIR=${ENCRYPT_KEYPAIR:-}
|
||||
ENCRYPT_PUBLIC_KEY=${ENCRYPT_PUBLIC_KEY:-}
|
||||
ENCRYPT_SECRET_KEY=${ENCRYPT_SECRET_KEY:-}
|
||||
ENCRYPT_NONCE=${ENCRYPT_NONCE:-}
|
||||
ENCRYPT_SECRET_BOX_KEY=${ENCRYPT_SECRET_BOX_KEY:-}
|
||||
file_env 'ENCRYPT_KEYPAIR'
|
||||
file_env 'ENCRYPT_PUBLIC_KEY'
|
||||
file_env 'ENCRYPT_SECRET_KEY'
|
||||
file_env 'ENCRYPT_NONCE'
|
||||
file_env 'ENCRYPT_SECRET_BOX_KEY'
|
||||
|
||||
ADMIN_USER=${ADMIN_USER:-'admin'}
|
||||
ADMIN_NAME=${ADMIN_NAME:-'admin'}
|
||||
ADMIN_EMAIL=${ADMIN_EMAIL:-'foobar@example.com'}
|
||||
ADMIN_PASSWORD=${ADMIN_PASSWORD:-}
|
||||
file_env 'ADMIN_PASSWORD'
|
||||
|
||||
BASE_URL=${BASE_URL:-}
|
||||
PUBLIC_URL=${PUBLIC_URL:-}
|
||||
@@ -35,12 +52,12 @@ DEBUG_SQL=${DEBUG_SQL:-0}
|
||||
LISTEN_PORT=${LISTEN_PORT:-"8080"}
|
||||
|
||||
if [ -z "$DB_PASSWORD" ]; then
|
||||
echo >&2 'Error: Missing DB_PASSWORD'
|
||||
echo >&2 'Error: Missing DB_PASSWORD or DB_PASSWORD_FILE'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$ADMIN_PASSWORD" ]; then
|
||||
echo >&2 'Error: Missing ADMIN_PASSWORD'
|
||||
echo >&2 'Error: Missing ADMIN_PASSWORD or ADMIN_PASSWORD_FILE'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -136,7 +153,7 @@ if [ -f application/config/security.php ]; then
|
||||
echo 'Info: security.php already provisioned'
|
||||
else
|
||||
echo 'Info: Creating security.php'
|
||||
if [ -n "$ENCRYPT_KEYPAIR" ]; then
|
||||
if [ -n "$ENCRYPT_KEYPAIR" ] || [ -n "$ENCRYPT_SECRET_BOX_KEY" ]; then
|
||||
|
||||
cat <<EOF > application/config/security.php
|
||||
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
|
||||
|
||||
@@ -2,7 +2,12 @@ FROM docker.io/php:8.0-fpm-alpine
|
||||
LABEL maintainer="markus@martialblog.de"
|
||||
|
||||
# Install OS dependencies
|
||||
RUN apk add --no-cache netcat-openbsd bash
|
||||
RUN set -ex; \
|
||||
apk add --no-cache \
|
||||
netcat-openbsd \
|
||||
libsasl \
|
||||
libldap \
|
||||
bash
|
||||
|
||||
# Install PHP Plugins
|
||||
# hadolint ignore=SC2086
|
||||
@@ -46,9 +51,9 @@ RUN set -ex; \
|
||||
apk add --no-cache --no-network --virtual .limesurvey-phpext-rundeps $runDeps; \
|
||||
apk del --no-cache --no-network .build-deps
|
||||
|
||||
ARG version="5.6.27+230621"
|
||||
ARG sha256_checksum="cdcaa951ade6d1f9476a0b0d42cc4650e697c52923fb5b5bf9f3a934c21be59d"
|
||||
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/${version}.tar.gz"
|
||||
ARG version="5.6.63+240508"
|
||||
ARG sha256_checksum="a027fdaa78e07d960987f64b807719f3e85d32753ec8021e35eddd26aa3604e3"
|
||||
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/refs/tags/${version}.tar.gz"
|
||||
ARG USER=www-data
|
||||
ENV LIMESURVEY_VERSION=$version
|
||||
|
||||
|
||||
@@ -1,6 +1,23 @@
|
||||
#!/bin/bash
|
||||
# Entrypoint for Docker Container
|
||||
|
||||
file_env() {
|
||||
local v="$1"
|
||||
local fv="${v}_FILE"
|
||||
local default="${2:-}"
|
||||
if [ "${!v:-}" ] && [ "${!fv:-}" ]; then
|
||||
echo >&2 "$v and $fv are exclusive"
|
||||
exit 1
|
||||
fi
|
||||
local val="$default"
|
||||
if [ "${!v:-}" ]; then
|
||||
val="${!v}"
|
||||
elif [ "${!fv:-}" ]; then
|
||||
val="$(< "${!fv}")"
|
||||
fi
|
||||
export "$v"="$val"
|
||||
unset "$fv"
|
||||
}
|
||||
|
||||
DB_TYPE=${DB_TYPE:-'mysql'}
|
||||
DB_HOST=${DB_HOST:-'mysql'}
|
||||
@@ -9,19 +26,19 @@ DB_SOCK=${DB_SOCK:-}
|
||||
DB_NAME=${DB_NAME:-'limesurvey'}
|
||||
DB_TABLE_PREFIX=${DB_TABLE_PREFIX:-'lime_'}
|
||||
DB_USERNAME=${DB_USERNAME:-'limesurvey'}
|
||||
DB_PASSWORD=${DB_PASSWORD:-}
|
||||
DB_MYSQL_ENGINE=${DB_MYSQL_ENGINE:-'MyISAM'}
|
||||
file_env 'DB_PASSWORD'
|
||||
|
||||
ENCRYPT_KEYPAIR=${ENCRYPT_KEYPAIR:-}
|
||||
ENCRYPT_PUBLIC_KEY=${ENCRYPT_PUBLIC_KEY:-}
|
||||
ENCRYPT_SECRET_KEY=${ENCRYPT_SECRET_KEY:-}
|
||||
ENCRYPT_NONCE=${ENCRYPT_NONCE:-}
|
||||
ENCRYPT_SECRET_BOX_KEY=${ENCRYPT_SECRET_BOX_KEY:-}
|
||||
file_env 'ENCRYPT_KEYPAIR'
|
||||
file_env 'ENCRYPT_PUBLIC_KEY'
|
||||
file_env 'ENCRYPT_SECRET_KEY'
|
||||
file_env 'ENCRYPT_NONCE'
|
||||
file_env 'ENCRYPT_SECRET_BOX_KEY'
|
||||
|
||||
ADMIN_USER=${ADMIN_USER:-'admin'}
|
||||
ADMIN_NAME=${ADMIN_NAME:-'admin'}
|
||||
ADMIN_EMAIL=${ADMIN_EMAIL:-'foobar@example.com'}
|
||||
ADMIN_PASSWORD=${ADMIN_PASSWORD:-}
|
||||
file_env 'ADMIN_PASSWORD'
|
||||
|
||||
BASE_URL=${BASE_URL:-}
|
||||
PUBLIC_URL=${PUBLIC_URL:-}
|
||||
@@ -33,12 +50,12 @@ DEBUG=${DEBUG:-0}
|
||||
DEBUG_SQL=${DEBUG_SQL:-0}
|
||||
|
||||
if [ -z "$DB_PASSWORD" ]; then
|
||||
echo >&2 'Error: Missing DB_PASSWORD'
|
||||
echo >&2 'Error: Missing DB_PASSWORD or DB_PASSWORD_FILE'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$ADMIN_PASSWORD" ]; then
|
||||
echo >&2 'Error: Missing ADMIN_PASSWORD'
|
||||
echo >&2 'Error: Missing ADMIN_PASSWORD or ADMIN_PASSWORD_FILE'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -129,7 +146,7 @@ if [ -f application/config/security.php ]; then
|
||||
echo 'Info: security.php already provisioned'
|
||||
else
|
||||
echo 'Info: Creating security.php'
|
||||
if [ -n "$ENCRYPT_KEYPAIR" ]; then
|
||||
if [ -n "$ENCRYPT_KEYPAIR" ] || [ -n "$ENCRYPT_SECRET_BOX_KEY" ]; then
|
||||
|
||||
cat <<EOF > application/config/security.php
|
||||
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
|
||||
|
||||
@@ -6,6 +6,8 @@ RUN set -ex; \
|
||||
apt-get update; \
|
||||
apt-get install -y --no-install-recommends \
|
||||
netcat-openbsd \
|
||||
libldap-common \
|
||||
libsasl2-modules \
|
||||
; \
|
||||
\
|
||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
||||
@@ -66,9 +68,9 @@ RUN set -ex; \
|
||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
ARG version="5.6.27+230621"
|
||||
ARG sha256_checksum="cdcaa951ade6d1f9476a0b0d42cc4650e697c52923fb5b5bf9f3a934c21be59d"
|
||||
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/${version}.tar.gz"
|
||||
ARG version="5.6.63+240508"
|
||||
ARG sha256_checksum="a027fdaa78e07d960987f64b807719f3e85d32753ec8021e35eddd26aa3604e3"
|
||||
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/refs/tags/${version}.tar.gz"
|
||||
ARG USER=www-data
|
||||
ENV LIMESURVEY_VERSION=$version
|
||||
|
||||
|
||||
@@ -1,6 +1,23 @@
|
||||
#!/bin/bash
|
||||
# Entrypoint for Docker Container
|
||||
|
||||
file_env() {
|
||||
local v="$1"
|
||||
local fv="${v}_FILE"
|
||||
local default="${2:-}"
|
||||
if [ "${!v:-}" ] && [ "${!fv:-}" ]; then
|
||||
echo >&2 "$v and $fv are exclusive"
|
||||
exit 1
|
||||
fi
|
||||
local val="$default"
|
||||
if [ "${!v:-}" ]; then
|
||||
val="${!v}"
|
||||
elif [ "${!fv:-}" ]; then
|
||||
val="$(< "${!fv}")"
|
||||
fi
|
||||
export "$v"="$val"
|
||||
unset "$fv"
|
||||
}
|
||||
|
||||
DB_TYPE=${DB_TYPE:-'mysql'}
|
||||
DB_HOST=${DB_HOST:-'mysql'}
|
||||
@@ -9,19 +26,19 @@ DB_SOCK=${DB_SOCK:-}
|
||||
DB_NAME=${DB_NAME:-'limesurvey'}
|
||||
DB_TABLE_PREFIX=${DB_TABLE_PREFIX:-'lime_'}
|
||||
DB_USERNAME=${DB_USERNAME:-'limesurvey'}
|
||||
DB_PASSWORD=${DB_PASSWORD:-}
|
||||
DB_MYSQL_ENGINE=${DB_MYSQL_ENGINE:-'MyISAM'}
|
||||
file_env 'DB_PASSWORD'
|
||||
|
||||
ENCRYPT_KEYPAIR=${ENCRYPT_KEYPAIR:-}
|
||||
ENCRYPT_PUBLIC_KEY=${ENCRYPT_PUBLIC_KEY:-}
|
||||
ENCRYPT_SECRET_KEY=${ENCRYPT_SECRET_KEY:-}
|
||||
ENCRYPT_NONCE=${ENCRYPT_NONCE:-}
|
||||
ENCRYPT_SECRET_BOX_KEY=${ENCRYPT_SECRET_BOX_KEY:-}
|
||||
file_env 'ENCRYPT_KEYPAIR'
|
||||
file_env 'ENCRYPT_PUBLIC_KEY'
|
||||
file_env 'ENCRYPT_SECRET_KEY'
|
||||
file_env 'ENCRYPT_NONCE'
|
||||
file_env 'ENCRYPT_SECRET_BOX_KEY'
|
||||
|
||||
ADMIN_USER=${ADMIN_USER:-'admin'}
|
||||
ADMIN_NAME=${ADMIN_NAME:-'admin'}
|
||||
ADMIN_EMAIL=${ADMIN_EMAIL:-'foobar@example.com'}
|
||||
ADMIN_PASSWORD=${ADMIN_PASSWORD:-}
|
||||
file_env 'ADMIN_PASSWORD'
|
||||
|
||||
BASE_URL=${BASE_URL:-}
|
||||
PUBLIC_URL=${PUBLIC_URL:-}
|
||||
@@ -33,12 +50,12 @@ DEBUG=${DEBUG:-0}
|
||||
DEBUG_SQL=${DEBUG_SQL:-0}
|
||||
|
||||
if [ -z "$DB_PASSWORD" ]; then
|
||||
echo >&2 'Error: Missing DB_PASSWORD'
|
||||
echo >&2 'Error: Missing DB_PASSWORD or DB_PASSWORD_FILE'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$ADMIN_PASSWORD" ]; then
|
||||
echo >&2 'Error: Missing ADMIN_PASSWORD'
|
||||
echo >&2 'Error: Missing ADMIN_PASSWORD or ADMIN_PASSWORD_FILE'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -129,7 +146,7 @@ if [ -f application/config/security.php ]; then
|
||||
echo 'Info: security.php already provisioned'
|
||||
else
|
||||
echo 'Info: Creating security.php'
|
||||
if [ -n "$ENCRYPT_KEYPAIR" ]; then
|
||||
if [ -n "$ENCRYPT_KEYPAIR" ] || [ -n "$ENCRYPT_SECRET_BOX_KEY" ]; then
|
||||
|
||||
cat <<EOF > application/config/security.php
|
||||
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM docker.io/php:8.0-apache
|
||||
FROM docker.io/php:8.1-apache
|
||||
LABEL maintainer="markus@martialblog.de"
|
||||
|
||||
# Install OS dependencies
|
||||
@@ -6,6 +6,8 @@ RUN set -ex; \
|
||||
apt-get update; \
|
||||
apt-get install -y --no-install-recommends \
|
||||
netcat-openbsd \
|
||||
libldap-common \
|
||||
libsasl2-modules \
|
||||
; \
|
||||
\
|
||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
||||
@@ -62,6 +64,13 @@ RUN set -ex; \
|
||||
| cut -d: -f1 \
|
||||
| sort -u \
|
||||
| xargs -rt apt-mark manual; \
|
||||
ldd "$(php -r 'echo ini_get("extension_dir");')"/*.so \
|
||||
| awk '$3 ~ /^\/lib/ { print "/usr"$3 }' \
|
||||
| sort -u \
|
||||
| xargs -r dpkg-query -S \
|
||||
| cut -d: -f1 \
|
||||
| sort -u \
|
||||
| xargs -rt apt-mark manual; \
|
||||
\
|
||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
@@ -79,9 +88,9 @@ RUN a2enmod headers rewrite remoteip; \
|
||||
# Use the default production configuration
|
||||
RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini"
|
||||
|
||||
ARG version="6.1.4+230620"
|
||||
ARG sha256_checksum="2ab8ea92ac4fcebd729e7acc052517666fd529563d8e86a7edb19f38758566e1"
|
||||
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/${version}.tar.gz"
|
||||
ARG version="6.5.7+240515"
|
||||
ARG sha256_checksum="a9d8b31fddba18054a472b3bcd1fca185e901e978f675883a9b0e0ec92a01c0b"
|
||||
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/refs/tags/${version}.tar.gz"
|
||||
ARG USER=www-data
|
||||
ARG LISTEN_PORT=8080
|
||||
ENV LIMESURVEY_VERSION=$version
|
||||
|
||||
@@ -1,6 +1,23 @@
|
||||
#!/bin/bash
|
||||
# Entrypoint for Docker Container
|
||||
|
||||
file_env() {
|
||||
local v="$1"
|
||||
local fv="${v}_FILE"
|
||||
local default="${2:-}"
|
||||
if [ "${!v:-}" ] && [ "${!fv:-}" ]; then
|
||||
echo >&2 "$v and $fv are exclusive"
|
||||
exit 1
|
||||
fi
|
||||
local val="$default"
|
||||
if [ "${!v:-}" ]; then
|
||||
val="${!v}"
|
||||
elif [ "${!fv:-}" ]; then
|
||||
val="$(< "${!fv}")"
|
||||
fi
|
||||
export "$v"="$val"
|
||||
unset "$fv"
|
||||
}
|
||||
|
||||
DB_TYPE=${DB_TYPE:-'mysql'}
|
||||
DB_HOST=${DB_HOST:-'mysql'}
|
||||
@@ -9,19 +26,19 @@ DB_SOCK=${DB_SOCK:-}
|
||||
DB_NAME=${DB_NAME:-'limesurvey'}
|
||||
DB_TABLE_PREFIX=${DB_TABLE_PREFIX:-'lime_'}
|
||||
DB_USERNAME=${DB_USERNAME:-'limesurvey'}
|
||||
DB_PASSWORD=${DB_PASSWORD:-}
|
||||
DB_MYSQL_ENGINE=${DB_MYSQL_ENGINE:-'MyISAM'}
|
||||
file_env 'DB_PASSWORD'
|
||||
|
||||
ENCRYPT_KEYPAIR=${ENCRYPT_KEYPAIR:-}
|
||||
ENCRYPT_PUBLIC_KEY=${ENCRYPT_PUBLIC_KEY:-}
|
||||
ENCRYPT_SECRET_KEY=${ENCRYPT_SECRET_KEY:-}
|
||||
ENCRYPT_NONCE=${ENCRYPT_NONCE:-}
|
||||
ENCRYPT_SECRET_BOX_KEY=${ENCRYPT_SECRET_BOX_KEY:-}
|
||||
file_env 'ENCRYPT_KEYPAIR'
|
||||
file_env 'ENCRYPT_PUBLIC_KEY'
|
||||
file_env 'ENCRYPT_SECRET_KEY'
|
||||
file_env 'ENCRYPT_NONCE'
|
||||
file_env 'ENCRYPT_SECRET_BOX_KEY'
|
||||
|
||||
ADMIN_USER=${ADMIN_USER:-'admin'}
|
||||
ADMIN_NAME=${ADMIN_NAME:-'admin'}
|
||||
ADMIN_EMAIL=${ADMIN_EMAIL:-'foobar@example.com'}
|
||||
ADMIN_PASSWORD=${ADMIN_PASSWORD:-}
|
||||
file_env 'ADMIN_PASSWORD'
|
||||
|
||||
BASE_URL=${BASE_URL:-}
|
||||
PUBLIC_URL=${PUBLIC_URL:-}
|
||||
@@ -35,12 +52,12 @@ DEBUG_SQL=${DEBUG_SQL:-0}
|
||||
LISTEN_PORT=${LISTEN_PORT:-"8080"}
|
||||
|
||||
if [ -z "$DB_PASSWORD" ]; then
|
||||
echo >&2 'Error: Missing DB_PASSWORD'
|
||||
echo >&2 'Error: Missing DB_PASSWORD or DB_PASSWORD_FILE'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$ADMIN_PASSWORD" ]; then
|
||||
echo >&2 'Error: Missing ADMIN_PASSWORD'
|
||||
echo >&2 'Error: Missing ADMIN_PASSWORD or ADMIN_PASSWORD_FILE'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -136,7 +153,7 @@ if [ -f application/config/security.php ]; then
|
||||
echo 'Info: security.php already provisioned'
|
||||
else
|
||||
echo 'Info: Creating security.php'
|
||||
if [ -n "$ENCRYPT_KEYPAIR" ]; then
|
||||
if [ -n "$ENCRYPT_KEYPAIR" ] || [ -n "$ENCRYPT_SECRET_BOX_KEY" ]; then
|
||||
|
||||
cat <<EOF > application/config/security.php
|
||||
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
|
||||
|
||||
@@ -1,8 +1,13 @@
|
||||
FROM docker.io/php:8.0-fpm-alpine
|
||||
FROM docker.io/php:8.1-fpm-alpine
|
||||
LABEL maintainer="markus@martialblog.de"
|
||||
|
||||
# Install OS dependencies
|
||||
RUN apk add --no-cache netcat-openbsd bash
|
||||
RUN set -ex; \
|
||||
apk add --no-cache \
|
||||
netcat-openbsd \
|
||||
libsasl \
|
||||
libldap \
|
||||
bash
|
||||
|
||||
# Install PHP Plugins
|
||||
# hadolint ignore=SC2086
|
||||
@@ -46,9 +51,9 @@ RUN set -ex; \
|
||||
apk add --no-cache --no-network --virtual .limesurvey-phpext-rundeps $runDeps; \
|
||||
apk del --no-cache --no-network .build-deps
|
||||
|
||||
ARG version="6.1.4+230620"
|
||||
ARG sha256_checksum="2ab8ea92ac4fcebd729e7acc052517666fd529563d8e86a7edb19f38758566e1"
|
||||
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/${version}.tar.gz"
|
||||
ARG version="6.5.7+240515"
|
||||
ARG sha256_checksum="a9d8b31fddba18054a472b3bcd1fca185e901e978f675883a9b0e0ec92a01c0b"
|
||||
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/refs/tags/${version}.tar.gz"
|
||||
ARG USER=www-data
|
||||
ENV LIMESURVEY_VERSION=$version
|
||||
|
||||
|
||||
@@ -1,6 +1,23 @@
|
||||
#!/bin/bash
|
||||
# Entrypoint for Docker Container
|
||||
|
||||
file_env() {
|
||||
local v="$1"
|
||||
local fv="${v}_FILE"
|
||||
local default="${2:-}"
|
||||
if [ "${!v:-}" ] && [ "${!fv:-}" ]; then
|
||||
echo >&2 "$v and $fv are exclusive"
|
||||
exit 1
|
||||
fi
|
||||
local val="$default"
|
||||
if [ "${!v:-}" ]; then
|
||||
val="${!v}"
|
||||
elif [ "${!fv:-}" ]; then
|
||||
val="$(< "${!fv}")"
|
||||
fi
|
||||
export "$v"="$val"
|
||||
unset "$fv"
|
||||
}
|
||||
|
||||
DB_TYPE=${DB_TYPE:-'mysql'}
|
||||
DB_HOST=${DB_HOST:-'mysql'}
|
||||
@@ -9,19 +26,19 @@ DB_SOCK=${DB_SOCK:-}
|
||||
DB_NAME=${DB_NAME:-'limesurvey'}
|
||||
DB_TABLE_PREFIX=${DB_TABLE_PREFIX:-'lime_'}
|
||||
DB_USERNAME=${DB_USERNAME:-'limesurvey'}
|
||||
DB_PASSWORD=${DB_PASSWORD:-}
|
||||
DB_MYSQL_ENGINE=${DB_MYSQL_ENGINE:-'MyISAM'}
|
||||
file_env 'DB_PASSWORD'
|
||||
|
||||
ENCRYPT_KEYPAIR=${ENCRYPT_KEYPAIR:-}
|
||||
ENCRYPT_PUBLIC_KEY=${ENCRYPT_PUBLIC_KEY:-}
|
||||
ENCRYPT_SECRET_KEY=${ENCRYPT_SECRET_KEY:-}
|
||||
ENCRYPT_NONCE=${ENCRYPT_NONCE:-}
|
||||
ENCRYPT_SECRET_BOX_KEY=${ENCRYPT_SECRET_BOX_KEY:-}
|
||||
file_env 'ENCRYPT_KEYPAIR'
|
||||
file_env 'ENCRYPT_PUBLIC_KEY'
|
||||
file_env 'ENCRYPT_SECRET_KEY'
|
||||
file_env 'ENCRYPT_NONCE'
|
||||
file_env 'ENCRYPT_SECRET_BOX_KEY'
|
||||
|
||||
ADMIN_USER=${ADMIN_USER:-'admin'}
|
||||
ADMIN_NAME=${ADMIN_NAME:-'admin'}
|
||||
ADMIN_EMAIL=${ADMIN_EMAIL:-'foobar@example.com'}
|
||||
ADMIN_PASSWORD=${ADMIN_PASSWORD:-}
|
||||
file_env 'ADMIN_PASSWORD'
|
||||
|
||||
BASE_URL=${BASE_URL:-}
|
||||
PUBLIC_URL=${PUBLIC_URL:-}
|
||||
@@ -33,12 +50,12 @@ DEBUG=${DEBUG:-0}
|
||||
DEBUG_SQL=${DEBUG_SQL:-0}
|
||||
|
||||
if [ -z "$DB_PASSWORD" ]; then
|
||||
echo >&2 'Error: Missing DB_PASSWORD'
|
||||
echo >&2 'Error: Missing DB_PASSWORD or DB_PASSWORD_FILE'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$ADMIN_PASSWORD" ]; then
|
||||
echo >&2 'Error: Missing ADMIN_PASSWORD'
|
||||
echo >&2 'Error: Missing ADMIN_PASSWORD or ADMIN_PASSWORD_FILE'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -129,7 +146,7 @@ if [ -f application/config/security.php ]; then
|
||||
echo 'Info: security.php already provisioned'
|
||||
else
|
||||
echo 'Info: Creating security.php'
|
||||
if [ -n "$ENCRYPT_KEYPAIR" ]; then
|
||||
if [ -n "$ENCRYPT_KEYPAIR" ] || [ -n "$ENCRYPT_SECRET_BOX_KEY" ]; then
|
||||
|
||||
cat <<EOF > application/config/security.php
|
||||
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
FROM docker.io/php:8.0-fpm
|
||||
FROM docker.io/php:8.1-fpm
|
||||
LABEL maintainer="markus@martialblog.de"
|
||||
|
||||
# Install OS dependencies
|
||||
@@ -6,6 +6,8 @@ RUN set -ex; \
|
||||
apt-get update; \
|
||||
apt-get install -y --no-install-recommends \
|
||||
netcat-openbsd \
|
||||
libldap-common \
|
||||
libsasl2-modules \
|
||||
; \
|
||||
\
|
||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
||||
@@ -62,13 +64,20 @@ RUN set -ex; \
|
||||
| cut -d: -f1 \
|
||||
| sort -u \
|
||||
| xargs -rt apt-mark manual; \
|
||||
ldd "$(php -r 'echo ini_get("extension_dir");')"/*.so \
|
||||
| awk '$3 ~ /^\/lib/ { print "/usr"$3 }' \
|
||||
| sort -u \
|
||||
| xargs -r dpkg-query -S \
|
||||
| cut -d: -f1 \
|
||||
| sort -u \
|
||||
| xargs -rt apt-mark manual; \
|
||||
\
|
||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
|
||||
ARG version="6.1.4+230620"
|
||||
ARG sha256_checksum="2ab8ea92ac4fcebd729e7acc052517666fd529563d8e86a7edb19f38758566e1"
|
||||
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/${version}.tar.gz"
|
||||
ARG version="6.5.7+240515"
|
||||
ARG sha256_checksum="a9d8b31fddba18054a472b3bcd1fca185e901e978f675883a9b0e0ec92a01c0b"
|
||||
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/refs/tags/${version}.tar.gz"
|
||||
ARG USER=www-data
|
||||
ENV LIMESURVEY_VERSION=$version
|
||||
|
||||
|
||||
@@ -1,6 +1,23 @@
|
||||
#!/bin/bash
|
||||
# Entrypoint for Docker Container
|
||||
|
||||
file_env() {
|
||||
local v="$1"
|
||||
local fv="${v}_FILE"
|
||||
local default="${2:-}"
|
||||
if [ "${!v:-}" ] && [ "${!fv:-}" ]; then
|
||||
echo >&2 "$v and $fv are exclusive"
|
||||
exit 1
|
||||
fi
|
||||
local val="$default"
|
||||
if [ "${!v:-}" ]; then
|
||||
val="${!v}"
|
||||
elif [ "${!fv:-}" ]; then
|
||||
val="$(< "${!fv}")"
|
||||
fi
|
||||
export "$v"="$val"
|
||||
unset "$fv"
|
||||
}
|
||||
|
||||
DB_TYPE=${DB_TYPE:-'mysql'}
|
||||
DB_HOST=${DB_HOST:-'mysql'}
|
||||
@@ -9,19 +26,19 @@ DB_SOCK=${DB_SOCK:-}
|
||||
DB_NAME=${DB_NAME:-'limesurvey'}
|
||||
DB_TABLE_PREFIX=${DB_TABLE_PREFIX:-'lime_'}
|
||||
DB_USERNAME=${DB_USERNAME:-'limesurvey'}
|
||||
DB_PASSWORD=${DB_PASSWORD:-}
|
||||
DB_MYSQL_ENGINE=${DB_MYSQL_ENGINE:-'MyISAM'}
|
||||
file_env 'DB_PASSWORD'
|
||||
|
||||
ENCRYPT_KEYPAIR=${ENCRYPT_KEYPAIR:-}
|
||||
ENCRYPT_PUBLIC_KEY=${ENCRYPT_PUBLIC_KEY:-}
|
||||
ENCRYPT_SECRET_KEY=${ENCRYPT_SECRET_KEY:-}
|
||||
ENCRYPT_NONCE=${ENCRYPT_NONCE:-}
|
||||
ENCRYPT_SECRET_BOX_KEY=${ENCRYPT_SECRET_BOX_KEY:-}
|
||||
file_env 'ENCRYPT_KEYPAIR'
|
||||
file_env 'ENCRYPT_PUBLIC_KEY'
|
||||
file_env 'ENCRYPT_SECRET_KEY'
|
||||
file_env 'ENCRYPT_NONCE'
|
||||
file_env 'ENCRYPT_SECRET_BOX_KEY'
|
||||
|
||||
ADMIN_USER=${ADMIN_USER:-'admin'}
|
||||
ADMIN_NAME=${ADMIN_NAME:-'admin'}
|
||||
ADMIN_EMAIL=${ADMIN_EMAIL:-'foobar@example.com'}
|
||||
ADMIN_PASSWORD=${ADMIN_PASSWORD:-}
|
||||
file_env 'ADMIN_PASSWORD'
|
||||
|
||||
BASE_URL=${BASE_URL:-}
|
||||
PUBLIC_URL=${PUBLIC_URL:-}
|
||||
@@ -33,12 +50,12 @@ DEBUG=${DEBUG:-0}
|
||||
DEBUG_SQL=${DEBUG_SQL:-0}
|
||||
|
||||
if [ -z "$DB_PASSWORD" ]; then
|
||||
echo >&2 'Error: Missing DB_PASSWORD'
|
||||
echo >&2 'Error: Missing DB_PASSWORD or DB_PASSWORD_FILE'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
if [ -z "$ADMIN_PASSWORD" ]; then
|
||||
echo >&2 'Error: Missing ADMIN_PASSWORD'
|
||||
echo >&2 'Error: Missing ADMIN_PASSWORD or ADMIN_PASSWORD_FILE'
|
||||
exit 1
|
||||
fi
|
||||
|
||||
@@ -129,7 +146,7 @@ if [ -f application/config/security.php ]; then
|
||||
echo 'Info: security.php already provisioned'
|
||||
else
|
||||
echo 'Info: Creating security.php'
|
||||
if [ -n "$ENCRYPT_KEYPAIR" ]; then
|
||||
if [ -n "$ENCRYPT_KEYPAIR" ] || [ -n "$ENCRYPT_SECRET_BOX_KEY" ]; then
|
||||
|
||||
cat <<EOF > application/config/security.php
|
||||
<?php if (!defined('BASEPATH')) exit('No direct script access allowed');
|
||||
|
||||
20
README.md
20
README.md
@@ -115,10 +115,10 @@ If you are running LimeSurvey behind a Reverse Proxy you might need some additio
|
||||
| DB_MYSQL_ENGINE | MySQL engine used for survey tables (values: MyISAM, InnoDB, default: MyISAM) |
|
||||
| DB_USERNAME | Database user |
|
||||
| DB_PASSWORD | Database user's password |
|
||||
| ADMIN_USER | Initial LimeSurvey Admin User |
|
||||
| ADMIN_NAME | Initial LimeSurvey Admin Username |
|
||||
| ADMIN_USER | Initial LimeSurvey Admin Username (for signing into admin panel) |
|
||||
| ADMIN_NAME | Initial LimeSurvey Admin Name |
|
||||
| ADMIN_EMAIL | Initial LimeSurvey Admin Email |
|
||||
| ADMIN_PASSWORD | Initial LimeSurvey Admin Password |
|
||||
| ADMIN_PASSWORD | Initial LimeSurvey Admin Password (for signing into admin panel) |
|
||||
| PUBLIC_URL | Public URL for public scripts |
|
||||
| BASE_URL | Application Base URL |
|
||||
| URL_FORMAT | URL Format. path or get |
|
||||
@@ -133,12 +133,26 @@ If you are running LimeSurvey behind a Reverse Proxy you might need some additio
|
||||
| ENCRYPT_SECRET_BOX_KEY | Data encryption secret box key (used in 5.0 and higher) |
|
||||
| LISTEN_PORT | Apache: Listen port. Default: 8080 |
|
||||
|
||||
Sensitive information can also be passed `_FILE` to the following environment variables to load the values from the given file path. Example `DB_PASSWORD_FILE=/run/secrets/db_password`.
|
||||
|
||||
```
|
||||
DB_PASSWORD_FILE
|
||||
ADMIN_PASSWORD_FILE
|
||||
ENCRYPT_KEYPAIR_FILE
|
||||
ENCRYPT_PUBLIC_KEY_FILE
|
||||
ENCRYPT_SECRET_KEY_FILE
|
||||
ENCRYPT_NONCE_FILE
|
||||
ENCRYPT_SECRET_BOX_KEY_FILE
|
||||
```
|
||||
|
||||
For further details on the settings see: https://manual.limesurvey.org/Optional_settings#Advanced_Path_Settings
|
||||
|
||||
# Running LimeSurvey with docker-compose
|
||||
|
||||
The easiest way to get a fully featured and functional setup is using a docker-compose file. Several examples are provided in the [repository](https://github.com/martialblog/docker-limesurvey).
|
||||
|
||||
**Hint:** You need to configure a database and Limesurvey password in the `docker-compose` files before starting. No defaults are provided to discourage production use with default passwords.
|
||||
|
||||
```
|
||||
docker-compose up
|
||||
|
||||
|
||||
@@ -8,8 +8,8 @@ services:
|
||||
- lime-db
|
||||
environment:
|
||||
- "DB_HOST=lime-db"
|
||||
- "DB_PASSWORD=secret"
|
||||
- "ADMIN_PASSWORD=foobar"
|
||||
# - "DB_PASSWORD="
|
||||
# - "ADMIN_PASSWORD="
|
||||
- "PUBLIC_URL=http://my.survey.localhost:8080" # Example, Change this
|
||||
- "BASE_URL=http://my.survey.localhost:8080" # Example, Change this
|
||||
proxy:
|
||||
@@ -24,6 +24,6 @@ services:
|
||||
environment:
|
||||
- "MYSQL_USER=limesurvey"
|
||||
- "MYSQL_DATABASE=limesurvey"
|
||||
- "MYSQL_PASSWORD=secret"
|
||||
- "MYSQL_ROOT_PASSWORD=secret"
|
||||
# - "MYSQL_PASSWORD="
|
||||
# - "MYSQL_ROOT_PASSWORD="
|
||||
|
||||
|
||||
@@ -7,12 +7,12 @@ services:
|
||||
- DB_TYPE=pgsql
|
||||
- DB_PORT=5432
|
||||
- DB_HOST=db
|
||||
- DB_PASSWORD=example
|
||||
# - DB_PASSWORD=
|
||||
- DB_NAME=limesurvey
|
||||
- DB_USERNAME=limesurvey
|
||||
- ADMIN_USER=admin
|
||||
- ADMIN_NAME=Admin
|
||||
- ADMIN_PASSWORD=example
|
||||
# - ADMIN_PASSWORD=
|
||||
- ADMIN_EMAIL=admin@example.com
|
||||
- PUBLIC_URL=foobar.com
|
||||
volumes:
|
||||
@@ -25,11 +25,11 @@ services:
|
||||
image: docker.io/postgres:10-alpine
|
||||
restart: always
|
||||
volumes:
|
||||
- db-data:/var/lib/postgresql
|
||||
- db-data:/var/lib/postgresql/data
|
||||
environment:
|
||||
- POSTGRES_USER=limesurvey
|
||||
- POSTGRES_DB=limesurvey
|
||||
- POSTGRES_PASSWORD=example
|
||||
# - POSTGRES_PASSWORD=
|
||||
|
||||
volumes:
|
||||
limesurvey:
|
||||
|
||||
@@ -14,8 +14,8 @@ services:
|
||||
- lime-db
|
||||
environment:
|
||||
- "DB_HOST=lime-db"
|
||||
- "DB_PASSWORD=secret"
|
||||
- "ADMIN_PASSWORD=foobar"
|
||||
# - "DB_PASSWORD="
|
||||
# - "ADMIN_PASSWORD="
|
||||
lime-web:
|
||||
build:
|
||||
context: nginx-certbot/
|
||||
@@ -44,7 +44,7 @@ services:
|
||||
environment:
|
||||
- "MYSQL_USER=limesurvey"
|
||||
- "MYSQL_DATABASE=limesurvey"
|
||||
- "MYSQL_PASSWORD=secret"
|
||||
- "MYSQL_ROOT_PASSWORD=secret"
|
||||
# - "MYSQL_PASSWORD="
|
||||
# - "MYSQL_ROOT_PASSWORD="
|
||||
volumes:
|
||||
lime:
|
||||
|
||||
@@ -14,8 +14,8 @@ services:
|
||||
- lime-db
|
||||
environment:
|
||||
- "DB_HOST=lime-db"
|
||||
- "DB_PASSWORD=secret"
|
||||
- "ADMIN_PASSWORD=foobar"
|
||||
# - "DB_PASSWORD="
|
||||
# - "ADMIN_PASSWORD="
|
||||
lime-web:
|
||||
image: docker.io/nginx:alpine
|
||||
links:
|
||||
@@ -32,7 +32,7 @@ services:
|
||||
environment:
|
||||
- "MYSQL_USER=limesurvey"
|
||||
- "MYSQL_DATABASE=limesurvey"
|
||||
- "MYSQL_PASSWORD=secret"
|
||||
- "MYSQL_ROOT_PASSWORD=secret"
|
||||
# - "MYSQL_PASSWORD="
|
||||
# - "MYSQL_ROOT_PASSWORD="
|
||||
volumes:
|
||||
lime:
|
||||
|
||||
@@ -14,8 +14,8 @@ services:
|
||||
- lime-db
|
||||
environment:
|
||||
- "DB_HOST=lime-db"
|
||||
- "DB_PASSWORD=secret"
|
||||
- "ADMIN_PASSWORD=foobar"
|
||||
# - "DB_PASSWORD="
|
||||
# - "ADMIN_PASSWORD="
|
||||
lime-web:
|
||||
image: docker.io/nginx
|
||||
links:
|
||||
@@ -30,7 +30,7 @@ services:
|
||||
environment:
|
||||
- "MYSQL_USER=limesurvey"
|
||||
- "MYSQL_DATABASE=limesurvey"
|
||||
- "MYSQL_PASSWORD=secret"
|
||||
- "MYSQL_ROOT_PASSWORD=secret"
|
||||
# - "MYSQL_PASSWORD="
|
||||
# - "MYSQL_ROOT_PASSWORD="
|
||||
volumes:
|
||||
lime:
|
||||
|
||||
@@ -19,8 +19,8 @@ services:
|
||||
- "DB_TYPE=pgsql"
|
||||
- "DB_PORT=5432"
|
||||
- "DB_HOST=lime-db"
|
||||
- "DB_PASSWORD=secret"
|
||||
- "ADMIN_PASSWORD=foobar"
|
||||
# - "DB_PASSWORD="
|
||||
# - "ADMIN_PASSWORD="
|
||||
lime-db:
|
||||
image: docker.io/postgres:10
|
||||
volumes:
|
||||
@@ -28,7 +28,7 @@ services:
|
||||
environment:
|
||||
- "POSTGRES_USER=limesurvey"
|
||||
- "POSTGRES_DB=limesurvey"
|
||||
- "POSTGRES_PASSWORD=secret"
|
||||
# - "POSTGRES_PASSWORD="
|
||||
|
||||
volumes:
|
||||
db-data:
|
||||
|
||||
@@ -15,8 +15,8 @@ services:
|
||||
- lime-db
|
||||
environment:
|
||||
- "DB_HOST=lime-db"
|
||||
- "DB_PASSWORD=secret"
|
||||
- "ADMIN_PASSWORD=foobar"
|
||||
# - "DB_PASSWORD="
|
||||
# - "ADMIN_PASSWORD="
|
||||
- "PUBLIC_URL=http://my.survey.localhost:8888"
|
||||
- "BASE_URL=http://my.survey.localhost:8888"
|
||||
traefik:
|
||||
@@ -37,6 +37,5 @@ services:
|
||||
environment:
|
||||
- "MYSQL_USER=limesurvey"
|
||||
- "MYSQL_DATABASE=limesurvey"
|
||||
- "MYSQL_PASSWORD=secret"
|
||||
- "MYSQL_ROOT_PASSWORD=secret"
|
||||
|
||||
# - "MYSQL_PASSWORD="
|
||||
# - "MYSQL_ROOT_PASSWORD="
|
||||
|
||||
@@ -19,8 +19,8 @@ services:
|
||||
- "./examples/apache-example.conf:/etc/apache2/sites-available/000-default.conf:ro"
|
||||
environment:
|
||||
- "DB_HOST=lime-db"
|
||||
- "DB_PASSWORD=secret"
|
||||
- "ADMIN_PASSWORD=foobar"
|
||||
# - "DB_PASSWORD="
|
||||
# - "ADMIN_PASSWORD="
|
||||
- "PUBLIC_URL=http://localhost:8888/limesurvey"
|
||||
- "BASE_URL=http://localhost:8888/limesurvey"
|
||||
traefik:
|
||||
@@ -41,6 +41,5 @@ services:
|
||||
environment:
|
||||
- "MYSQL_USER=limesurvey"
|
||||
- "MYSQL_DATABASE=limesurvey"
|
||||
- "MYSQL_PASSWORD=secret"
|
||||
- "MYSQL_ROOT_PASSWORD=secret"
|
||||
|
||||
# - "MYSQL_PASSWORD="
|
||||
# - "MYSQL_ROOT_PASSWORD="
|
||||
|
||||
@@ -15,8 +15,8 @@ services:
|
||||
- "8080:8080"
|
||||
environment:
|
||||
- "DB_HOST=lime-db"
|
||||
- "DB_PASSWORD=secret"
|
||||
- "ADMIN_PASSWORD=foobar"
|
||||
# - "DB_PASSWORD="
|
||||
# - "ADMIN_PASSWORD="
|
||||
# If you require an empty table prefix, use a space as the DB_TABLE_PREFIX
|
||||
# - "DB_TABLE_PREFIX= "
|
||||
lime-db:
|
||||
@@ -24,5 +24,5 @@ services:
|
||||
environment:
|
||||
- "MYSQL_USER=limesurvey"
|
||||
- "MYSQL_DATABASE=limesurvey"
|
||||
- "MYSQL_PASSWORD=secret"
|
||||
- "MYSQL_ROOT_PASSWORD=secret"
|
||||
# - "MYSQL_PASSWORD="
|
||||
# - "MYSQL_ROOT_PASSWORD="
|
||||
|
||||
Reference in New Issue
Block a user