@vrazbros

Как работать с ларавел в докере?

разработал для себя небольшой докер компоуз для работы с ларавел в докер окружении
вот его содержимое
version: '3'

networks:
  laravel:

services:
  nginx:
    image: nginx:stable-alpine
    container_name: nginx
    depends_on:
      - php
      - mysql
    ports:
      - "80:80"
    volumes:
      - ./src:/var/www/html
      - ./nginx/default.conf:/etc/nginx/conf.d/default.conf
    networks:
      - laravel

  mysql:
    image: mysql:5.7
    container_name: mysql
    tty: true
    ports:
      - "4306:3306"
    volumes:
      - ./mysql:/var/lib/mysql
    environment:
      - MYSQL_DATABASE=laravel
      - MYSQL_ROOT_PASSWORD=root
    networks:
      - laravel
  php:
    build: ./php
    container_name: php
    volumes:
      - ./src:/var/www/html
    ports:
      - "9000:9000"
    networks:
      - laravel


но при работе есть ряд проблемc с правами на файлы и директории, например
The stream or file "/var/www/html/storage/logs/laravel.log" could not be opened: failed to open stream: Permission denied

Погуглил в основном все предлагают поставить на папку права 777 но это же огромная дыра в безопасности ? Как ее можно решить ?

и 2е кокда захожу в контейнер с php, то получается текущий пользователь root если я создаю миграции или контролер то потом не могу модифицировать эти файлы на хост машине тк созданые файлы получается создаются под рутом как быть в этом случаи ?
  • Вопрос задан
  • 63 просмотра
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы