gpt4 book ai didi

docker - Go-使用CompileDaemon进行Docker自动重载

转载 作者:行者123 更新时间:2023-12-01 21:14:55 28 4
gpt4 key购买 nike

我正在尝试使用Docker和Go改善开发环境,但是当文件发生更改时,我正在努力使容器中的自动重装工作正常。如果这很重要,我在运行Docker Desktop版本18.09.1的Windows上。

我正在使用CompileDaemon重新加载,我的DockerFile定义如下

FROM golang:1.11-alpine
RUN apk add --no-cache ca-certificates git
RUN go get github.com/githubnemo/CompileDaemon
WORKDIR /go/src/github.com/testrepo/app
COPY . .
EXPOSE 8080

ENTRYPOINT CompileDaemon -log-prefix=false -directory="." -build="go build /go/src/github.com/testrepo/app/cmd/api/main.go" -command="/go/src/github.com/testrepo/app/main"

我的项目结构如下
  • 应用
  • api
  • main.go

  • 在我的docker-compose文件中,我设置了正确的卷,并且在本地进行更改时正在容器中更新文件。

    首次加载时,还可以使用CompileDaemon正确启动该应用程序,但从未在文件更改时对其进行过更新。

    第一次加载时,我看到...

    Running build command!
    Build ok.
    Restarting the given command.



    这样,即使我可以连接到容器并看到更改已反射(reflect)在预期的文件中,但所做的任何更改都不会导致重新启动。

    感谢您的帮助或想法!

    最佳答案

    确保已为正在使用的服务安装了,这是使热重装在Docker容器内工作的原因

    See the full explanation

    关于docker - Go-使用CompileDaemon进行Docker自动重载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55958498/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com