代码之家  ›  专栏  ›  技术社区  ›  Siddharthan Asokan

Docker compose entrypoint上的run throws错误

  •  0
  • Siddharthan Asokan  · 技术社区  · 6 年前

    运行以下命令:

    docker-compose up -d

    引发以下错误:

    ERROR: for ubuntu_caddy_1  Cannot start service caddy: oci runtime error: container_linux.go:247: starting container process caused "exec: \"./caddy\": stat ./caddy: no such file or directory"
    

    这是 docker-compose.yml

    services:
      caddy:
        image: abiosoft/caddy
        ports:
          - "80:80"
          - "443:443"
          - "2015:2015"
        volumes:
          - "./caddy-data:/root/.caddy"
          - "./config:/etc/caddy"
          - "./config/Caddyfile:/etc/Caddyfile"
        entrypoint:
          - ./caddy
          - "-conf"
          - /etc/Caddyfile
          - "-agree"
          - "-log=stdout"
          - "-port=443"
        restart: "on-failure: 10"
        user: root
    version: "2"
    

    你知道我会错过什么吗?

    0 回复  |  直到 6 年前
        1
  •  2
  •   Anthony    6 年前

    在abiosoft/caddy Dockerfile中,标准入口点是 ENTRYPOINT ["/bin/parent", "caddy"] link here ).

    所以我认为你必须改变 ./caddy /bin/parent caddy .

    我还认为不必覆盖默认入口点,只需通过覆盖默认命令(即 CMD ["--conf", "/etc/Caddyfile", "--log", "stdout", "--agree=$ACME_AGREE"] ).

    所以你最后 command: -conf /etc/Caddyfile -agree -log=stdout -port=443