From e84685aab867b28c7c73fe5833dbd0b06e5b8a2d Mon Sep 17 00:00:00 2001 From: Matthos Denys Date: Mon, 8 Mar 2021 21:07:37 +0300 Subject: [PATCH] add reverse proxy --- srcs/nginx/nginx.conf | 16 +++++++++++++++- srcs/phpmyadmin/Dockerfile | 4 +++- srcs/phpmyadmin/nginx.conf | 4 +++- srcs/wp/Dockerfile | 4 +++- srcs/wp/nginx.conf | 4 +++- 5 files changed, 27 insertions(+), 5 deletions(-) diff --git a/srcs/nginx/nginx.conf b/srcs/nginx/nginx.conf index 5e75123..18ec4a6 100755 --- a/srcs/nginx/nginx.conf +++ b/srcs/nginx/nginx.conf @@ -4,7 +4,7 @@ http { server { listen 80 default_server; - error_log logs/error.log debug; + error_log logs/error.log debug; return 301 https://$host$request_uri; } @@ -17,6 +17,20 @@ http { ssl_certificate /etc/nginx/ssl/html.pem; ssl_certificate_key /etc/nginx/ssl/html.key; + + + + location /wordpress { + return 307 https://$host:5050/; + } + + location = ^(/phpmyadmin)$ { + proxy_pass https://192.168.99.150:5000/$1; } + location /phpmyadmin { + proxy_pass https://192.168.99.150:5000/; + proxy_redirect /index.php /phpmyadmin/index.php; + } + } } \ No newline at end of file diff --git a/srcs/phpmyadmin/Dockerfile b/srcs/phpmyadmin/Dockerfile index f72f0f0..4635a57 100755 --- a/srcs/phpmyadmin/Dockerfile +++ b/srcs/phpmyadmin/Dockerfile @@ -1,13 +1,15 @@ FROM alpine:3.12 LABEL maintainer="mdenys" RUN apk update -RUN apk add supervisor nginx php7 php7-fpm php7-opcache php7-gd php7-mysqli php7-zlib php7-curl php7-mbstring php7-json php7-session mysql +RUN apk add supervisor nginx php7 php7-fpm php7-opcache php7-gd php7-mysqli php7-zlib php7-curl php7-mbstring php7-json php7-session mysql openssl RUN mkdir -p /var/www/localhost/htdocs/ RUN mkdir -p /run/php7 RUN mkdir -p /run/nginx RUN wget http://files.directadmin.com/services/all/phpMyAdmin/phpMyAdmin-5.0.1-all-languages.tar.gz RUN tar -xvf phpMyAdmin-5.0.1-all-languages.tar.gz --strip-components 1 -C /var/www/localhost/htdocs/ COPY phpmyadmin.inc.php /var/www/localhost/htdocs/config.inc.php +RUN mkdir /etc/nginx/ssl +RUN openssl req -newkey rsa:4096 -x509 -sha256 -days 365 -nodes -out /etc/nginx/ssl/html.pem -keyout /etc/nginx/ssl/html.key -subj "/C=RU/ST=Kazan/L=Kazan/O=21 School/OU=mdenys/CN=html" RUN mkdir -p /var/www/localhost/htdocs/tmp RUN chmod 777 /var/www/localhost/htdocs/tmp COPY nginx.conf /etc/nginx/conf.d/default.conf diff --git a/srcs/phpmyadmin/nginx.conf b/srcs/phpmyadmin/nginx.conf index 38dfb75..2f8a1b0 100755 --- a/srcs/phpmyadmin/nginx.conf +++ b/srcs/phpmyadmin/nginx.conf @@ -1,6 +1,8 @@ server { - listen 0.0.0.0:5000; + listen 0.0.0.0:5000 ssl default_server; server_name localhost; + ssl_certificate /etc/nginx/ssl/html.pem; + ssl_certificate_key /etc/nginx/ssl/html.key; root /var/www/localhost/htdocs/; autoindex on; index index.php; diff --git a/srcs/wp/Dockerfile b/srcs/wp/Dockerfile index 61bf2dd..89e9d64 100755 --- a/srcs/wp/Dockerfile +++ b/srcs/wp/Dockerfile @@ -1,12 +1,14 @@ FROM alpine:3.12 RUN apk update -RUN apk add curl supervisor nginx php7 php7-fpm php7-phar php7-opcache php7-gd php7-mysqli php7-zlib php7-curl php7-mbstring php7-json php7-session mariadb mariadb-client openrc +RUN apk add openssl curl supervisor nginx php7 php7-fpm php7-phar php7-opcache php7-gd php7-mysqli php7-zlib php7-curl php7-mbstring php7-json php7-session mariadb mariadb-client openrc RUN mkdir "/run/mysqld" && chown -R mysql /run/mysqld RUN mkdir -p /var/www/localhost/htdocs/ RUN mkdir -p /run/php7 RUN mkdir -p /run/nginx COPY nginx.conf /etc/nginx/conf.d/default.conf COPY supervisord.conf /etc/supervisord.conf +RUN mkdir /etc/nginx/ssl +RUN openssl req -newkey rsa:4096 -x509 -sha256 -days 365 -nodes -out /etc/nginx/ssl/html.pem -keyout /etc/nginx/ssl/html.key -subj "/C=RU/ST=Kazan/L=Kazan/O=21 School/OU=mdenys/CN=html" COPY start.sh . COPY wp-cli.phar . RUN chmod +x wp-cli.phar diff --git a/srcs/wp/nginx.conf b/srcs/wp/nginx.conf index 8630ac2..0b56b3a 100755 --- a/srcs/wp/nginx.conf +++ b/srcs/wp/nginx.conf @@ -1,9 +1,11 @@ server { - listen 0.0.0.0:5050; + listen 0.0.0.0:5050 ssl default_server; server_name localhost; root /var/www/localhost/htdocs/; autoindex on; index index.php; + ssl_certificate /etc/nginx/ssl/html.pem; + ssl_certificate_key /etc/nginx/ssl/html.key; location ~ \.php$ { include fastcgi.conf;