docker-compose 认为文件是一个目录

Sim*_*n P 5 ubuntu docker caddy

有任何想法吗?

该服务之前已启动,但现在我收到此“/etc/Caddyfile:是一个目录”消息并且服务退出。

$ docker-compose -f docker-compose-linux.yml up caddy
Starting server_applications_1 ... done
server_workspace_1 is up-to-date
server_php-fpm_1 is up-to-date
Starting server_caddy_1        ... done
Attaching to server_caddy_1
caddy_1         | http plugins loaded: git
caddy_1         | 2020/06/22 06:22:18 loading Caddyfile via flag: read /etc/Caddyfile: is a directory
server_caddy_1 exited with code 1
Run Code Online (Sandbox Code Playgroud)

球童服务 dockerfile:

FROM zuohuadong/caddy:alpine
MAINTAINER Huadong Zuo <admin@zuohuadong.cn>
ARG plugins="cors"
WORKDIR /var/www/platform/public
CMD ["/usr/bin/caddy", "-conf", "/etc/Caddyfile"]
Run Code Online (Sandbox Code Playgroud)

Caddy 服务容器 yml:其中 CADDY_CUSTOM_CADDYFILE=./caddy/Caddyfile

      卷:
        - ${CADDY_CUSTOM_CADDYFILE}:/etc/Caddyfile

Caddyfile 位于正确的目录中

...server/caddy$ ll
total 16
drwxrwxr-x  2 ubuntu ubuntu 4096 Jun 22 17:44 ./
drwxrwxr-x 11 ubuntu ubuntu 4096 Jun 22 15:55 ../
-rw-r--r--  1 ubuntu ubuntu 1452 Jun 11 10:54 Caddyfile
-rw-r--r--  1 ubuntu ubuntu  268 Jun 22 18:13 Dockerfile
Run Code Online (Sandbox Code Playgroud)

$ docker-compose -f docker-compose-linux.yml up caddy

正在启动 server_applications_1 ... 已完成 server_workspace_1 是最新的 server_php-fpm_1 是最新的 正在启动 server_caddy_1 ... 已完成 附加到 server_caddy_1 caddy_1 | 已完成 已加载 http 插件:git caddy_1 | 2020/06/22 06:22:18 通过标志加载 Caddyfile: read /etc/Caddyfile: 是一个目录 server_caddy_1 退出时代码为 1

Tay*_*man 0

您可以尝试在 docker compose 中挂载目录而不是文件吗?

      volumes:
        - ${CADDY_CUSTOM_CADDYFILE}:/etc
Run Code Online (Sandbox Code Playgroud)

其中 CADDY_CUSTOM_CADDYFILE=full_Path_to/caddy/

你仍然可以使用

CMD ["/usr/bin/caddy", "-conf", "/etc/Caddyfile"]
Run Code Online (Sandbox Code Playgroud)