【问题标题】:Docker varnish start with command but not with docker-composeDocker varnish 以命令开头,但不以 docker-compose 开头
【发布时间】:2016-03-18 16:55:04
【问题描述】:

我是 docker 新手,并尝试在其中转换我的实际 Web 堆栈。 目前我使用这个配置: 清漆 -> nginx -> php-fpm -> mysql

我已经转换了 php-fpm 和 nginx,现在尝试 varnish。

当我使用命令运行我的图像时,一切都很好,但是当我将它放入 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

我的 docker-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_1docker 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

请问我做错了什么?

问候。

【问题讨论】:

    标签: docker varnish docker-compose


    【解决方案1】:

    我们在这里找到了解决方案: https://github.com/docker/compose/issues/2563

    我必须将tty: true 添加到我的清漆配置中。

    问候。

    【讨论】:

      【解决方案2】:

      您的 varnish Dockerfile 似乎缺少实际启动 Varnish 的 ENTRYPOINT 和/或 CMD 指令。

      【讨论】:

      • 嗨,对不起,我迟到了。我已经尝试过该解决方案,但我遇到了同样的问题。我的问题是为什么它可以使用命令行(无需重新启动)而不是我的 docker-compose 脚本?谢谢。
      猜你喜欢
      • 2021-09-08
      • 2019-03-30
      • 2016-10-29
      • 2016-07-10
      • 2019-06-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-12-06
      相关资源
      最近更新 更多