mirror of
https://github.com/mykitserver/docker-limesurvey.git
synced 2025-12-06 16:39:11 +01:00
Compare commits
19 Commits
5.6.24-230
...
6.1.7-2307
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
dfa75801ca | ||
|
|
29f016d75d | ||
|
|
b476026121 | ||
|
|
200585ed62 | ||
|
|
b281762fd1 | ||
|
|
ecb0c6b188 | ||
|
|
6b109ed5bb | ||
|
|
eca133264d | ||
|
|
98f042dea9 | ||
|
|
749137e69c | ||
|
|
56238f9aa7 | ||
|
|
0cda131e2c | ||
|
|
9ad9054c3a | ||
|
|
b0eabe4f28 | ||
|
|
dfefb689e8 | ||
|
|
1ab5496e40 | ||
|
|
ab67bbc8c6 | ||
|
|
9ea27fd9fe | ||
|
|
4be9f37601 |
@@ -5,7 +5,9 @@ LABEL maintainer="markus@martialblog.de"
|
|||||||
RUN set -ex; \
|
RUN set -ex; \
|
||||||
apt-get update; \
|
apt-get update; \
|
||||||
apt-get install -y --no-install-recommends \
|
apt-get install -y --no-install-recommends \
|
||||||
netcat \
|
netcat-openbsd \
|
||||||
|
libldap-common \
|
||||||
|
libsasl2-modules \
|
||||||
; \
|
; \
|
||||||
\
|
\
|
||||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
||||||
@@ -79,8 +81,8 @@ RUN a2enmod headers rewrite remoteip; \
|
|||||||
# Use the default production configuration
|
# Use the default production configuration
|
||||||
RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini"
|
RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini"
|
||||||
|
|
||||||
ARG version="5.6.24+230531"
|
ARG version="5.6.30+230711"
|
||||||
ARG sha256_checksum="e0c3a9b03bff1179b01ea88028d7bd21f617d78417f0db7249290056b8e5898b"
|
ARG sha256_checksum="663ddfed95cdaffab8eb4f3e4d91fb6ae93f5203834f4abeba3cbf11cbb4eacb"
|
||||||
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/${version}.tar.gz"
|
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/${version}.tar.gz"
|
||||||
ARG USER=www-data
|
ARG USER=www-data
|
||||||
ARG LISTEN_PORT=8080
|
ARG LISTEN_PORT=8080
|
||||||
|
|||||||
@@ -1,6 +1,23 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# Entrypoint for Docker Container
|
# 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_TYPE=${DB_TYPE:-'mysql'}
|
||||||
DB_HOST=${DB_HOST:-'mysql'}
|
DB_HOST=${DB_HOST:-'mysql'}
|
||||||
@@ -9,19 +26,19 @@ DB_SOCK=${DB_SOCK:-}
|
|||||||
DB_NAME=${DB_NAME:-'limesurvey'}
|
DB_NAME=${DB_NAME:-'limesurvey'}
|
||||||
DB_TABLE_PREFIX=${DB_TABLE_PREFIX:-'lime_'}
|
DB_TABLE_PREFIX=${DB_TABLE_PREFIX:-'lime_'}
|
||||||
DB_USERNAME=${DB_USERNAME:-'limesurvey'}
|
DB_USERNAME=${DB_USERNAME:-'limesurvey'}
|
||||||
DB_PASSWORD=${DB_PASSWORD:-}
|
|
||||||
DB_MYSQL_ENGINE=${DB_MYSQL_ENGINE:-'MyISAM'}
|
DB_MYSQL_ENGINE=${DB_MYSQL_ENGINE:-'MyISAM'}
|
||||||
|
file_env 'DB_PASSWORD'
|
||||||
|
|
||||||
ENCRYPT_KEYPAIR=${ENCRYPT_KEYPAIR:-}
|
file_env 'ENCRYPT_KEYPAIR'
|
||||||
ENCRYPT_PUBLIC_KEY=${ENCRYPT_PUBLIC_KEY:-}
|
file_env 'ENCRYPT_PUBLIC_KEY'
|
||||||
ENCRYPT_SECRET_KEY=${ENCRYPT_SECRET_KEY:-}
|
file_env 'ENCRYPT_SECRET_KEY'
|
||||||
ENCRYPT_NONCE=${ENCRYPT_NONCE:-}
|
file_env 'ENCRYPT_NONCE'
|
||||||
ENCRYPT_SECRET_BOX_KEY=${ENCRYPT_SECRET_BOX_KEY:-}
|
file_env 'ENCRYPT_SECRET_BOX_KEY'
|
||||||
|
|
||||||
ADMIN_USER=${ADMIN_USER:-'admin'}
|
ADMIN_USER=${ADMIN_USER:-'admin'}
|
||||||
ADMIN_NAME=${ADMIN_NAME:-'admin'}
|
ADMIN_NAME=${ADMIN_NAME:-'admin'}
|
||||||
ADMIN_EMAIL=${ADMIN_EMAIL:-'foobar@example.com'}
|
ADMIN_EMAIL=${ADMIN_EMAIL:-'foobar@example.com'}
|
||||||
ADMIN_PASSWORD=${ADMIN_PASSWORD:-}
|
file_env 'ADMIN_PASSWORD'
|
||||||
|
|
||||||
BASE_URL=${BASE_URL:-}
|
BASE_URL=${BASE_URL:-}
|
||||||
PUBLIC_URL=${PUBLIC_URL:-}
|
PUBLIC_URL=${PUBLIC_URL:-}
|
||||||
@@ -35,12 +52,12 @@ DEBUG_SQL=${DEBUG_SQL:-0}
|
|||||||
LISTEN_PORT=${LISTEN_PORT:-"8080"}
|
LISTEN_PORT=${LISTEN_PORT:-"8080"}
|
||||||
|
|
||||||
if [ -z "$DB_PASSWORD" ]; then
|
if [ -z "$DB_PASSWORD" ]; then
|
||||||
echo >&2 'Error: Missing DB_PASSWORD'
|
echo >&2 'Error: Missing DB_PASSWORD or DB_PASSWORD_FILE'
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z "$ADMIN_PASSWORD" ]; then
|
if [ -z "$ADMIN_PASSWORD" ]; then
|
||||||
echo >&2 'Error: Missing ADMIN_PASSWORD'
|
echo >&2 'Error: Missing ADMIN_PASSWORD or ADMIN_PASSWORD_FILE'
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
@@ -2,7 +2,12 @@ FROM docker.io/php:8.0-fpm-alpine
|
|||||||
LABEL maintainer="markus@martialblog.de"
|
LABEL maintainer="markus@martialblog.de"
|
||||||
|
|
||||||
# Install OS dependencies
|
# 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
|
# Install PHP Plugins
|
||||||
# hadolint ignore=SC2086
|
# hadolint ignore=SC2086
|
||||||
@@ -46,8 +51,8 @@ RUN set -ex; \
|
|||||||
apk add --no-cache --no-network --virtual .limesurvey-phpext-rundeps $runDeps; \
|
apk add --no-cache --no-network --virtual .limesurvey-phpext-rundeps $runDeps; \
|
||||||
apk del --no-cache --no-network .build-deps
|
apk del --no-cache --no-network .build-deps
|
||||||
|
|
||||||
ARG version="5.6.24+230531"
|
ARG version="5.6.30+230711"
|
||||||
ARG sha256_checksum="e0c3a9b03bff1179b01ea88028d7bd21f617d78417f0db7249290056b8e5898b"
|
ARG sha256_checksum="663ddfed95cdaffab8eb4f3e4d91fb6ae93f5203834f4abeba3cbf11cbb4eacb"
|
||||||
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/${version}.tar.gz"
|
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/${version}.tar.gz"
|
||||||
ARG USER=www-data
|
ARG USER=www-data
|
||||||
ENV LIMESURVEY_VERSION=$version
|
ENV LIMESURVEY_VERSION=$version
|
||||||
|
|||||||
@@ -1,6 +1,23 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# Entrypoint for Docker Container
|
# 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_TYPE=${DB_TYPE:-'mysql'}
|
||||||
DB_HOST=${DB_HOST:-'mysql'}
|
DB_HOST=${DB_HOST:-'mysql'}
|
||||||
@@ -9,19 +26,19 @@ DB_SOCK=${DB_SOCK:-}
|
|||||||
DB_NAME=${DB_NAME:-'limesurvey'}
|
DB_NAME=${DB_NAME:-'limesurvey'}
|
||||||
DB_TABLE_PREFIX=${DB_TABLE_PREFIX:-'lime_'}
|
DB_TABLE_PREFIX=${DB_TABLE_PREFIX:-'lime_'}
|
||||||
DB_USERNAME=${DB_USERNAME:-'limesurvey'}
|
DB_USERNAME=${DB_USERNAME:-'limesurvey'}
|
||||||
DB_PASSWORD=${DB_PASSWORD:-}
|
|
||||||
DB_MYSQL_ENGINE=${DB_MYSQL_ENGINE:-'MyISAM'}
|
DB_MYSQL_ENGINE=${DB_MYSQL_ENGINE:-'MyISAM'}
|
||||||
|
file_env 'DB_PASSWORD'
|
||||||
|
|
||||||
ENCRYPT_KEYPAIR=${ENCRYPT_KEYPAIR:-}
|
file_env 'ENCRYPT_KEYPAIR'
|
||||||
ENCRYPT_PUBLIC_KEY=${ENCRYPT_PUBLIC_KEY:-}
|
file_env 'ENCRYPT_PUBLIC_KEY'
|
||||||
ENCRYPT_SECRET_KEY=${ENCRYPT_SECRET_KEY:-}
|
file_env 'ENCRYPT_SECRET_KEY'
|
||||||
ENCRYPT_NONCE=${ENCRYPT_NONCE:-}
|
file_env 'ENCRYPT_NONCE'
|
||||||
ENCRYPT_SECRET_BOX_KEY=${ENCRYPT_SECRET_BOX_KEY:-}
|
file_env 'ENCRYPT_SECRET_BOX_KEY'
|
||||||
|
|
||||||
ADMIN_USER=${ADMIN_USER:-'admin'}
|
ADMIN_USER=${ADMIN_USER:-'admin'}
|
||||||
ADMIN_NAME=${ADMIN_NAME:-'admin'}
|
ADMIN_NAME=${ADMIN_NAME:-'admin'}
|
||||||
ADMIN_EMAIL=${ADMIN_EMAIL:-'foobar@example.com'}
|
ADMIN_EMAIL=${ADMIN_EMAIL:-'foobar@example.com'}
|
||||||
ADMIN_PASSWORD=${ADMIN_PASSWORD:-}
|
file_env 'ADMIN_PASSWORD'
|
||||||
|
|
||||||
BASE_URL=${BASE_URL:-}
|
BASE_URL=${BASE_URL:-}
|
||||||
PUBLIC_URL=${PUBLIC_URL:-}
|
PUBLIC_URL=${PUBLIC_URL:-}
|
||||||
@@ -33,12 +50,12 @@ DEBUG=${DEBUG:-0}
|
|||||||
DEBUG_SQL=${DEBUG_SQL:-0}
|
DEBUG_SQL=${DEBUG_SQL:-0}
|
||||||
|
|
||||||
if [ -z "$DB_PASSWORD" ]; then
|
if [ -z "$DB_PASSWORD" ]; then
|
||||||
echo >&2 'Error: Missing DB_PASSWORD'
|
echo >&2 'Error: Missing DB_PASSWORD or DB_PASSWORD_FILE'
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z "$ADMIN_PASSWORD" ]; then
|
if [ -z "$ADMIN_PASSWORD" ]; then
|
||||||
echo >&2 'Error: Missing ADMIN_PASSWORD'
|
echo >&2 'Error: Missing ADMIN_PASSWORD or ADMIN_PASSWORD_FILE'
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
@@ -5,7 +5,9 @@ LABEL maintainer="markus@martialblog.de"
|
|||||||
RUN set -ex; \
|
RUN set -ex; \
|
||||||
apt-get update; \
|
apt-get update; \
|
||||||
apt-get install -y --no-install-recommends \
|
apt-get install -y --no-install-recommends \
|
||||||
netcat \
|
netcat-openbsd \
|
||||||
|
libldap-common \
|
||||||
|
libsasl2-modules \
|
||||||
; \
|
; \
|
||||||
\
|
\
|
||||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
||||||
@@ -66,8 +68,8 @@ RUN set -ex; \
|
|||||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
||||||
rm -rf /var/lib/apt/lists/*
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
ARG version="5.6.24+230531"
|
ARG version="5.6.30+230711"
|
||||||
ARG sha256_checksum="e0c3a9b03bff1179b01ea88028d7bd21f617d78417f0db7249290056b8e5898b"
|
ARG sha256_checksum="663ddfed95cdaffab8eb4f3e4d91fb6ae93f5203834f4abeba3cbf11cbb4eacb"
|
||||||
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/${version}.tar.gz"
|
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/${version}.tar.gz"
|
||||||
ARG USER=www-data
|
ARG USER=www-data
|
||||||
ENV LIMESURVEY_VERSION=$version
|
ENV LIMESURVEY_VERSION=$version
|
||||||
|
|||||||
@@ -1,6 +1,23 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# Entrypoint for Docker Container
|
# 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_TYPE=${DB_TYPE:-'mysql'}
|
||||||
DB_HOST=${DB_HOST:-'mysql'}
|
DB_HOST=${DB_HOST:-'mysql'}
|
||||||
@@ -9,19 +26,19 @@ DB_SOCK=${DB_SOCK:-}
|
|||||||
DB_NAME=${DB_NAME:-'limesurvey'}
|
DB_NAME=${DB_NAME:-'limesurvey'}
|
||||||
DB_TABLE_PREFIX=${DB_TABLE_PREFIX:-'lime_'}
|
DB_TABLE_PREFIX=${DB_TABLE_PREFIX:-'lime_'}
|
||||||
DB_USERNAME=${DB_USERNAME:-'limesurvey'}
|
DB_USERNAME=${DB_USERNAME:-'limesurvey'}
|
||||||
DB_PASSWORD=${DB_PASSWORD:-}
|
|
||||||
DB_MYSQL_ENGINE=${DB_MYSQL_ENGINE:-'MyISAM'}
|
DB_MYSQL_ENGINE=${DB_MYSQL_ENGINE:-'MyISAM'}
|
||||||
|
file_env 'DB_PASSWORD'
|
||||||
|
|
||||||
ENCRYPT_KEYPAIR=${ENCRYPT_KEYPAIR:-}
|
file_env 'ENCRYPT_KEYPAIR'
|
||||||
ENCRYPT_PUBLIC_KEY=${ENCRYPT_PUBLIC_KEY:-}
|
file_env 'ENCRYPT_PUBLIC_KEY'
|
||||||
ENCRYPT_SECRET_KEY=${ENCRYPT_SECRET_KEY:-}
|
file_env 'ENCRYPT_SECRET_KEY'
|
||||||
ENCRYPT_NONCE=${ENCRYPT_NONCE:-}
|
file_env 'ENCRYPT_NONCE'
|
||||||
ENCRYPT_SECRET_BOX_KEY=${ENCRYPT_SECRET_BOX_KEY:-}
|
file_env 'ENCRYPT_SECRET_BOX_KEY'
|
||||||
|
|
||||||
ADMIN_USER=${ADMIN_USER:-'admin'}
|
ADMIN_USER=${ADMIN_USER:-'admin'}
|
||||||
ADMIN_NAME=${ADMIN_NAME:-'admin'}
|
ADMIN_NAME=${ADMIN_NAME:-'admin'}
|
||||||
ADMIN_EMAIL=${ADMIN_EMAIL:-'foobar@example.com'}
|
ADMIN_EMAIL=${ADMIN_EMAIL:-'foobar@example.com'}
|
||||||
ADMIN_PASSWORD=${ADMIN_PASSWORD:-}
|
file_env 'ADMIN_PASSWORD'
|
||||||
|
|
||||||
BASE_URL=${BASE_URL:-}
|
BASE_URL=${BASE_URL:-}
|
||||||
PUBLIC_URL=${PUBLIC_URL:-}
|
PUBLIC_URL=${PUBLIC_URL:-}
|
||||||
@@ -33,12 +50,12 @@ DEBUG=${DEBUG:-0}
|
|||||||
DEBUG_SQL=${DEBUG_SQL:-0}
|
DEBUG_SQL=${DEBUG_SQL:-0}
|
||||||
|
|
||||||
if [ -z "$DB_PASSWORD" ]; then
|
if [ -z "$DB_PASSWORD" ]; then
|
||||||
echo >&2 'Error: Missing DB_PASSWORD'
|
echo >&2 'Error: Missing DB_PASSWORD or DB_PASSWORD_FILE'
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z "$ADMIN_PASSWORD" ]; then
|
if [ -z "$ADMIN_PASSWORD" ]; then
|
||||||
echo >&2 'Error: Missing ADMIN_PASSWORD'
|
echo >&2 'Error: Missing ADMIN_PASSWORD or ADMIN_PASSWORD_FILE'
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,13 @@
|
|||||||
FROM docker.io/php:8.1-apache
|
FROM docker.io/php:8.0-apache
|
||||||
LABEL maintainer="markus@martialblog.de"
|
LABEL maintainer="markus@martialblog.de"
|
||||||
|
|
||||||
# Install OS dependencies
|
# Install OS dependencies
|
||||||
RUN set -ex; \
|
RUN set -ex; \
|
||||||
apt-get update; \
|
apt-get update; \
|
||||||
apt-get install -y --no-install-recommends \
|
apt-get install -y --no-install-recommends \
|
||||||
netcat \
|
netcat-openbsd \
|
||||||
|
libldap-common \
|
||||||
|
libsasl2-modules \
|
||||||
; \
|
; \
|
||||||
\
|
\
|
||||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
||||||
@@ -79,8 +81,8 @@ RUN a2enmod headers rewrite remoteip; \
|
|||||||
# Use the default production configuration
|
# Use the default production configuration
|
||||||
RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini"
|
RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini"
|
||||||
|
|
||||||
ARG version="6.0.7+230515"
|
ARG version="6.1.7+230710"
|
||||||
ARG sha256_checksum="de13467a4963d9759bd24300b5bd5b07f3149b0a62943180afaadfbd0513fef7"
|
ARG sha256_checksum="7e6a04e51cca85eb15c8db543c475227997c048347be8793d8314d71a1246ca3"
|
||||||
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/${version}.tar.gz"
|
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/${version}.tar.gz"
|
||||||
ARG USER=www-data
|
ARG USER=www-data
|
||||||
ARG LISTEN_PORT=8080
|
ARG LISTEN_PORT=8080
|
||||||
|
|||||||
@@ -1,6 +1,23 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# Entrypoint for Docker Container
|
# 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_TYPE=${DB_TYPE:-'mysql'}
|
||||||
DB_HOST=${DB_HOST:-'mysql'}
|
DB_HOST=${DB_HOST:-'mysql'}
|
||||||
@@ -9,19 +26,19 @@ DB_SOCK=${DB_SOCK:-}
|
|||||||
DB_NAME=${DB_NAME:-'limesurvey'}
|
DB_NAME=${DB_NAME:-'limesurvey'}
|
||||||
DB_TABLE_PREFIX=${DB_TABLE_PREFIX:-'lime_'}
|
DB_TABLE_PREFIX=${DB_TABLE_PREFIX:-'lime_'}
|
||||||
DB_USERNAME=${DB_USERNAME:-'limesurvey'}
|
DB_USERNAME=${DB_USERNAME:-'limesurvey'}
|
||||||
DB_PASSWORD=${DB_PASSWORD:-}
|
|
||||||
DB_MYSQL_ENGINE=${DB_MYSQL_ENGINE:-'MyISAM'}
|
DB_MYSQL_ENGINE=${DB_MYSQL_ENGINE:-'MyISAM'}
|
||||||
|
file_env 'DB_PASSWORD'
|
||||||
|
|
||||||
ENCRYPT_KEYPAIR=${ENCRYPT_KEYPAIR:-}
|
file_env 'ENCRYPT_KEYPAIR'
|
||||||
ENCRYPT_PUBLIC_KEY=${ENCRYPT_PUBLIC_KEY:-}
|
file_env 'ENCRYPT_PUBLIC_KEY'
|
||||||
ENCRYPT_SECRET_KEY=${ENCRYPT_SECRET_KEY:-}
|
file_env 'ENCRYPT_SECRET_KEY'
|
||||||
ENCRYPT_NONCE=${ENCRYPT_NONCE:-}
|
file_env 'ENCRYPT_NONCE'
|
||||||
ENCRYPT_SECRET_BOX_KEY=${ENCRYPT_SECRET_BOX_KEY:-}
|
file_env 'ENCRYPT_SECRET_BOX_KEY'
|
||||||
|
|
||||||
ADMIN_USER=${ADMIN_USER:-'admin'}
|
ADMIN_USER=${ADMIN_USER:-'admin'}
|
||||||
ADMIN_NAME=${ADMIN_NAME:-'admin'}
|
ADMIN_NAME=${ADMIN_NAME:-'admin'}
|
||||||
ADMIN_EMAIL=${ADMIN_EMAIL:-'foobar@example.com'}
|
ADMIN_EMAIL=${ADMIN_EMAIL:-'foobar@example.com'}
|
||||||
ADMIN_PASSWORD=${ADMIN_PASSWORD:-}
|
file_env 'ADMIN_PASSWORD'
|
||||||
|
|
||||||
BASE_URL=${BASE_URL:-}
|
BASE_URL=${BASE_URL:-}
|
||||||
PUBLIC_URL=${PUBLIC_URL:-}
|
PUBLIC_URL=${PUBLIC_URL:-}
|
||||||
@@ -35,12 +52,12 @@ DEBUG_SQL=${DEBUG_SQL:-0}
|
|||||||
LISTEN_PORT=${LISTEN_PORT:-"8080"}
|
LISTEN_PORT=${LISTEN_PORT:-"8080"}
|
||||||
|
|
||||||
if [ -z "$DB_PASSWORD" ]; then
|
if [ -z "$DB_PASSWORD" ]; then
|
||||||
echo >&2 'Error: Missing DB_PASSWORD'
|
echo >&2 'Error: Missing DB_PASSWORD or DB_PASSWORD_FILE'
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z "$ADMIN_PASSWORD" ]; then
|
if [ -z "$ADMIN_PASSWORD" ]; then
|
||||||
echo >&2 'Error: Missing ADMIN_PASSWORD'
|
echo >&2 'Error: Missing ADMIN_PASSWORD or ADMIN_PASSWORD_FILE'
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
@@ -1,8 +1,13 @@
|
|||||||
FROM docker.io/php:8.1-fpm-alpine
|
FROM docker.io/php:8.0-fpm-alpine
|
||||||
LABEL maintainer="markus@martialblog.de"
|
LABEL maintainer="markus@martialblog.de"
|
||||||
|
|
||||||
# Install OS dependencies
|
# 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
|
# Install PHP Plugins
|
||||||
# hadolint ignore=SC2086
|
# hadolint ignore=SC2086
|
||||||
@@ -46,8 +51,8 @@ RUN set -ex; \
|
|||||||
apk add --no-cache --no-network --virtual .limesurvey-phpext-rundeps $runDeps; \
|
apk add --no-cache --no-network --virtual .limesurvey-phpext-rundeps $runDeps; \
|
||||||
apk del --no-cache --no-network .build-deps
|
apk del --no-cache --no-network .build-deps
|
||||||
|
|
||||||
ARG version="6.0.7+230515"
|
ARG version="6.1.7+230710"
|
||||||
ARG sha256_checksum="de13467a4963d9759bd24300b5bd5b07f3149b0a62943180afaadfbd0513fef7"
|
ARG sha256_checksum="7e6a04e51cca85eb15c8db543c475227997c048347be8793d8314d71a1246ca3"
|
||||||
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/${version}.tar.gz"
|
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/${version}.tar.gz"
|
||||||
ARG USER=www-data
|
ARG USER=www-data
|
||||||
ENV LIMESURVEY_VERSION=$version
|
ENV LIMESURVEY_VERSION=$version
|
||||||
|
|||||||
@@ -1,6 +1,23 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# Entrypoint for Docker Container
|
# 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_TYPE=${DB_TYPE:-'mysql'}
|
||||||
DB_HOST=${DB_HOST:-'mysql'}
|
DB_HOST=${DB_HOST:-'mysql'}
|
||||||
@@ -9,19 +26,19 @@ DB_SOCK=${DB_SOCK:-}
|
|||||||
DB_NAME=${DB_NAME:-'limesurvey'}
|
DB_NAME=${DB_NAME:-'limesurvey'}
|
||||||
DB_TABLE_PREFIX=${DB_TABLE_PREFIX:-'lime_'}
|
DB_TABLE_PREFIX=${DB_TABLE_PREFIX:-'lime_'}
|
||||||
DB_USERNAME=${DB_USERNAME:-'limesurvey'}
|
DB_USERNAME=${DB_USERNAME:-'limesurvey'}
|
||||||
DB_PASSWORD=${DB_PASSWORD:-}
|
|
||||||
DB_MYSQL_ENGINE=${DB_MYSQL_ENGINE:-'MyISAM'}
|
DB_MYSQL_ENGINE=${DB_MYSQL_ENGINE:-'MyISAM'}
|
||||||
|
file_env 'DB_PASSWORD'
|
||||||
|
|
||||||
ENCRYPT_KEYPAIR=${ENCRYPT_KEYPAIR:-}
|
file_env 'ENCRYPT_KEYPAIR'
|
||||||
ENCRYPT_PUBLIC_KEY=${ENCRYPT_PUBLIC_KEY:-}
|
file_env 'ENCRYPT_PUBLIC_KEY'
|
||||||
ENCRYPT_SECRET_KEY=${ENCRYPT_SECRET_KEY:-}
|
file_env 'ENCRYPT_SECRET_KEY'
|
||||||
ENCRYPT_NONCE=${ENCRYPT_NONCE:-}
|
file_env 'ENCRYPT_NONCE'
|
||||||
ENCRYPT_SECRET_BOX_KEY=${ENCRYPT_SECRET_BOX_KEY:-}
|
file_env 'ENCRYPT_SECRET_BOX_KEY'
|
||||||
|
|
||||||
ADMIN_USER=${ADMIN_USER:-'admin'}
|
ADMIN_USER=${ADMIN_USER:-'admin'}
|
||||||
ADMIN_NAME=${ADMIN_NAME:-'admin'}
|
ADMIN_NAME=${ADMIN_NAME:-'admin'}
|
||||||
ADMIN_EMAIL=${ADMIN_EMAIL:-'foobar@example.com'}
|
ADMIN_EMAIL=${ADMIN_EMAIL:-'foobar@example.com'}
|
||||||
ADMIN_PASSWORD=${ADMIN_PASSWORD:-}
|
file_env 'ADMIN_PASSWORD'
|
||||||
|
|
||||||
BASE_URL=${BASE_URL:-}
|
BASE_URL=${BASE_URL:-}
|
||||||
PUBLIC_URL=${PUBLIC_URL:-}
|
PUBLIC_URL=${PUBLIC_URL:-}
|
||||||
@@ -33,12 +50,12 @@ DEBUG=${DEBUG:-0}
|
|||||||
DEBUG_SQL=${DEBUG_SQL:-0}
|
DEBUG_SQL=${DEBUG_SQL:-0}
|
||||||
|
|
||||||
if [ -z "$DB_PASSWORD" ]; then
|
if [ -z "$DB_PASSWORD" ]; then
|
||||||
echo >&2 'Error: Missing DB_PASSWORD'
|
echo >&2 'Error: Missing DB_PASSWORD or DB_PASSWORD_FILE'
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z "$ADMIN_PASSWORD" ]; then
|
if [ -z "$ADMIN_PASSWORD" ]; then
|
||||||
echo >&2 'Error: Missing ADMIN_PASSWORD'
|
echo >&2 'Error: Missing ADMIN_PASSWORD or ADMIN_PASSWORD_FILE'
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,13 @@
|
|||||||
FROM docker.io/php:8.1-fpm
|
FROM docker.io/php:8.0-fpm
|
||||||
LABEL maintainer="markus@martialblog.de"
|
LABEL maintainer="markus@martialblog.de"
|
||||||
|
|
||||||
# Install OS dependencies
|
# Install OS dependencies
|
||||||
RUN set -ex; \
|
RUN set -ex; \
|
||||||
apt-get update; \
|
apt-get update; \
|
||||||
apt-get install -y --no-install-recommends \
|
apt-get install -y --no-install-recommends \
|
||||||
netcat \
|
netcat-openbsd \
|
||||||
|
libldap-common \
|
||||||
|
libsasl2-modules \
|
||||||
; \
|
; \
|
||||||
\
|
\
|
||||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
||||||
@@ -66,8 +68,8 @@ RUN set -ex; \
|
|||||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
||||||
rm -rf /var/lib/apt/lists/*
|
rm -rf /var/lib/apt/lists/*
|
||||||
|
|
||||||
ARG version="6.0.7+230515"
|
ARG version="6.1.7+230710"
|
||||||
ARG sha256_checksum="de13467a4963d9759bd24300b5bd5b07f3149b0a62943180afaadfbd0513fef7"
|
ARG sha256_checksum="7e6a04e51cca85eb15c8db543c475227997c048347be8793d8314d71a1246ca3"
|
||||||
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/${version}.tar.gz"
|
ARG archive_url="https://github.com/LimeSurvey/LimeSurvey/archive/${version}.tar.gz"
|
||||||
ARG USER=www-data
|
ARG USER=www-data
|
||||||
ENV LIMESURVEY_VERSION=$version
|
ENV LIMESURVEY_VERSION=$version
|
||||||
|
|||||||
@@ -1,6 +1,23 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
# Entrypoint for Docker Container
|
# 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_TYPE=${DB_TYPE:-'mysql'}
|
||||||
DB_HOST=${DB_HOST:-'mysql'}
|
DB_HOST=${DB_HOST:-'mysql'}
|
||||||
@@ -9,19 +26,19 @@ DB_SOCK=${DB_SOCK:-}
|
|||||||
DB_NAME=${DB_NAME:-'limesurvey'}
|
DB_NAME=${DB_NAME:-'limesurvey'}
|
||||||
DB_TABLE_PREFIX=${DB_TABLE_PREFIX:-'lime_'}
|
DB_TABLE_PREFIX=${DB_TABLE_PREFIX:-'lime_'}
|
||||||
DB_USERNAME=${DB_USERNAME:-'limesurvey'}
|
DB_USERNAME=${DB_USERNAME:-'limesurvey'}
|
||||||
DB_PASSWORD=${DB_PASSWORD:-}
|
|
||||||
DB_MYSQL_ENGINE=${DB_MYSQL_ENGINE:-'MyISAM'}
|
DB_MYSQL_ENGINE=${DB_MYSQL_ENGINE:-'MyISAM'}
|
||||||
|
file_env 'DB_PASSWORD'
|
||||||
|
|
||||||
ENCRYPT_KEYPAIR=${ENCRYPT_KEYPAIR:-}
|
file_env 'ENCRYPT_KEYPAIR'
|
||||||
ENCRYPT_PUBLIC_KEY=${ENCRYPT_PUBLIC_KEY:-}
|
file_env 'ENCRYPT_PUBLIC_KEY'
|
||||||
ENCRYPT_SECRET_KEY=${ENCRYPT_SECRET_KEY:-}
|
file_env 'ENCRYPT_SECRET_KEY'
|
||||||
ENCRYPT_NONCE=${ENCRYPT_NONCE:-}
|
file_env 'ENCRYPT_NONCE'
|
||||||
ENCRYPT_SECRET_BOX_KEY=${ENCRYPT_SECRET_BOX_KEY:-}
|
file_env 'ENCRYPT_SECRET_BOX_KEY'
|
||||||
|
|
||||||
ADMIN_USER=${ADMIN_USER:-'admin'}
|
ADMIN_USER=${ADMIN_USER:-'admin'}
|
||||||
ADMIN_NAME=${ADMIN_NAME:-'admin'}
|
ADMIN_NAME=${ADMIN_NAME:-'admin'}
|
||||||
ADMIN_EMAIL=${ADMIN_EMAIL:-'foobar@example.com'}
|
ADMIN_EMAIL=${ADMIN_EMAIL:-'foobar@example.com'}
|
||||||
ADMIN_PASSWORD=${ADMIN_PASSWORD:-}
|
file_env 'ADMIN_PASSWORD'
|
||||||
|
|
||||||
BASE_URL=${BASE_URL:-}
|
BASE_URL=${BASE_URL:-}
|
||||||
PUBLIC_URL=${PUBLIC_URL:-}
|
PUBLIC_URL=${PUBLIC_URL:-}
|
||||||
@@ -33,12 +50,12 @@ DEBUG=${DEBUG:-0}
|
|||||||
DEBUG_SQL=${DEBUG_SQL:-0}
|
DEBUG_SQL=${DEBUG_SQL:-0}
|
||||||
|
|
||||||
if [ -z "$DB_PASSWORD" ]; then
|
if [ -z "$DB_PASSWORD" ]; then
|
||||||
echo >&2 'Error: Missing DB_PASSWORD'
|
echo >&2 'Error: Missing DB_PASSWORD or DB_PASSWORD_FILE'
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if [ -z "$ADMIN_PASSWORD" ]; then
|
if [ -z "$ADMIN_PASSWORD" ]; then
|
||||||
echo >&2 'Error: Missing ADMIN_PASSWORD'
|
echo >&2 'Error: Missing ADMIN_PASSWORD or ADMIN_PASSWORD_FILE'
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
|
|||||||
12
README.md
12
README.md
@@ -133,6 +133,18 @@ 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) |
|
| ENCRYPT_SECRET_BOX_KEY | Data encryption secret box key (used in 5.0 and higher) |
|
||||||
| LISTEN_PORT | Apache: Listen port. Default: 8080 |
|
| 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
|
For further details on the settings see: https://manual.limesurvey.org/Optional_settings#Advanced_Path_Settings
|
||||||
|
|
||||||
# Running LimeSurvey with docker-compose
|
# Running LimeSurvey with docker-compose
|
||||||
|
|||||||
Reference in New Issue
Block a user