Создание контейнера в докере для фронтенда на VueJS в проекте Laravel

Есть следующая структура проекта:

структура проекта

в src находится ларавель проект, в ресурсах вью. Есть две идеи: сделать для вью отдельный контейнер, либо оставить весь проект лары в одном контейнере, и в него пихать модули ноды. Вот собственно docker-compose.yaml:

version: "3.8"

services:
  nginx:
    image: "nginx:stable-alpine"
    ports:
      - "8000:80"
    volumes:
      - ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf:ro
      - ./src:/var/www/laravel
    depends_on:
      - mysql
      - php
  php:
    build:
      context: dockerfiles
      dockerfile: php.Dockerfile
    volumes:
      - ./src:/var/www/laravel
  mysql:
    image: mysql:8.0
    ports:
      - "3316:3306"
    env_file:
      - env/mysql.env

  composer:
    build:
      context: dockerfiles
      dockerfile: composer.Dockerfile
    volumes:
      - ./src:/var/www/laravel
  artisan:
    build:
      context: dockerfiles
      dockerfile: php.Dockerfile
    volumes:
       - ./src:/var/www/laravel
    entrypoint: ["php", "/var/www/laravel/artisan"]

Хотелось бы получить помощь с выбором какой способ лучше и пример реализации, как с помощью билдов это сделать


Ответы (0 шт):