도커 - 작성자로 두 가지 서비스를 빌드하려고합니다. 첫 번째 서비스 (응용 프로그램)는 단순한 볼륨 컨테이너이고 두 번째 (php-pm)는 PHP 프로세스 관리자입니다. 문제는 내 두 번째 서비스가 첫 번째 서비스에서 공유하는 Symfony 폴더에 액세스하려고한다는 것입니다. 어떤 이유로 두 서비스가 모두 만들어 질 때까지 폴더가 존재하지 않습니다. 마지막 명령이 작동하지 않습니다도커 서비스간에 볼륨 공유
FROM ubuntu:16.04
#INSTALL PHP AND HIS DEPENDENCIES
RUN apt-get update && \
apt-get install -y php7.0-cgi php-xml && \
ln -s /usr/lib/cgi-bin/php /usr/bin/php7.0-cgi
#INSTALL COMPOSER
RUN apt-get install -y curl && \
curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer && \
chmod +x /usr/local/bin/composer
#INSTALL PPM
RUN apt-get install -y git && \
cd var && \
git clone https://github.com/php-pm/php-pm.git && \
cd php-pm && \
composer install && \
ln -s `pwd`/bin/ppm /usr/local/bin/ppm
#This folder doesn't exist, why??
RUN cd /var/www/symfony-pm &&/
composer require php-pm/php-pm:dev-master &&/
composer require php-pm/httpkernel-adapter:dev-master &&/
composer install
dockerfile
고정 표시기 - compose.yml
application:
image: tianon/true
volumes:
- /home/Projects/symfony-pm:/var/www/symfony-pm
- /home/Projects/symfony-pm/app/logs:/var/www/symfony-pm/app/logs
php-pm:
build: ./
dockerfile: dockerfile-php-pm
ports:
- 9999:9000
volumes_from:
- application
stdin_open: true
tty: true
초 서비스를 제공합니다. 오류 메시지는 '/ var/www/symfony-pm'에 액세스 할 수 없습니다 : 해당 파일이나 디렉토리가 없습니다.
서비스가 구축 된 후 확인했기 때문에 디렉토리가 존재합니다.
입니다
또 다른 가능성은 ENTRYPOINT 사용하여 컨테이너 시작시
composer
실행하는 것입니다? –