From 1d467e2ea361b611af5e45af8d8c2fe157764d58 Mon Sep 17 00:00:00 2001 From: Jay Date: Tue, 14 Apr 2020 15:34:34 +0000 Subject: [PATCH] sample first version --- .gitignore | 2 ++ docker-compose.yml | 25 ++++++++++++++++++++++++ nginx/Dockerfile | 4 ++++ nginx/default.conf | 48 ++++++++++++++++++++++++++++++++++++++++++++++ php-fpm/Dockerfile | 5 +++++ 5 files changed, 84 insertions(+) create mode 100644 .gitignore create mode 100644 docker-compose.yml create mode 100644 nginx/Dockerfile create mode 100644 nginx/default.conf create mode 100644 php-fpm/Dockerfile diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..cbcb0ae --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +/db +/webroot diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..39222bb --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,25 @@ +version: '3.7' +services: + nginx: + build: nginx/ + container_name: nginx + ports: + - 8880:80 + restart: always + volumes: + - ./webroot:/var/www/html + php-fpm: + build: php-fpm/ + container_name: php-fpm + restart: always + volumes: + - ./webroot:/var/www/html + mariadb: + image: mariadb:10 + restart: always + container_name: mariadb + volumes: + - ./db:/var/lib/mysql + environment: + MYSQL_ROOT_PASSWORD: 123456 + MYSQL_DATABASE: wordpress diff --git a/nginx/Dockerfile b/nginx/Dockerfile new file mode 100644 index 0000000..e5f8e8e --- /dev/null +++ b/nginx/Dockerfile @@ -0,0 +1,4 @@ +FROM nginx:alpine +COPY default.conf /etc/nginx/conf.d/default.conf +RUN adduser -u 1100 -D -H web-user \ + && sed -i -E 's/(user\s+)\w+;/\1 web-user;/' /etc/nginx/nginx.conf diff --git a/nginx/default.conf b/nginx/default.conf new file mode 100644 index 0000000..8792c57 --- /dev/null +++ b/nginx/default.conf @@ -0,0 +1,48 @@ +server { + listen 80; + server_name localhost; + + port_in_redirect off; + absolute_redirect off; + #charset koi8-r; + #access_log /var/log/nginx/host.access.log main; + + root /var/www/html; + index index.php index.html index.htm; + location / { + try_files $uri $uri/ =404; + } + + #error_page 404 /404.html; + + # redirect server error pages to the static page /50x.html + # + error_page 500 502 503 504 /50x.html; + location = /50x.html { + root /usr/share/nginx/html; + } + + # proxy the PHP scripts to Apache listening on 127.0.0.1:80 + # + #location ~ \.php$ { + # proxy_pass http://127.0.0.1; + #} + + # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000 + # + location ~ \.php$ { + #root html; + fastcgi_pass php-fpm:9000; + fastcgi_index index.php; + fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; + include fastcgi_params; + } + + # deny access to .htaccess files, if Apache's document root + # concurs with nginx's one + # + #location ~ /\.ht { + # deny all; + #} +} + diff --git a/php-fpm/Dockerfile b/php-fpm/Dockerfile new file mode 100644 index 0000000..3f1e01e --- /dev/null +++ b/php-fpm/Dockerfile @@ -0,0 +1,5 @@ +FROM php:fpm-alpine +RUN adduser -u 1100 -D -H web-user \ + && sed -i -E 's/(user.+=).+/\1 web-user/' /usr/local/etc/php-fpm.d/www.conf \ + && apk add --no-cache icu-dev oniguruma-dev zlib-dev libpng-dev libzip-dev \ + && docker-php-ext-install mysqli pdo pdo_mysql intl mbstring ctype gd json session zip