Compare commits

...

26 Commits

Author SHA1 Message Date
Markus Opolka
3a55f6bfaf Upgrading to LTS Version 3.22.24+200630 2020-07-06 16:06:44 +02:00
Markus Opolka
da9fb16aab Upgrading to Version 4.3.1+200623 2020-06-29 21:16:51 +02:00
Markus Opolka
4af9e318fb Upgrading to LTS Version 3.22.23+200626 2020-06-29 21:15:51 +02:00
Markus Opolka
bcb66c5461 Upgrading to LTS Version 3.22.22+200625 2020-06-26 17:51:49 +02:00
Markus Opolka
a005f313a6 Upgrading to LTS Version 3.22.21+200622 2020-06-26 06:13:58 +02:00
Markus Opolka
0dda936f54 Upgrading to Version 4.3.0+200616 2020-06-22 18:37:34 +02:00
Markus Opolka
938e1540e7 Upgrading to LTS Version 3.22.20+200617 2020-06-22 18:36:32 +02:00
Markus Opolka
17f24f33b6 Upgrading to Version 4.2.8+200608 2020-06-16 12:56:33 +02:00
Markus Opolka
17e7553394 Upgrading to LTS Version 3.22.19+200605 2020-06-16 12:54:51 +02:00
Markus Opolka
ed7749da68 Upgrading to Version 4.2.7+200604 2020-06-08 13:46:18 +02:00
Markus Opolka
d02ccb7531 Upgrading to LTS Version 3.22.18+200603 2020-06-05 18:36:27 +02:00
Markus Opolka
50e4579f38 Upgrading to Version 4.2.6+200602 2020-06-05 07:39:18 +02:00
Markus Opolka
4821f97cdb Upgrading to Version 4.2.5+200526 2020-06-03 06:36:20 +02:00
Markus Opolka
430f189ce3 Upgrading to LTS Version 3.22.17+200525 2020-06-03 06:35:01 +02:00
Markus Opolka
b8d08e8fb7 Upgrading to Version 4.2.4+200520 2020-05-26 13:02:28 +02:00
Markus Opolka
58682a1ea2 Upgrading to LTS Version 3.22.16+200519 2020-05-25 13:27:14 +02:00
Markus Opolka
aff7605759 Upgrading to Version 4.2.3+200511 2020-05-19 21:38:58 +02:00
Markus Opolka
7dcf4d2b0f Upgrading to LTS Version 3.22.15+200505 2020-05-19 21:37:09 +02:00
Markus Opolka
b08f7275ef Upgrading to Version 4.2.2+200504 2020-05-11 17:27:58 +02:00
Markus Opolka
216b15a805 Merge pull request #31 from jsfan/master
Added configuration which adds Nginx with Letsencrypt certificate
2020-05-05 22:20:58 +02:00
Markus Opolka
ad281e9249 Upgrading to Version 4.2.1+200428 2020-05-04 17:06:33 +02:00
Markus Opolka
b1a3e04cbc Upgrading to LTS Version 3.22.14+200423 2020-05-04 17:05:29 +02:00
Markus Opolka
3639cc38e8 Fix nginx example config
- Fixes issue #30
2020-04-30 08:34:17 +02:00
Christian Lerrahn
334d781c10 Added description of FPM setup with https to README 2020-04-29 19:19:23 +10:00
Christian Lerrahn
2c1390a146 Made host name consistent across config files 2020-04-28 18:49:07 +10:00
Christian Lerrahn
51f229262d Added configuration which adds Nginx with Letsencrypt certificate 2020-04-28 18:45:15 +10:00
12 changed files with 162 additions and 13 deletions

View File

@@ -1,7 +1,7 @@
FROM php:7.2-apache FROM php:7.2-apache
LABEL maintainer="markus@martialblog.de" LABEL maintainer="markus@martialblog.de"
ARG version='3.22.13+200415' ARG version='3.22.24+200630'
ARG sha256_checksum='bbf6cc8de980e495f3956ccdee69677ee8ce0c8b0d56e451d12e34c9f899e1d5' ARG sha256_checksum='1ddd8cf34a905b2fb2cea5cb545629f80034b29e259f96f5dd9ca9d430c6c0d0'
# Install OS dependencies # Install OS dependencies
RUN set -ex; \ RUN set -ex; \

View File

