2015-12-12 4 views
0

Я новичок в докере и пытаюсь преобразовать в нее фактический стек. В настоящее время я использую эту конфигурацию: лак -> Nginx -> PHP-FPM -> MySQLDocker лак начинаются с команды, но не с docker-compose

Я уже конвертировать PHP-FPM и Nginx и теперь пытается лак.

Когда я запускаю свое изображение с помощью команды, все в порядке, но когда я помещаю его в docker-compose, мой контейнер перезапускается на неопределенный срок.

Команда:

name="varnish" 

cd $installDirectory/$name 

docker build -t $name . 
docker rm -f $(docker ps -a | grep $name | cut -d' ' -f1) 

docker run -d -P --name $name \ 
     -p 80:80 \ 
     --link nginx:nginx \ 
     -v /home/webstack/varnish/:/etc/varnish/ \ 
     -t $name 

Мой докер-compose.yml:

php-fpm: 
    restart: always 
    build: ./php-fpm 
    volumes: 
    - "/home/webstack/www/:/var/www/" 

nginx: 
    restart: always 
    build: ./nginx 
    ports: 
    - "8080:8080" 
    volumes: 
    - "/home/webstack/nginx/:/etc/nginx/" 
    - "/home/webstack/log/:/var/log/nginx/" 
    - "/home/webstack/www/:/var/www/" 
    links: 
    - "php-fpm:php-fpm" 

varnish: 
    restart: always 
    build: ./varnish 
    ports: 
    - "80:80" 
    volumes: 
    - "/home/webstack/varnish/:/etc/varnish/" 
    links: 
    - "nginx:nginx" 

У меня нет результата с docker logs webstack_varnish_1 и docker ps -a результата показывают:

688c5aace1b3  webstack_varnish "/bin/bash"    16 seconds ago  Restarting (0) 5 seconds ago 0.0.0.0:80->80/tcp 

Здесь вы можете увидеть мои Dockerfile:

FROM debian:jessie 

# Update apt sources 
RUN apt-get -qq update 
RUN apt-get install -y curl apt-transport-https 
RUN sh -c "curl https://repo.varnish-cache.org/GPG-key.txt | apt-key add -" 
RUN echo "deb https://repo.varnish-cache.org/debian/ jessie varnish-4.1" > /etc/apt/sources.list.d/varnish-cache.list 

# Update the package repository 
RUN apt-get -qq update 

# Install varnish 
RUN apt-get install -y varnish 

# Expose port 80 
EXPOSE 80 

Что я делаю неправильно, пожалуйста?

С уважением.

ответ

1

Ваш лак Dockerfile, кажется, отсутствует ENTRYPOINT и/или CMD директивы, которые фактически запускают Лак.

+0

Привет, извините, мой поздний. Я уже пробовал это решение, но у меня такая же проблема. Мой вопрос в том, почему с его работой с командной строкой (без перезагрузки), а не с моим сценарием для сокета? Спасибо. – Oyabi

Смежные вопросы