docker-compose를 통해 볼륨의 사용자 및 그룹을 지정하는 방법은 무엇입니까?

docker-compose를 통해 볼륨의 사용자 및 그룹을 지정하는 방법은 무엇입니까?

docker-compose를 통해 docker 환경을 시작합니다. 이는 mysql 및 nginx 프로세스를 제공합니다. 후자 설치에는 서비스가 제공될 폴더의 경로가 포함됩니다.

문제는 nginx가 사용자 "nginx"로 실행될 때 볼륨이 xfs:xfs로 마운트된다는 것입니다. 디스크에 쓸 수 있어야 하는 PHP 스크립트가 있기 때문에 문제가 발생합니다.

호스트 운영 체제(개발 목적으로 Vagrant에서 실행되는 Linux)에서 폴더 소유자는 www-data:www-data입니다.

적절한 사용자로 볼륨을 마운트하는 방법을 알 수 없습니다.

내 환경은 다음과 같이 로드됩니다.

docker-compose -f docker-compose-dev.yml up -d

docker-compose-dev.yml 파일의 nginx 이미지 부분은 다음과 같습니다.

webserver:
  container_name: somedomain_website
  image: richarvey/nginx-php-fpm:latest
  working_dir: /application
  environment:
    VIRTUAL_HOST: webdev.somedomain.com
    LETSENCRYPT_HOST: somedomain.com
    LETSENCRYPT_EMAIL: [email protected]
#    PGID: 33
#    PUID: 33
  volumes:
    - ../www/2019:/var/www/html/2019
    - ./phpdocker/nginx/nginx_dev.conf:/etc/nginx/sites-available/default.conf
    - ./phpdocker/nginx/nginx_dev.conf:/etc/nginx/sites-enabled/default.conf
    - ./php/php.ini:/usr/local/etc/php/conf.d/99-overrides.ini
  ports:
    - "80:80"

PGID그런데, 지정 하려고 했는데 PUID이로 인해 nginx가 중단되었습니다.

2019-02-11 05:35:38,584 INFO exited: php-fpm (exit status 78; not expected)
2019-02-11 05:35:41,595 INFO spawned: 'php-fpm' with pid 25
[11-Feb-2019 05:35:41] ERROR: [pool www] cannot get uid for user 'nginx'
[11-Feb-2019 05:35:41] ERROR: FPM initialization failed
2019-02-11 05:35:41,635 INFO exited: php-fpm (exit status

누구든지 이 문제를 해결하는 방법을 제안할 수 있습니까?

Ubuntu 18.04.1 LTS에서 docker-compose 1.17.1을 사용합니다.

관련 정보