Подтвердить что ты не робот

Docker-Composer вышел с кодом 0

Когда я запускаю docker-compose up, контейнер Ubuntu выходит с ubuntu exited with code 0.

Когда я запускаю docker run -d -ti -p 80:80 -v ~/sph/laravel52:/www/laravel ubuntu, все работает нормально.

Как я могу воспроизвести это поведение с помощью Docker Compose?

Это мой Dockerfile:

# Version: 0.0.1
FROM ubuntu:15.04



ENV DEBIAN_FRONTEND noninteractive

#INSTALL ALL
RUN apt-get update && apt-get install -y  \
       nano \
       php5-fpm \
       php5-mysql \
       nginx



#NGINX CONF
ADD nginx/sites-available/laravel.conf /etc/nginx/sites-available/
RUN rm /etc/nginx/sites-available/default
RUN mv /etc/nginx/sites-available/laravel.conf /etc/nginx/sites-available/default

VOLUME /www


ENTRYPOINT nginx && service php5-fpm start && /bin/bash

CMD ["true"]


EXPOSE 80

И docker-compose.yml:

version: '2'
services:
  ubuntu:
        build: .
        container_name: ubuntu
        volumes:
            - ~/sph/laravel52:/www/laravel
        ports:
          - "80:80"
4b9b3361

Ответ 1

Дело в том, что вы используете опцию -t при запуске своего контейнера.

Не можете ли вы проверить, включена ли опция tty (см. ссылка) в файле docker-compose.yml, контейнер продолжает работать?

version: '2'
services:
  ubuntu:
        build: .
        container_name: ubuntu
        volumes:
            - ~/sph/laravel52:/www/laravel
        ports:
          - "80:80"
        tty: true