フロントエンドとバックエンドを切り離して開発しています。
フロントエンドにはReact、バックエンドにはLaravelを採用しています。
なお、Laravelの中にReactがあるのではなく、LaravelはAPIを提供するのみ、Reactは単体で開発をしています。
そこで、ReactからLaravelのAPIに通信する際に困っています。
現在、docker-composeでそれぞれfrontendサービスとbackendサービスが立ち上がっており、それらをまとめるnginxサービスがある、という形になっております。
nginxサービスでは、8080ポートにフロントエンド(React)、8081ポートにバックエンド(Laravel)がつながるようになっています。
私の開発事例に特化した回答でなくてもよいので、フロントエンドとバックエンドを切り離して、docker-composeを使用した開発をする際に、どのようなAPI通信を行うべきかなど、参考になる記事やコメントがありましたらよろしくお願いします。
ファイル階層はこんな感じです。
- backend/
- frontend/
- database/
- nginx/
- docker-compose.yml
また、docker-compose.ymlは以下の通りです。
version: '2' services: frontend: build: ./frontend ports: - "3000:3000" volumes: - ./frontend:/frontend environment: - CHOKIDAR_USEPOLLING=true tty: true backend: build: ./backend ports: - "8050:80" volumes: - ./backend:/backend depends_on: - database database: build: ./database environment: - MYSQL_ROOT_PASSWORD=xxx - MYSQL_DATABASE=xxx tty: true nginx: build: ./nginx ports: - "8080:8080" - "8081:8081" volumes: - ./nginx/docker-config:/etc/nginx/conf.d depends_on: - frontend - backend
あなたの回答
tips
プレビュー