docker - '/bin/sh : go: not found' in 'docker:dind' container

标签 docker go docker-container docker-dind

我尝试在docker-in-docker容器(Golang)中手动安装docker:dind(go1.13.9.linux-amd64)(将go二进制文件复制到容器中)。Go已复制到/go/bin

/ # export GOROOT=/go
/ # export PATH=$GOROOT/bin:$PATH
/ # 
/ # uname -a
Linux 41868f6e7ae3 4.19.76-linuxkit #1 SMP Tue May 26 11:42:35 UTC 2020 x86_64 Linux
/ #
/ # echo $GOROOT
/go
/ #
/ # echo $PATH
/go/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

我尝试检查版本并收到错误消息:
/ # go version
/bin/sh: go: not found
我尝试将env添加到/etc/profile👉🏻同样的错误。

最佳答案

您没有提到基础镜像,但是最好在godocker-dind的基础镜像上使用,我将推荐基于alpine的dind,然后安装go

FROM docker:dind
RUN apk add --no-cache go
RUN go version
输出
Step 3/3 : RUN go version
 ---> Running in 123401c3ebad
go version go1.12.12 linux/amd64

关于docker - '/bin/sh : go: not found' in 'docker:dind' container,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63068894/

相关文章:

mongodb - mongo-go-driver 的 clientOptions 默认值是多少?

c# - 如何检查本地URL是否可访问

go - 使用带有 for-select 循环的 WaitGroup 时出现 fatal error : all goroutines are asleep - deadlock!

mongodb - 更改Mongo-Express的8081端口

docker - 提交已安装卷的内容

nginx - 如果设置了 external_url,Gitlab docker 将无法工作

docker - 在RHEL8 Fatal:docker.service上进行kubernetes安装未找到

Django 和 Postgres,删除对象时出现 OperationalError

node.js - 多语言微服务方法

go - 在 Go 中扫描向上和向下箭头?