goland把go项目打包进docker镜像的全过程记录

 更新时间:2022年08月09日 11:23:23   作者:年少轻与狂  
golang编译的应用是不需要依赖其他运行环境的,下面这篇文章主要给大家介绍了关于goland把go项目打包进docker镜像的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下

1. goland配置Dockerfile

项目中新建Dockerfile文件

配置Dockerfile

在项目中新建Dockerfile 文件,内容如下

FROM golang:alpine

ENV GO111MODULE=on \
    CGO_ENABLE=0 \
    GOOS=linux \
    GOARCH=amd64 \
    GOPROXY="https://goproxy.cn,direct"

WORKDIR /goweb
COPY out/* ./app

EXPOSE 8088
CMD ["/goweb/app"]

第一行表示基于golang的环境镜像构建自己的docker

第二行配置go的环境

WORKDIR 表示项目放入容器中的什么地方,就是工作目录,WORKDIR指定的工作目录具有传递性,很多个WORKDIR的命令是关系的,比如首次指定工作目录是 /goweb, 那么下边下面那一行的COPY命令的 ./app 就是在/goweb下进行的相对路径

  • COPY 表示把本地的文件复制到容器内
  • EXPOSE 表示暴露什么端口,这个好像仅仅是给人看的,没啥用
  • CMD 表示基于镜像构建容器的时候,执行什么命令

2. goland构建项目

编辑构建参数

这样构建之后的产物就会在out文件夹里边,然后Dockerfile去out文件夹COPY产物,复制到docker容器内

3. Dockerfile执行

点击这里的运行就可以

登录Linux可以看到我们的docker

总结

到此这篇关于goland把go项目打包进docker镜像的文章就介绍到这了,更多相关goland go项目打包docker镜像内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • go 代码格式化和风格开发者指南

    go 代码格式化和风格开发者指南

    这篇文章主要为大家介绍了go 代码格式化和风格开发者指南,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-09-09
  • Go语言method详解

    Go语言method详解

    这篇文章主要介绍了Go语言method详解,本文总结了在使用method的时候重要注意几点、指针作为receiver、method继承等内容,需要的朋友可以参考下
    2014-10-10
  • 图文详解Go中的channel

    图文详解Go中的channel

    Channel是go语言内置的一个非常重要的特性,也是go并发编程的两大基石之一,下面这篇文章主要给大家介绍了关于Go中channel的相关资料,需要的朋友可以参考下
    2023-02-02
  • go语言方法集为类型添加方法示例解析

    go语言方法集为类型添加方法示例解析

    这篇文章主要为大家介绍了go语言方法集以及为类型添加方法示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步早日升职加薪
    2022-04-04
  • Golang学习笔记之安装Go1.15版本(win/linux/macos/docker安装)

    Golang学习笔记之安装Go1.15版本(win/linux/macos/docker安装)

    这篇文章主要介绍了Golang学习笔记之安装Go1.15版本(win/linux/macos/docker安装),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12
  • Go语言中的各类运算操作符详解

    Go语言中的各类运算操作符详解

    本文全面探讨了Go语言中的各类运算操作符,从基础的数学和位运算到逻辑和特殊运算符,文章旨在深入解析每一种运算操作符的工作原理、应用场景和注意事项,以帮助开发者编写更高效、健壮和可读的Go代码,</P><P>
    2023-09-09
  • 详解Golang中零拷贝的原理以及实践

    详解Golang中零拷贝的原理以及实践

    零拷贝技术相信大家都有所耳闻,但是本文不仅会讲述零拷贝技术的原理,并将从实际代码出发,看看零拷贝技术在golang中的应用,现在让我们开始吧
    2023-07-07
  • 手把手带你走进Go语言之运算符解析

    手把手带你走进Go语言之运算符解析

    这篇文章主要介绍了手Go语言之运算符解析,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-09-09
  • golang开发安装go-torch火焰图操作步骤

    golang开发安装go-torch火焰图操作步骤

    这篇文章主要为大家介绍了golang开发安装go-torch火焰图操作步骤
    2021-11-11
  • Golang 实现分片读取http超大文件流和并发控制

    Golang 实现分片读取http超大文件流和并发控制

    这篇文章主要介绍了Golang 实现分片读取http超大文件流和并发控制,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-12-12

最新评论