Используя Windows 10 с Docker, я пытаюсь добраться до моего Linux контейнера с nginx. Я пытаюсь получить доступ к своему локальному хосту (или через IP-адрес) через веб-браузер, и я получаю сообщение «не могу открыть эту страницу». Внутри моего nginx контейнера, если я пытаюсь получить доступ к localhost или прямой IP-адрес с помощью CURL, я получаю «Отказ в соединении». Я - полный новичок в docker с Windows, и это кошмар, чтобы понять! Пробовал localhost:8080
и 172.18.0.4:8080
(это IP, показанный в docker inspect nginx_1)
Вот мой docker -compose.yml
version: '2'
volumes:
database_data:
driver: local
services:
nginx:
image: nginx:latest
ports:
- 8080:80
volumes:
- ./docker/nginx/default.conf:/etc/nginx/conf.d
volumes_from:
- php
php:
build: ./docker/php
expose:
- 9000
volumes:
- .:/var/www/html
mysql:
image: mysql:latest
expose:
- 3306
volumes:
- database_data:/var/lib/mysql
environment:
MYSQL_ROOT_PASSWORD: secret
MYSQL_DATABASE: project
MYSQL_USER: project
MYSQL_PASSWORD: project
А вот мой nginx файл default.conf:
server {
listen 80 default_server;
root /var/www/html/public;
index index.php;
charset utf-8;
location / {
try_files $uri $uri/ /index.php;
}
location = /favicon.ico { access_log off; log_not_found off; }
location = /robots.txt { access_log off; log_not_found off; }
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
sendfile off;
client_max_body_size 100m;
location ~ \.php$ {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
fastcgi_pass php:9000;
fastcgi_index index.php;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param APPLICATION_ENV development;
fastcgi_intercept_errors off;
fastcgi_buffer_size 16k;
fastcgi_buffers 4 16k;
}
location ~ /\.ht {
deny all;
}
}
Чего не хватает в моей конфигурации, что не позволяет мне получить доступ к моему индексу. php файла с моей хост-машины?
Большое спасибо !