【发布时间】:2021-11-24 11:51:04
【问题描述】:
我在 Laravel 中开发了一个 RESTful API,供 ReactJS 客户端使用。 他们工作正常。 我对接了 Laravel 后端和 React 前端。 Laravel 中的网络路由工作正常(所以 localhost:8000),但是,API 路由不起作用...... 有谁知道问题可能出在哪里?我怀疑我的 dockerfiles 和 docker compose 有问题,因为 Laravel 网络路由有效,前端有效……只有 laravel api 路由不起作用……
这是我的 yml 文件
version: '3.7'
services:
frontend:
container_name: client
build:
context: ./clientside
dockerfile: Dockerfile
tty: true
ports:
- "3000:3000"
volumes:
- ./clientside:/app/clientside
depends_on:
- backend
networks:
- app
backend:
container_name: server
build:
context: ./coolserver
dockerfile: Dockerfile
environment:
DB_HOST: db
DB_DATABASE: mynewserver
DB_USERNAME: root
DB_PASSWORD:
ports:
- "8000:8000"
volumes:
- ./coolserver:/app/coolserver
depends_on:
- db
networks:
- app
db:
container_name: database
image: mysql:5.7.22
environment:
MYSQL_DATABASE: mynewserver
MYSQL_USER: root
MYSQL_ALLOW_EMPTY_PASSWORD: "true"
MYSQL_PASSWORD:
MYSQL_ROOT_PASSWORD:
volumes:
- .dbdata:/var/lib/mysql
ports:
- "3306:3306"
networks:
- app
networks:
app:
driver: bridge
这是我的后端 dockerfile
FROM php:7.3
RUN apt-get update -y && apt-get install -y openssl zip unzip git
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
RUN docker-php-ext-install pdo mbstring pdo_mysql
WORKDIR /app/coolserver
COPY . .
RUN composer install
CMD php artisan serve --host=0.0.0.0
EXPOSE 8000
最后这是我的反应 dockerfile
FROM node:alpine
WORKDIR /app/clientside
COPY . .
RUN npm install
EXPOSE 3000
CMD npm start
【问题讨论】:
标签: laravel docker docker-compose