2016-07-28 4 views
0

У меня есть эта часть моего docker-compose файла:Докер - Выполнить Баш при запуске контейнера

php-fpm: 
    build: ./docker/php 
    container_name: php-fpm-symfony 
    links: 
     - db 
    ports: 
     - 9000:9000 
     - 8448:8448 
     - 8000:8000 
    working_dir: /var/www/html/ 
    volumes: 
     - .:/var/www/html 
    volumes_from: 
     - data 
    tty: true 
    env_file: 
     - ./docker.env 
    entrypoint: /command.sh 

А вот мой Dockerfile:

FROM php:7.0.8-fpm 
ADD command.sh /command.sh 
RUN chmod 777 /command.sh 
ENTRYPOINT ["/command.sh"] 

Мои command.sh в корне

#!/usr/bin/env bash 
git config --global user.email "${gitEmail}" 
git config --global user.name "${gitName}" 

Мне нужно выполнить мой файл command.sh, когда я делаю свой docker-compose up -d

Но это не работает.

ERROR: for nginx Cannot link to a non running container: /php-fpm-symfony AS /nginx/php-fpm ERROR: Encountered errors while bringing up the project. Error response from daemon: Container 7c2a9bffa9664c4007d685f56d17e4659c6dd7021962d6462177480f5a821d44 is not running

Как это сделать?

+0

Не могли бы вы поделиться содержание 'command.sh', кажется, что сценарий действительно вызывается, но она будет закончена сразу –

+0

@ cml.co Я просто сделал это ... – Kevin

ответ

3

Контейнер для докеров выходит, когда заканчивается его основной процесс.

Ваш скрипт, безусловно, заканчивается, и процесс php не запускается. Попробуйте добавить вызов php-fpm

#!/usr/bin/env bash 
git config --global user.email "${gitEmail}" 
git config --global user.name "${gitName}" 
php-fpm