Proof of concept - LaraDock hosting multiple sites
This commit is contained in:
parent
28b4077a49
commit
93504a714d
|
@ -1,3 +1,4 @@
|
||||||
|
.idea
|
||||||
/logs
|
/logs
|
||||||
/data
|
/data
|
||||||
.env
|
.env
|
||||||
|
|
|
@ -203,6 +203,17 @@ services:
|
||||||
volumes:
|
volumes:
|
||||||
- ../:/var/www/laravel
|
- ../:/var/www/laravel
|
||||||
|
|
||||||
|
# By default, site_a and site_b are mirroring the parent Laravel app.
|
||||||
|
# This is because the nginx container has these domains
|
||||||
|
# enabled to demonstrate how to support multiple sites
|
||||||
|
- ../:/var/www/site_a
|
||||||
|
- ../:/var/www/site_b
|
||||||
|
|
||||||
|
# This demonstrates example of where you may mount sites
|
||||||
|
# - ../../site_a/:/var/www/site_a
|
||||||
|
# - ../../site_b/:/var/www/site_b
|
||||||
|
|
||||||
|
|
||||||
### Databases Data Container ################################
|
### Databases Data Container ################################
|
||||||
|
|
||||||
volumes_data:
|
volumes_data:
|
||||||
|
|
|
@ -3,7 +3,7 @@ FROM nginx:alpine
|
||||||
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
|
||||||
|
|
||||||
ADD nginx.conf /etc/nginx/
|
ADD nginx.conf /etc/nginx/
|
||||||
ADD laravel.conf /etc/nginx/conf.d/laravel.conf
|
COPY sites/*.conf /etc/nginx/sites-available/
|
||||||
|
|
||||||
ARG PHP_UPSTREAM=php-fpm
|
ARG PHP_UPSTREAM=php-fpm
|
||||||
|
|
||||||
|
|
|
@ -24,5 +24,6 @@ http {
|
||||||
gzip on;
|
gzip on;
|
||||||
gzip_disable "msie6";
|
gzip_disable "msie6";
|
||||||
include /etc/nginx/conf.d/*.conf;
|
include /etc/nginx/conf.d/*.conf;
|
||||||
|
include /etc/nginx/sites-available/*;
|
||||||
open_file_cache max=100;
|
open_file_cache max=100;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,7 +1,9 @@
|
||||||
server {
|
server {
|
||||||
|
|
||||||
listen 80 default_server;
|
listen 80 default_server;
|
||||||
listen [::]:80 default_server ipv6only=on;
|
listen [::]:80 default_server ipv6only=on;
|
||||||
|
|
||||||
|
server_name laravel;
|
||||||
root /var/www/laravel/public;
|
root /var/www/laravel/public;
|
||||||
index index.php index.html index.htm;
|
index index.php index.html index.htm;
|
||||||
|
|
|
@ -0,0 +1,28 @@
|
||||||
|
server {
|
||||||
|
|
||||||
|
listen 80;
|
||||||
|
listen [::]:80;
|
||||||
|
|
||||||
|
server_name site_a;
|
||||||
|
root /var/www/site_a/public;
|
||||||
|
index index.php index.html index.htm;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
try_files $uri $uri/ /index.php$is_args$args;
|
||||||
|
}
|
||||||
|
|
||||||
|
location ~ \.php$ {
|
||||||
|
try_files $uri /index.php =404;
|
||||||
|
fastcgi_pass php-upstream;
|
||||||
|
fastcgi_index index.php;
|
||||||
|
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||||
|
include fastcgi_params;
|
||||||
|
}
|
||||||
|
|
||||||
|
location ~ /\.ht {
|
||||||
|
deny all;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,28 @@
|
||||||
|
server {
|
||||||
|
|
||||||
|
listen 80;
|
||||||
|
listen [::]:80;
|
||||||
|
|
||||||
|
server_name site_b;
|
||||||
|
root /var/www/site_b/public;
|
||||||
|
index index.php index.html index.htm;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
try_files $uri $uri/ /index.php$is_args$args;
|
||||||
|
}
|
||||||
|
|
||||||
|
location ~ \.php$ {
|
||||||
|
try_files $uri /index.php =404;
|
||||||
|
fastcgi_pass php-upstream;
|
||||||
|
fastcgi_index index.php;
|
||||||
|
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
||||||
|
include fastcgi_params;
|
||||||
|
}
|
||||||
|
|
||||||
|
location ~ /\.ht {
|
||||||
|
deny all;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue