相关疑难解决方法(0)

Docker standard_init_linux.go:228: exec 用户进程导致:没有这样的文件或目录

每当我尝试运行 docker 镜像时,它都会立即退出。

CONTAINER ID   IMAGE                      COMMAND                CREATED          STATUS                      PORTS     NAMES
ae327a2bdba3   k8s-for-beginners:v0.0.1   "/k8s-for-beginners"   11 seconds ago   Exited (1) 10 seconds ago             focused_booth
Run Code Online (Sandbox Code Playgroud)

根据容器日志

standard_init_linux.go:228: exec user process caused: no such file or directory
Run Code Online (Sandbox Code Playgroud)

我已经在linux本身中创建了所有文件:

FROM alpine:3.10
COPY k8s-for-beginners /
CMD ["/k8s-for-beginners"]
Run Code Online (Sandbox Code Playgroud)

前往代码:

package main

import (
    "fmt"
    "log"
    "net/http"
)

func main() {
    http.HandleFunc("/", handler)
    log.Fatal(http.ListenAndServe("0.0.0.0:8080", nil))
}

func handler(w http.ResponseWriter, r *http.Request) {
    log.Printf("Ping from %s", r.RemoteAddr)
    fmt.Fprintln(w, "Hello Kubernetes Beginners!")
}
Run Code Online (Sandbox Code Playgroud)

这是 KUBERNETES WORKSHOP 书中的第一个练习。

我在此过程中使用的命令:

CGO_ENABLED=0 …
Run Code Online (Sandbox Code Playgroud)

linux containers go docker kubernetes

22
推荐指数
3
解决办法
5万
查看次数

standard_init_linux.go:190:exec用户进程导致"没有这样的文件或目录"Docker与go基本web应用程序

最基本的Web应用程序是在Go中创建的

package main

import(
   "fmt"
   "net/http"
   "os"
)

func hostHandler(w http.ResponseWriter, r *http.Request){
    name, err :=os.Hostname()

    if err != nil {
           panic(err)
        }

        fmt.Fprintf(w, "<h1>HOSTNAME: %s</h1><br>",name)
        fmt.Fprintf(w, "<h1>ENVIRONMENT VARS: </h1><br>")
        fmt.Fprintf(w, "<ul>")

        for _, evar := range os.Environ(){
            fmt.Fprintf(w, "<li>%s</li>",evar)
        }
        fmt.Fprintf(w, "</ul>")

}

func rootHandler(w http.ResponseWriter, r *http.Request){

    fmt.Fprintf(w, "<h1>Awesome site in Go!</h1><br>")
    fmt.Fprintf(w, "<a href='/host/'>Host info</a><br>")

}

func main() {

        http.HandleFunc("/", rootHandler)
        http.HandleFunc("/host/", hostHandler)
        http.ListenAndServe(":8080", nil)


}
Run Code Online (Sandbox Code Playgroud)

它的Docker文件

FROM scratch
WORKDIR /home/ubuntu/go
COPY webapp /
EXPOSE 8080
CMD …
Run Code Online (Sandbox Code Playgroud)

go docker dockerfile

2
推荐指数
2
解决办法
2035
查看次数

标签 统计

docker ×2

go ×2

containers ×1

dockerfile ×1

kubernetes ×1

linux ×1