【发布时间】:2021-03-09 18:40:00
【问题描述】:
我尝试做简单的无限循环任务。不使用 docker 也能正常工作。但是当我使用 docker 时,它只会无限执行 for 循环的 else 部分。实际上可能是什么问题? docker 是否有无限 for 循环的问题? 我的 main.go 文件如下所示。
package main
import (
"bufio"
"fmt"
"os"
)
func main() {
fmt.Println("Hello, World!.....")
for {
fmt.Print("-> ")
var i int
fmt.Scan(&i)
if i == 1 {
fmt.Println("Hello, World! 1")
} else if i == 2 {
fmt.Println("Hello, World! 2")
} else if i == 3 {
fmt.Println("Hello, World! 3")
} else if i == 4 {
fmt.Println("Hello, World! 4")
} else if i == 5 {
fmt.Println("Hello, World! 5")
} else {
fmt.Println("Hello, World! else")
}
}
}
我也尝试了这些链接。 Read line in golang How do I break out of an infinite loop in Golang 但还是没用。我从昨天开始就在努力解决这个问题。
docker文件如下:
FROM golang:1.12.0-alpine3.9
RUN mkdir /app
ADD . /app
WORKDIR /app
RUN go build -o main .
CMD ["go","run","/app/main.go"]
我尝试使用
docker build -t 你好。
并使用docker run hello运行
运行
码头运行你好
【问题讨论】:
标签: docker go dockerfile