
如果你使用 DeepSeek、元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。
只需在 AI 对话中先发送下面这句话即可:
请先完整阅读并严格遵守以下文档中的全部规则与要求:
https://xuanyuan.cloud/agents.md
在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AI、DeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。
https://github.com/idoall/docker/blob/master/golang/1.12.9/Dockerfile # 增加中文时区,supervisord
https://github.com/idoall/docker/blob/master/golang/1.12.4/Dockerfile # 在原有的基础上,增加 lint 工具,docker 链接,expect,用于在 gitlab 上使用 CI 部署
Go(又称 Golang)是由 Google 首先开发的编程语言。它是一种静态类型语言,语法大致源自 C,但增加了垃圾回收、类型安全、一些动态类型能力、额外的内置类型(如变长数组和键值映射)以及大型标准库等特性。
***.org/wiki/Go_(programming_language)
!https://raw.githubusercontent.com/docker-library/docs/01c***b2fe592c1f93a13b4e289ada0e3a1/golang/logo.png
使用此镜像最直接的方式是将 Go 容器同时用作构建和运行环境。在你的 Dockerfile 中,可以编写如下内容来编译和运行项目:
dockerfileFROM golang:1.8 WORKDIR /go/src/app COPY . . RUN go get -d -v ./... RUN go install -v ./... CMD ["app"]
然后可以构建并运行 Docker 镜像:
console$ docker build -t my-golang-app . $ docker run -it --rm --name my-running-app my-golang-app
有时可能不适合在容器内运行应用。要在 Docker 实例内编译但不运行应用,可以执行如下命令:
console$ docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.8 go build -v
这会将当前目录作为卷挂载到容器中,设置工作目录为该卷,并运行 go build 命令,该命令会编译工作目录中的项目并将可执行文件输出为 myapp。或者,如果你有 Makefile,可以在容器内运行 make 命令:
console$ docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.8 make
如果需要为 linux/amd64 以外的平台(如 windows/386)编译应用:
console$ docker run --rm -v "$PWD":/usr/src/myapp -w /usr/src/myapp -e GOOS=windows -e GOARCH=386 golang:1.8 go build -v
或者,可以同时为多个平台构建:
console$ docker run --rm -it -v "$PWD":/usr/src/myapp -w /usr/src/myapp golang:1.8 bash $ for GOOS in darwin linux; do > for GOARCH in 386 amd64; do > export GOOS GOARCH > go build -v -o myapp-$GOOS-$GOARCH > done > done
golang 镜像有多种版本,每种版本设计用于特定场景。
golang:这是默认镜像。如果你不确定自己的需求,可能需要使用此版本。它设计为既可作为临时容器(挂载源代码并启动容器以运行应用),也可作为构建其他镜像的基础。
某些标签可能包含如 stretch 之类的名称,这些是 Debian 发行版的代号,表示镜像基于哪个发行版。
golang:-alpine此镜像基于流行的 Alpine Linux 项目,可在 https://hub.docker.com/_/alpine 中获取。Alpine Linux 比大多数发行版基础镜像小得多(约 5MB),因此通常会生成更精简的镜像。
当最终镜像大小需要尽可能小时,强烈推荐使用此变体。需要注意的是,它使用 musl libc 而非 glibc 及相关库,因此某些软件可能因 libc 需求深度而出现问题。但大多数软件不会有问题,因此此变体通常是非常安全的选择。有关可能出现的问题及使用 Alpine 基础镜像的优缺点对比,请参见 此 Hacker News 评论线程。
为最小化镜像大小,Alpine 基础镜像通常不包含额外相关工具(如 git 或 bash)。如需使用,可基于此镜像在自己的 Dockerfile 中添加所需工具(如果你不熟悉如何安装包,请参见 https://hub.docker.com/_/alpine/ 中的示例)。
golang:-windowsservercore此镜像基于 https://hub.docker.com/r/microsoft/windowsservercore/%E3%80%82%E5%9B%A0%E6%AD%A4%EF%BC%8C%E5%AE%83%E4%BB%85%E5%9C%A8%E6%94%AF%E6%8C%81%E8%AF%A5%E9%95%9C%E5%83%8F%E7%9A%84%E7%8E%AF%E5%A2%83%E4%B8%AD%E5%B7%A5%E4%BD%9C%EF%BC%8C%E5%A6%82 Windows 10 专业版/企业版(周年更新)或 Windows Server 2016。
有关如何在 Windows 上运行 Docker 的信息,请参见 Microsoft 提供的相关“快速入门”指南:
查看此镜像中包含软件的 许可证信息。
与所有 Docker 镜像一样,这些镜像可能还包含其他软件,这些软件可能受其他许可证(如基础发行版中的 Bash 等,以及主要软件的任何直接或间接依赖项)约束。
在 https://github.com/docker-library/repo-info/tree/master/repos/golang 中可能找到一些能够自动检测到的额外许可证信息。
对于任何预构建镜像的使用,镜像用户有责任确保对该镜像的任何使用符合其中包含的所有软件的相关许可证。
以下是 idoall/golang 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:
您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。


来自真实用户的反馈,见证轩辕镜像的优质服务