/ / Docker NGINX - PHP-FPM Cross kontajner povolenia? - ukotvenie, povolenia súborov, docker-volume

Docker NGINX - PHP-FPM povolenie Cross kontajner? - dokovacia stanica, povolenia súboru, veľkosť dokovacej stanice

I "m nastavenie wordpress stack a majú krížové povolenia súborov.

Pri použití docker-compose up Oprávnenia sa zdajú byť problémom, ale pri použití lokálneho ukotvovacieho roja a používania docker stack deploy, nginx mi dáva 403 pre chyby pri povolení súborov. Pri kontrole oboch nginx:alpine kontajner a wordpress:php7.1-fpm-alpine kontajner, naozaj vidím, že kontajnery majú iné povolenie, na strane nginx to označuje súbory vnútri var/www/html vo vlastníctve ID užívateľa a skupiny 82 zatiaľ čo na php7.1 sú vo vlastníctve www-data.

Ako sa môžem uistiť, že povolenie je v kontajneroch správne? Súbory sa viažu z hostiteľa.

`` `

version: "3"
services:
nginx:
depends_on:
- wordpress
image: private/nginx
build:
context: ./stack/nginx
volumes:
- "wordpress:/var/www/html"
ports:
- 80:80
wordpress:
depends_on:
- mysql
image: private/wordpress
build:
context: ./stack/wordpress
volumes:
- "wordpress:/var/www/html"
environment:
WORDPRESS_DB_USER: wordpress
WORDPRESS_DB_PASSWORD: password
mysql:
image: mariadb
volumes:
- "mysql:/var/lib/mysql"
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: wordpress
MYSQL_USER: wordpress
MYSQL_PASSWORD: password
volumes:
wordpress:
driver: local
driver_opts:
type: none
o: bind
device: "${PWD}/wordpress"
mysql:

`` `

odpovede:

0 pre odpoveď č. 1

Pre kohokoľvek, kto prichádza s touto otázkou a nemá žiadne riešenie, takto som sa k tejto situácii priblížil.

Pridal som nasledujúce do môjho dockerfile, vytvára nový www-dataskupiny A používateľa id ako id ktorý sa používa pre www-data užívateľ 82 & skupina 82 v php-fpm image.

RUN set -x ; 
addgroup -g 82 -S www-data ; 
adduser -u 82 -D -S -G www-data www-data && exit 0 ; exit 1

Do môjho docker súboru pre nginx.

a v mojom nginx.conf nastavil som pracovníka nginx na novovytvoreného používateľa ww-data.

user www-data;