@@ -1,7 +1,7 @@
FROM php:7.2-fpm-alpine FROM php:7.2-fpm-alpine
LABEL maintainer="markus@martialblog.de" LABEL maintainer="markus@martialblog.de"
ARG version='3.22.13+200415' ARG version='3.22.24+200630'
ARG sha256_checksum='bbf6cc8de980e495f3956ccdee69677ee8ce0c8b0d56e451d12e34c9f899e1d5' ARG sha256_checksum='1ddd8cf34a905b2fb2cea5cb545629f80034b29e259f96f5dd9ca9d430c6c0d0'
# Install OS dependencies # Install OS dependencies
RUN set -ex; \ RUN set -ex; \

View File

@@ -1,7 +1,7 @@
FROM php:7.2-fpm FROM php:7.2-fpm
LABEL maintainer="markus@martialblog.de" LABEL maintainer="markus@martialblog.de"
ARG version='3.22.13+200415' ARG version='3.22.24+200630'
ARG sha256_checksum='bbf6cc8de980e495f3956ccdee69677ee8ce0c8b0d56e451d12e34c9f899e1d5' ARG sha256_checksum='1ddd8cf34a905b2fb2cea5cb545629f80034b29e259f96f5dd9ca9d430c6c0d0'
# Install OS dependencies # Install OS dependencies
RUN set -ex; \ RUN set -ex; \

View File

@@ -1,7 +1,7 @@
FROM php:7.2-apache FROM php:7.2-apache
LABEL maintainer="markus@martialblog.de" LABEL maintainer="markus@martialblog.de"
ARG version='4.2.0+200422' ARG version='4.3.1+200623'
ARG sha256_checksum='141312db398bf708d6cfbe281aaed408225ed678706aa3d8f996c38d7e7ee519' ARG sha256_checksum='a3ebf6b94b7cd27a8e7a193a9b1d46e9433ff820eb101d1f1dba15cf1410b2d4'
# Install OS dependencies # Install OS dependencies
RUN set -ex; \ RUN set -ex; \

View File

@@ -1,7 +1,7 @@
FROM php:7.2-fpm-alpine FROM php:7.2-fpm-alpine
LABEL maintainer="markus@martialblog.de" LABEL maintainer="markus@martialblog.de"
ARG version='4.2.0+200422' ARG version='4.3.1+200623'
ARG sha256_checksum='141312db398bf708d6cfbe281aaed408225ed678706aa3d8f996c38d7e7ee519' ARG sha256_checksum='a3ebf6b94b7cd27a8e7a193a9b1d46e9433ff820eb101d1f1dba15cf1410b2d4'
# Install OS dependencies # Install OS dependencies
RUN set -ex; \ RUN set -ex; \

View File

@@ -1,7 +1,7 @@
FROM php:7.2-fpm FROM php:7.2-fpm
LABEL maintainer="markus@martialblog.de" LABEL maintainer="markus@martialblog.de"
ARG version='4.2.0+200422' ARG version='4.3.1+200623'
ARG sha256_checksum='141312db398bf708d6cfbe281aaed408225ed678706aa3d8f996c38d7e7ee519' ARG sha256_checksum='a3ebf6b94b7cd27a8e7a193a9b1d46e9433ff820eb101d1f1dba15cf1410b2d4'
# Install OS dependencies # Install OS dependencies
RUN set -ex; \ RUN set -ex; \

View File

@@ -19,7 +19,14 @@ See the example configuration provided.
# Using the fpm image # Using the fpm image
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 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.
# Using the fpm image with https
If you would like to run the fpm setup with https, you can get a free certificate from Letsencrypt. As an example, the configuration in *docker-compose.fpm-certbot.yml*
will take care of getting a certificate and installing it. Please note that you will have to adjust the domain name in the file *examples/nginx-certbot.conf* to match
the domain used in the *HOSTNAMES* variable in the docker-compose configuration file. If you added both the a domain and the hostname *www* within the domain,
*nginx-certbot.conf* needs to contain the domain without the hostname. E.g. if you set *"HOSTNAMES=example.org www.example.org"*, the path in *nginx-certbot.conf* needs
to contain *example.org*.
# Using an external database # Using an external database

View File

