Tôi vừa định cấu hình máy chủ của mình thành revproxy nhiều trang web bằng cách sử dụng mạng bên ngoài docker và định cấu hình bộ chứa nginx revproxy của tôi để hoạt động với fastcgi. Ngay bây giờ, với mục đích thử nghiệm, một trong các trang web đang hoạt động, nhưng có vẻ như nginx cho bộ chứa trang web không tìm ra chính xác đường dẫn cho tệp chỉ mục laravel và chỉ cung cấp cho tôi trang "Chào mừng nginx" mặc định.
Tôi sẽ rất biết ơn nếu được giúp đỡ.
Của tôi Dockerfile
cho vùng chứa revproxy
TỪ nginx:alpine
TIẾP XÚC 80/tcp
TIẾP XÚC 443/tcp
CMD ["/bin/sh", "-c", "exec nginx -g 'daemon off;';"]
WORKDIR /var/www
soạn thảo docker
cho vùng chứa revproxy
phiên bản: '3.8'
dịch vụ:
nginx-proxy:
xây dựng: ./
container_name: nginx-proxy
cổng:
- 80:80
- 443:443
khối lượng:
- ./default.conf:/etc/nginx/conf.d/default.conf
- /var/www:/var/www/html
- ./backend-not-found.html:/var/www/html/backend-not-found.html
- ./certs:/etc/nginx/certs:ro
mạng:
- Ủy quyền
khởi động lại: luôn luôn
mạng:
Ủy quyền:
bên ngoài:
tên: nginx-proxy
nginx.conf
tệp cho bộ chứa revproxy
người phục vụ {
nghe 80;
server_name site.com;
bộ ký tự UTF-8;
gốc /var/www/html/laravel/public;
error_page 404 /backend-not-found.html;
vị trí = /backend-not-found.html {
chấp nhận tất cả;
}
vị trí ~ \.php$ {
bộ giải quyết 127.0.0.11;
đặt $upstream laravel-app:9000;
# nginx sẽ bắt đầu nếu máy chủ không thể truy cập được
fastcgi_pass $upstream;
try_files $uri =404;
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_index index.php;
bao gồm fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
}
địa điểm / {
bộ giải quyết 127.0.0.11;
đặt $upstream http://laravel-nginx:80;
# nginx sẽ bắt đầu nếu máy chủ không thể truy cập được
proxy_pass $upstream;
try_files $uri $uri/ /index.php?$query_string;
bật gzip_static;
}
}
# Mặc định
người phục vụ {
nghe 80 default_server;
tên máy chủ _;
gốc/var/www/html;
bộ ký tự UTF-8;
error_page 404 /backend-not-found.html;
vị trí = /backend-not-found.html {
chấp nhận tất cả;
}
địa điểm / {
trả lại 404;
}
truy cập_đăng xuất;
log_not_found tắt;
error_log /var/log/nginx/error.log lỗi;
}
Và soạn thảo docker
tệp cho bộ chứa trang web
phiên bản: '3.8'
dịch vụ:
Dịch vụ #PHP
ứng dụng:
xây dựng:
lập luận:
người dùng: alex
uid: 1000
bối cảnh: ./
dockerfile: dockerfile
container_name: ứng dụng ${APP_NAME}
khởi động lại: luôn luôn
tty: đúng
working_dir: /var/www
cổng:
- 9000:9000
liên kết:
- db
khối lượng:
- ./:/var/www
- ./docker-compose_configs/php/custom.ini:/usr/local/etc/php/conf.d/custom.ini
mạng:
- Ủy quyền
- mạng ứng dụng
Dịch vụ #Nginx
nginx:
hình ảnh: nginx:alpine
container_name: ${APP_NAME}-nginx
khởi động lại: luôn luôn
tty: đúng
cổng:
- 8080:80
khởi động lại: luôn luôn
khối lượng:
- ./:/var/www/html
mạng:
- Ủy quyền
- mạng ứng dụng
phụ thuộc:
- ứng dụng
liên kết:
- ứng dụng
Dịch vụ #MySQL
đb:
hình ảnh: mysql: mới nhất
container_name: ${APP_NAME}-db
khởi động lại: trừ khi dừng
tty: đúng
cổng:
- 3306:3306
môi trường:
MYSQL_DATABASE: ${DB_DATABASE}
MYSQL_ROOT_PASSWORD: ${DB_PASSWORD}
MYSQL_PASSWORD: ${DB_PASSWORD}
MYSQL_USER: ${DB_USERNAME}
DỊCH VỤ_TAGS: nhà phát triển
mạng:
- mạng ứng dụng
khối lượng:
- dbdata:/var/lib/mysql
- ./docker-compose_configs/mysql/my.cnf:/etc/mysql/my.cnf
#PhpMyAdmin
phpmyadmin:
hình ảnh: phpmyadmin/phpmyadmin
container_name: ${APP_NAME}-pma
môi trường:
PMA_HOST: db
PMA_ARBITRARY: 1
TẢI LÊN_LIMIT: 400M
khởi động lại: luôn luôn
mạng:
- mạng ứng dụng
cổng:
- 8081:80
phụ thuộc:
- nginx
- db
#elasticsearch
tìm kiếm đàn hồi:
hình ảnh: elaticsearch:7.12.1
container_name: ${APP_NAME}-elasticsearch
khối lượng:
- dữ liệu elaticsearch:/usr/share/elaticsearch/data
môi trường:
- khám phá.type=nút đơn
- cluster.routing.allocation.disk.threshold_enabled=false
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xms512m -Xmx512m"
giới hạn:
ghi nhớ:
nhẹ nhàng: -1
khó :-1
cổng:
- "9200:9200"
mạng:
- mạng ứng dụng
phụ thuộc:
- db
#Docker Mạng
mạng:
mạng ứng dụng:
tên: mạng ${APP_NAME}
tài xế: cầu
Ủy quyền:
bên ngoài:
tên: nginx-proxy
#tập
khối lượng:
cơ sở dữ liệu:
tài xế: địa phương
elaticsearch-dữ liệu:
tài xế: địa phương