aboutsummaryrefslogtreecommitdiffhomepage
path: root/docker/production/stable
diff options
context:
space:
mode:
Diffstat (limited to 'docker/production/stable')
-rw-r--r--docker/production/stable/Dockerfile20
-rw-r--r--docker/production/stable/IMAGE.md5
-rw-r--r--docker/production/stable/nginx.conf56
-rw-r--r--docker/production/stable/supervised.conf13
4 files changed, 94 insertions, 0 deletions
diff --git a/docker/production/stable/Dockerfile b/docker/production/stable/Dockerfile
new file mode 100644
index 00000000..2bb3948c
--- /dev/null
+++ b/docker/production/stable/Dockerfile
@@ -0,0 +1,20 @@
1FROM debian:jessie
2MAINTAINER Shaarli Community
3
4RUN apt-get update \
5 && apt-get install -y curl nginx-light php5-fpm php5-gd supervisor
6
7COPY nginx.conf /etc/nginx/nginx.conf
8COPY supervised.conf /etc/supervisor/conf.d/supervised.conf
9
10WORKDIR /var/www
11RUN rm -rf html \
12 && curl -L https://github.com/shaarli/Shaarli/archive/stable.tar.gz | tar xvzf - \
13 && mv Shaarli-stable shaarli \
14 && chown -R www-data:www-data shaarli
15
16VOLUME /var/www/shaarli/data
17
18EXPOSE 80
19
20CMD ["/usr/bin/supervisord", "-n", "-c", "/etc/supervisor/supervisord.conf"]
diff --git a/docker/production/stable/IMAGE.md b/docker/production/stable/IMAGE.md
new file mode 100644
index 00000000..d85b1d7a
--- /dev/null
+++ b/docker/production/stable/IMAGE.md
@@ -0,0 +1,5 @@
1## shaarli:stable
2- [Debian 8 Jessie](https://hub.docker.com/_/debian/)
3- [PHP5-FPM](http://php-fpm.org/)
4- [Nginx](http://nginx.org/)
5- [Shaarli (stable)](https://github.com/shaarli/Shaarli/tree/stable)
diff --git a/docker/production/stable/nginx.conf b/docker/production/stable/nginx.conf
new file mode 100644
index 00000000..e23c4587
--- /dev/null
+++ b/docker/production/stable/nginx.conf
@@ -0,0 +1,56 @@
1user www-data www-data;
2daemon off;
3worker_processes 4;
4
5events {
6 worker_connections 768;
7}
8
9http {
10 include mime.types;
11 default_type application/octet-stream;
12 keepalive_timeout 20;
13
14 index index.html index.php;
15
16 server {
17 listen 80;
18 root /var/www/shaarli;
19
20 access_log /var/log/nginx/shaarli.access.log;
21 error_log /var/log/nginx/shaarli.error.log;
22
23 location ~ /\. {
24 # deny access to dotfiles
25 access_log off;
26 log_not_found off;
27 deny all;
28 }
29
30 location ~ ~$ {
31 # deny access to temp editor files, e.g. "script.php~"
32 access_log off;
33 log_not_found off;
34 deny all;
35 }
36
37 location ~* \.(?:ico|css|js|gif|jpe?g|png)$ {
38 # cache static assets
39 expires max;
40 add_header Pragma public;
41 add_header Cache-Control "public, must-revalidate, proxy-revalidate";
42 }
43
44 location ~ (index)\.php$ {
45 # filter and proxy PHP requests to PHP-FPM
46 fastcgi_pass unix:/var/run/php5-fpm.sock;
47 fastcgi_index index.php;
48 include fastcgi.conf;
49 }
50
51 location ~ \.php$ {
52 # deny access to all other PHP scripts
53 deny all;
54 }
55 }
56}
diff --git a/docker/production/stable/supervised.conf b/docker/production/stable/supervised.conf
new file mode 100644
index 00000000..5acd9795
--- /dev/null
+++ b/docker/production/stable/supervised.conf
@@ -0,0 +1,13 @@
1[program:php5-fpm]
2command=/usr/sbin/php5-fpm -F
3priority=5
4autostart=true
5autorestart=true
6
7[program:nginx]
8command=/usr/sbin/nginx
9priority=10
10autostart=true
11autorestart=true
12stdout_events_enabled=true
13stderr_events_enabled=true