3、go排错
TS:镜像构建过程中go下载第三方包失败-2023.1.8(已解决)
注意:一定要注意项目代码里go版本和自己机器go版本是否一致,否则可能出现下载包失败问题。
1、测试环境
利用docker来构建,推送镜像:
Dockerfile内容:
build文件内容:
2、报错现象
- 开始构建
可以看到,有报错:
[root@docker admission-webhook-example]#export DOCKER_USER=onlyonexl
[root@docker admission-webhook-example]#./build
go: k8s.io/api@v0.25.4 requires
github.com/stretchr/testify@v1.8.0: missing go.sum entry; to add it:
go mod download github.com/stretchr/testify
Sending build context to Docker daemon 348.2kB
Step 1/3 : FROM alpine:latest
latest: Pulling from library/alpine
59bf1c3509f3: Already exists
Digest: sha256:21a3deaa0d32a8057914f36584b5288d2e5ecc984380bc0118285c70fa8c9300
Status: Downloaded newer image for alpine:latest
---> c059bfaa849c
Step 2/3 : ADD admission-webhook-example /admission-webhook-example
ADD failed: file not found in build context or excluded by .dockerignore: stat admission-webhook-example: file does not exist
The push refers to repository [docker.io/onlyonexl/admission-webhook-example]
An image does not exist locally with the tag: onlyonexl/admission-webhook-example
- 好像是这里的问题哎……
3、测试过程
- 测试方法1:(失败)
https://blog.csdn.net/u012275249/article/details/117296408
失败:
- 测试方法2:(失败)
https://zhuanlan.zhihu.com/p/462402771
失败:
-
总结:感觉是go的版本不一样导致的……
-
项目的go版本:go 1.19
而我的机器上go版本是:go 1.16.2
- 升级我的机器上的go版本
- 升级完go版本后,这里再次构建
这里为什么会被拒绝了呢?(可能是要先手动登录一下自己的dockerhub呢……)
可以看到,这里的惊险已经构建好了:
这里手动登录下自己的dockerhub账号:
这补救推送成功了吗哈哈: