У меня есть контейнер с nginx и php, в котором развернуто приложение Laravel, а также установлен сборщик vite. Когда я запускаю команду npm run dev, файлы CSS и JS не компилируются. При попытке открыть приложение в браузере, я получаю 3 ошибки:
- GET http://localhost:5173/@vite/client net::ERR_EMPTY_RESPONSE
- GET http://localhost:5173/resources/js/app.js net::ERR_EMPTY_RESPONSE
- GET http://localhost:5173/resources/css/app.css net::ERR_EMPTY_RESPONSE
Я понял, что основная проблема заключается в том, что порт 5173 недоступен из контейнера. Можете подсказать, как можно настроить доступ к порту 5173 ?
Мой файл docker-compose.yaml
version: "3"
networks:
backend:
driver: bridge
services:
nginx:
image: "nginx:stable-alpine"
ports:
- "5000:80"
volumes:
- ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf:ro
- ./src:/var/www/laravel
depends_on:
- mysql
- php
- phpmyadmin
- npm
networks:
- backend
php:
build:
context: dockerfiles
dockerfile: php.Dockerfile
volumes:
- ./src:/var/www/laravel
networks:
- backend
mysql:
image: mysql:8.0
ports:
- "3316:3306"
env_file:
- env/mysql.env
networks:
- backend
composer:
build:
context: dockerfiles
dockerfile: composer.Dockerfile
volumes:
- ./src:/var/www/laravel
networks:
- backend
artisan:
build:
context: dockerfiles
dockerfile: php.Dockerfile
volumes:
- ./src:/var/www/laravel
entrypoint: ["php","/var/www/laravel/artisan"]
networks:
- backend
npm:
image: node:alpine
container_name: npm
volumes:
- ./src:/var/www/laravel
ports:
- "5173:5173"
working_dir: /var/www/laravel
entrypoint: ["npm"]
command: ["npm", "run", "dev", "--host", "0.0.0.0"]