@@ -0,0 +1,49 @@
version: "3.0"
services:
limesurvey:
build:
context: 4.0/fpm/
dockerfile: Dockerfile
volumes:
- /tmp/upload/surveys:/var/www/html/upload/surveys
- lime:/var/www/html
links:
- lime-db
depends_on:
- lime-db
environment:
- "DB_HOST=lime-db"
- "DB_PASSWORD=secret"
- "ADMIN_PASSWORD=foobar"
lime-web:
build:
context: nginx-certbot/
dockerfile: Dockerfile
links:
- limesurvey
ports:
- "80:80"
- "443:443"
volumes:
- ./examples/nginx-certbot.conf:/etc/nginx/nginx.conf:ro
- ./certbot/conf:/etc/letsencrypt
- ./certbot/www:/var/www/certbot
- lime:/var/www/html
environment:
- "HOSTNAMES=www.example.com example.com"
certbot:
image: certbot/certbot
restart: unless-stopped
volumes:
- ./certbot/conf:/etc/letsencrypt
- ./certbot/www:/var/www/certbot
entrypoint: "/bin/sh -c 'trap exit TERM; while :; do certbot renew; sleep 12h & wait $${!}; done;'"
lime-db:
image: mysql:5.7
environment:
- "MYSQL_USER=limesurvey"
- "MYSQL_DATABASE=limesurvey"
- "MYSQL_PASSWORD=secret"
- "MYSQL_ROOT_PASSWORD=secret"
volumes:
lime:

View File

@@ -0,0 +1,57 @@
worker_processes 1;
error_log /var/log/nginx/error.log warn;
pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
server {
listen 80;
server_name _;
server_tokens off;
location /.well-known/acme-challenge/ {
root /var/www/certbot;
}
location / {
return 301 https://$host$request_uri;
}
}
server {
listen 443 ssl;
index index.php;
set $host_path "/var/www/html";
root /var/www/html;
server_name _;
charset utf-8;
include /etc/nginx/mime.types;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
include /etc/letsencrypt/options-ssl-nginx.conf;
ssl_dhparam /etc/letsencrypt/ssl-dhparams.pem;
location / {
try_files $uri /index.php?$args;
}
location ~ ^/(protected|framework|themes/\w+/views) {
deny all;
}
location ~ \.(js|css|png|jpg|gif|swf|ico|pdf|mov|fla|zip|rar)$ {
try_files $uri =404;
}
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(.*)$;
try_files $uri index.php;
include fastcgi_params;
fastcgi_index index.php;
fastcgi_pass limesurvey:9000;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
}
}
}

View File

@@ -12,6 +12,7 @@ http {
listen 80; listen 80;
index index.php; index index.php;
set $host_path "/var/www/html"; set $host_path "/var/www/html";
include /etc/nginx/mime.types;
root /var/www/html; root /var/www/html;
server_name localhost; server_name localhost;
charset utf-8; charset utf-8;

10
nginx-certbot/Dockerfile Normal file
View File

@@ -0,0 +1,10 @@
FROM nginx
RUN apt-get update && \
apt-get install -y certbot curl python-certbot-nginx && \
apt-get -y autoclean; apt-get -y autoremove; \
rm -rf /var/lib/apt/lists/*
COPY entrypoint.sh /entrypoint.sh
RUN chmod 700 /entrypoint.sh
CMD ["/entrypoint.sh"]

View File

@@ -0,0 +1,25 @@
#!/bin/sh
cert_path=/etc/letsencrypt/live/$(echo $HOSTNAMES | awk '{print $1}')
mkdir -p cert_path
# if there is no certificate yet, get one
email="--email $CERT_EMAIL"
if [ -z $CERT_EMAIL ]
then
email='--register-unsafely-without-email'
fi
if [ ! -e $cert_path/privkey.pem ]
then
names=""
for h in $HOSTNAMES
do
names=$(echo "$names -d $h")
done
echo "Getting new certificate..."
/usr/bin/curl -s https://raw.githubusercontent.com/certbot/certbot/master/certbot-nginx/certbot_nginx/_internal/tls_configs/options-ssl-nginx.conf > /etc/letsencrypt/options-ssl-nginx.conf
/usr/bin/curl -s https://raw.githubusercontent.com/certbot/certbot/master/certbot/certbot/ssl-dhparams.pem > /etc/letsencrypt/ssl-dhparams.pem
/usr/bin/certbot certonly --standalone $names --agree-tos $email
fi
nginx -g "daemon off;"