您的位置:

golang镜像库,golang 映射

本文目录一览:

golang编写的项目,使用alpine制作镜像遇到的一个问题解决

GraphicsMagick,一款高性能的图片处理工具,由于项目需要,用到它,自然而然用到了关于gm的第三方库 这个库按照作者的提示,要安装GraphicsMagick-devel依赖。

项目写完了,接下来用alpine做为基础镜像,准备制作项目的镜像。

golang项目,是在ubuntu下编写的,编译成二进制文件了,只要把二进制文件放进镜像里即可,遇到的问题有2个

1 容器跑起来,一直报二进制文件no found

我认认真真的确认了文件,以及它的路径,确实是存在的,怎么会报文件找不到呢?!

原来是musl和glibc是兼容的问题,在Dockerfile里要加以下两步

2 Error loading shared library libGraphicsMagickWand-Q16.so.2: No such file or directory

明明按要求安装GraphicsMagick-devel依赖,为啥还报这种错

于是想到了,是不是也要ln做一下软链接呢?于是学着上面的样子在Dockerfile里补上

再跑,问题依旧,莫非是软连接的地址写错了!回到开发的电脑上用ldd命令查看一下

果然,编译后的二进制文件依赖路径是/lib,而不是/lib64

于是,修改Dockerfile里的写法

问题解决,开心:)

参考资料:

Go语言安装与镜像配置

安装网址

国内镜像

Go 1.13 及以上(推荐

打开你的终端并执行

macOS 或 Linux

如果是zsh

请这样设置

Windows

打开PowerShell 并执行

或者

然后你就可以

Go 设置国内镜像源

Go 设置国内镜像源:

Go 1.13 及以上(推荐)

打开你的终端并执行

$ go env -w GO111MODULE=auto

$ go env -w GOPROXY=

macOS 或 Linux

打开你的终端并执行

$exportGO111MODULE=on$exportGOPROXY=

或者

$echo"export GO111MODULE=on" ~/.profile$echo"export GOPROXY=" ~/.profile$source~/.profile

完成。

Windows

打开你的 PowerShell 并执行

C:\$env:GO111MODULE ="on"C:\$env:GOPROXY =""

或者

1. 打开“开始”并搜索“env”

2. 选择“编辑系统环境变量”

3. 点击“环境变量…”按钮

4. 在“你的用户名的用户变量”章节下(上半部分)

5. 点击“新建…”按钮

6. 选择“变量名”输入框并输入“GO111MODULE”

7. 选择“变量值”输入框并输入“on”

8. 点击“确定”按钮

9. 点击“新建…”按钮

10. 选择“变量名”输入框并输入“GOPROXY”

11. 选择“变量值”输入框并输入“”

12. 点击“确定”按钮

完成。