Имеется такая конфигурация сайта:
default.conf основного сайта, который работает на 443 порту
server {
listen 80;
server_name mysite.ru www.mysite.ru;
return 301 https://mysite.ru$request_uri;
}
server {
listen 443;
server_name www.mysite.ru;
return 301 https://mysite.ru$request_uri;
}
server {
#listen 80;
#listen [::]:80;
listen 443 ssl http2 default_server;
listen [::]:443 ssl http2 default_server;
server_name _;
root /var/www/html/public;
server_name localhost;
index index.php index.html;
ssl_certificate /etc/nginx/ssl/mysite.ru/mysiteru.crt;
ssl_certificate_key /etc/nginx/ssl/mysite.ru/mysiteru.key;
add_header X-Frame-Options "SAMEORIGIN";
add_header X-Content-Type-Options "nosniff";
add_header X-XSS-Protection "1; mode=block";
location / {
try_files $uri $uri/ /index.php?$query_string;
gzip_static on;
}
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
error_page 404 /index.php;
location ~ \.php$ {
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass php:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
include fastcgi_params;
}
location ~* \.(jpg|jpeg|gif|png|css|js|ico|xml)$ {
expires max;
add_header Cache-Control public;
log_not_found off;
access_log off;
error_log off;
add_header Last-Modified "";
add_header ETag "";
break;
}
location ~ /\. {
log_not_found off;
deny all;
}
}
docker-compose.yml основного сайта (часть)
networks:
frontend:
external:
name: proxy_proxy
laravel:
services:
nginx:
build:
context: ./dockerfiles
dockerfile: nginx.dockerfile
args:
- UID=${UID:-1000}
- GID=${GID:-1000}
environment:
- VIRTUAL_HOST=site.docker
ports:
- "443:443"
#- "80:80"
volumes:
- ./src:/var/www/html:delegated
- ./nginx/ssl:/etc/nginx/ssl
- ./dockerfiles/nginx/default.conf:/etc/nginx/conf.d/default.conf
depends_on:
- php
- mysql
networks:
- frontend
- laravel
конфигурация поддомена, который работает на 80 порту
server {
listen 80;
server_name sub.mysite.ru;
root /var/www/sub.mysite.ru/html;
index index.html;
location / {
try_files $uri $uri/ =404;
}
}
docker-compose.yml
поддомена
services:
gs_nginx:
image: nginx
container_name: gs_docker_nginx
environment:
- VIRTUAL_HOST=sub.mysite.ru
volumes:
- ./nginx/conf.d/default.conf:/etc/nginx/conf.d/default.conf
- ./../:/var/www/
- ./nginx/logs:/var/log/nginx/
- ./nginx/ssl:/etc/nginx/ssl
networks:
- frontend
конфигурация прокси, файл
docker-compose.yml
services:
proxy:
image: jwilder/nginx-proxy
ports:
- 80:80
volumes:
- /var/run/docker.sock:/tmp/docker.sock:ro
networks:
- proxy
networks:
proxy:
driver: bridge
Подскажите алгоритм действий как правильно настроить