我用 golang 设置了一个简单的服务器:
package main
import (
"golang-server/database"
"golang-server/helper"
"log"
"net/http"
)
func main() {
database.Connect()
port := helper.GetPort()
SetupRoutes()
log.Printf("connect to http://localhost:%s/ for GraphQL playground", port)
log.Fatal(http.ListenAndServe(":"+port, router))
}
这是我的 dockerfile 的样子:
FROM golang:1.18
WORKDIR $GOPATH/src
COPY . .
RUN go mod download
RUN go build -o /golang-server
EXPOSE 8080
CMD ["golang-server"]
我在主目录中运行这些 docker 命令:
docker build . -t golang-server
docker run --network=golang-server --name=golang-server golang-server
但是,当我运行时出现此错误:
docker:来自守护进程的错误响应:创建垫片任务失败:OCI 运行时创建失败:runc 创建失败:无法启动容器进程:exec:“golang-server”:在 $PATH 中找不到可执行文件:未知。
我应该如何设置 dockerfile 才能成功部署到 docker?
梵蒂冈之花
相关分类