diff options
author | VirtualTam <virtualtam+github@flibidi.net> | 2018-06-20 16:59:29 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-06-20 16:59:29 +0200 |
commit | 6325e74caa464818000066b5112cfd293e168e50 (patch) | |
tree | 8c452980d8c7d6f98aa61e2d814377a1efc70fb3 /.docker | |
parent | 26b0b2022870a540c1a6d54e949c4bdc1486daed (diff) | |
parent | c064d3179e0396983bdf8dee545388e4142ed842 (diff) | |
download | Shaarli-6325e74caa464818000066b5112cfd293e168e50.tar.gz Shaarli-6325e74caa464818000066b5112cfd293e168e50.tar.zst Shaarli-6325e74caa464818000066b5112cfd293e168e50.zip |
Merge pull request #1158 from virtualtam/master-dockerfile
Master: Build the Docker images from the local sources
Diffstat (limited to '.docker')
-rw-r--r-- | .docker/.htaccess | 13 | ||||
-rw-r--r-- | .docker/nginx.conf | 73 | ||||
-rw-r--r-- | .docker/php-fpm.conf | 16 | ||||
-rwxr-xr-x | .docker/services.d/.s6-svscan/finish | 2 | ||||
-rwxr-xr-x | .docker/services.d/nginx/run | 2 | ||||
-rwxr-xr-x | .docker/services.d/php-fpm/run | 2 |
6 files changed, 108 insertions, 0 deletions
diff --git a/.docker/.htaccess b/.docker/.htaccess new file mode 100644 index 00000000..f601c1ee --- /dev/null +++ b/.docker/.htaccess | |||
@@ -0,0 +1,13 @@ | |||
1 | <IfModule version_module> | ||
2 | <IfVersion >= 2.4> | ||
3 | Require all denied | ||
4 | </IfVersion> | ||
5 | <IfVersion < 2.4> | ||
6 | Allow from none | ||
7 | Deny from all | ||
8 | </IfVersion> | ||
9 | </IfModule> | ||
10 | |||
11 | <IfModule !version_module> | ||
12 | Require all denied | ||
13 | </IfModule> | ||
diff --git a/.docker/nginx.conf b/.docker/nginx.conf new file mode 100644 index 00000000..07fba33f --- /dev/null +++ b/.docker/nginx.conf | |||
@@ -0,0 +1,73 @@ | |||
1 | user nginx nginx; | ||
2 | daemon off; | ||
3 | worker_processes 4; | ||
4 | pid /var/run/nginx.pid; | ||
5 | |||
6 | events { | ||
7 | worker_connections 768; | ||
8 | } | ||
9 | |||
10 | http { | ||
11 | include mime.types; | ||
12 | default_type application/octet-stream; | ||
13 | keepalive_timeout 20; | ||
14 | |||
15 | client_max_body_size 10m; | ||
16 | |||
17 | index index.html index.php; | ||
18 | |||
19 | server { | ||
20 | listen 80; | ||
21 | root /var/www/shaarli; | ||
22 | |||
23 | access_log /var/log/nginx/shaarli.access.log; | ||
24 | error_log /var/log/nginx/shaarli.error.log; | ||
25 | |||
26 | location ~ /\. { | ||
27 | # deny access to dotfiles | ||
28 | access_log off; | ||
29 | log_not_found off; | ||
30 | deny all; | ||
31 | } | ||
32 | |||
33 | location ~ ~$ { | ||
34 | # deny access to temp editor files, e.g. "script.php~" | ||
35 | access_log off; | ||
36 | log_not_found off; | ||
37 | deny all; | ||
38 | } | ||
39 | |||
40 | location ~* \.(?:ico|css|js|gif|jpe?g|png)$ { | ||
41 | # cache static assets | ||
42 | expires max; | ||
43 | add_header Pragma public; | ||
44 | add_header Cache-Control "public, must-revalidate, proxy-revalidate"; | ||
45 | } | ||
46 | |||
47 | location = /favicon.ico { | ||
48 | # serve the Shaarli favicon from its custom location | ||
49 | alias /var/www/shaarli/images/favicon.ico; | ||
50 | } | ||
51 | |||
52 | location / { | ||
53 | # Slim - rewrite URLs | ||
54 | try_files $uri /index.php$is_args$args; | ||
55 | } | ||
56 | |||
57 | location ~ (index)\.php$ { | ||
58 | # Slim - split URL path into (script_filename, path_info) | ||
59 | try_files $uri =404; | ||
60 | fastcgi_split_path_info ^(.+\.php)(/.+)$; | ||
61 | |||
62 | # filter and proxy PHP requests to PHP-FPM | ||
63 | fastcgi_pass unix:/var/run/php-fpm.sock; | ||
64 | fastcgi_index index.php; | ||
65 | include fastcgi.conf; | ||
66 | } | ||
67 | |||
68 | location ~ \.php$ { | ||
69 | # deny access to all other PHP scripts | ||
70 | deny all; | ||
71 | } | ||
72 | } | ||
73 | } | ||
diff --git a/.docker/php-fpm.conf b/.docker/php-fpm.conf new file mode 100644 index 00000000..0843c164 --- /dev/null +++ b/.docker/php-fpm.conf | |||
@@ -0,0 +1,16 @@ | |||
1 | [global] | ||
2 | daemonize = no | ||
3 | |||
4 | [www] | ||
5 | user = nginx | ||
6 | group = nginx | ||
7 | listen.owner = nginx | ||
8 | listen.group = nginx | ||
9 | catch_workers_output = yes | ||
10 | listen = /var/run/php-fpm.sock | ||
11 | pm = dynamic | ||
12 | pm.max_children = 20 | ||
13 | pm.start_servers = 1 | ||
14 | pm.min_spare_servers = 1 | ||
15 | pm.max_spare_servers = 3 | ||
16 | pm.max_requests = 2048 | ||
diff --git a/.docker/services.d/.s6-svscan/finish b/.docker/services.d/.s6-svscan/finish new file mode 100755 index 00000000..1dadeeaf --- /dev/null +++ b/.docker/services.d/.s6-svscan/finish | |||
@@ -0,0 +1,2 @@ | |||
1 | #!/bin/sh | ||
2 | /bin/true | ||
diff --git a/.docker/services.d/nginx/run b/.docker/services.d/nginx/run new file mode 100755 index 00000000..21e7b0d6 --- /dev/null +++ b/.docker/services.d/nginx/run | |||
@@ -0,0 +1,2 @@ | |||
1 | #!/bin/execlineb -P | ||
2 | nginx | ||
diff --git a/.docker/services.d/php-fpm/run b/.docker/services.d/php-fpm/run new file mode 100755 index 00000000..21dd0107 --- /dev/null +++ b/.docker/services.d/php-fpm/run | |||
@@ -0,0 +1,2 @@ | |||
1 | #!/bin/execlineb -P | ||
2 | php-fpm7 -F | ||