goland把go项目打包进docker镜像的全过程记录
目录
- 1. goland配置Dockerfile
- 2. goland构建项目
- 3. Dockerfile执行
- 总结
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镜像内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
相关推荐
-
基于Docker镜像部署go项目的方法步骤
依赖知识 Go交叉编译基础 Docker基础 Dockerfile自定义镜像基础 docker-compose编排文件编写基础 当然,一点也不会也可以按照这个步骤部署完成,不过可能中间如果出点小问题,会不知道怎么解决,当然你也可以留言. 我是在mac环境上开发测试的,如果你是在windows上可能有一点出入,但应该不会有啥大问题. 一.依赖环境 Docker 二.编写一个GoLang web程序 我这里就写一个最简单的hello world程序吧,监听端口是80端口. 新建一个main.go文件
-
Docker 部署Go的两种基础镜像的实现
一. golang:latest 基础镜像 mkdir gotest touch main.go touch Dockerfile 1. 实例代码 package main import ( "fmt" "log" "net/http" ) func main() { http.HandleFunc("/", func(writer http.ResponseWriter, request *http.Request) { f
-
goland把go项目打包进docker镜像的全过程记录
目录 1. goland配置Dockerfile 2. goland构建项目 3. Dockerfile执行 总结 1. goland配置Dockerfile 项目中新建Dockerfile文件 配置Dockerfile 在项目中新建Dockerfile 文件,内容如下 FROM golang:alpine ENV GO111MODULE=on \ CGO_ENABLE=0 \ GOOS=linux \ GOARCH=amd64 \ GOPROXY="https://goproxy.cn,dir
-
vue前端项目打包成Docker镜像并运行的实现
目录 vue前端项目打包成Docker镜像并运行 前端将vue打包成镜像发布 一.总体预览 二.打包配置 三.问题思考 vue前端项目打包成Docker镜像并运行 首先说明咱们的前端项目是基于Vue的,反向代理使用的是nginx 1.打包vue前端项目生成dist文件夹上传至服务器 新建一个文件夹,叫vueDockerTest,下面的文件都需要. cert是你存放ssl证书的文件夹,nginx.conf 是nginx的配置文件,dist是你打包的前端静态文件 2.修改Dockerfile文件 #
-
使用Maven将springboot工程打包成docker镜像
目录 Maven打包成docker镜像 1.增加docker插件依赖 2.docker插件的配置 3.编写Dockerfile 4.Maven命令打包 5.注意事项 6.Window10 下安装docker Maven打包成docker镜像 由于工作原因,需要通过maven将springboot项目打包成docker镜像,先前以为只能在linux上完成,最近调研了一下,也可以在window环境下进行打包. 下面以thinkpad E470,windows10操作系统以及eclipse开发集成
-
Springboot打包为Docker镜像并部署的实现
一.Springboot项目运行正常 打包前,Springbooot项目在本地必须是运行正常的.我们这里使用本专栏写起来的项目,如下所示: 来访问一下我们接口,做连通性验证测试: 注意这里的地址是本地地址,因为我是在本地IDEA里面运行的项目! 二.Maven打包项目 执行如下命令即可: // 先清空再打包 mvn clean package 打包成功之后如下所示,提示BUILD SUCCESS,target目录下会有打好的jar包: 注意:此处我们打包为jar包,直接部署在Docker中.如果
-
Java应用打包成Docker镜像
目录 怎么把Java应用打包成Docker镜像? Maven插件构建镜像 用Docker的多阶段构建打包镜像 怎么把Java应用打包成Docker镜像? 对熟悉Docker的同学这应该是一个很简单的问题,把项目打包成JAR包然后在Dockerfile里用ADD命令把JAR文件放到镜像里,启动命令设置执行这个JAR文件即可. 比如一个使用Maven构建的Spring应用就可以用下面这个Dockerfile构建镜像. FROM openjdk:8-jre ADD target/*.jar /appl
-
将java普通项目打包成exe可执行文件的步骤记录
前言 · 提示,无论打包成jar还是exe程序,运行都需要JDK,需要给没有安装JDK的电脑安装:不会安装JDK的朋友可以参考这篇文章:https://www.jb51.net/article/179937.htm · maven项目有自己的打jar包方式,我们普通的java项目,可以安照步骤一打包成jar: 步骤一.先把项目打包成jar包 1. 打开项目结构 2. 选择jar包形式 3. 设置主类 4. 构建 5. 确认构建 6. 打包完成,在项目的out目录下有jar了. 步骤二.把jar包
-
Vue项目打包并发布的完整步骤记录
目录 1.安装部署Nginx服务器.(类似Tomcat服务器) 2.Vue项目打包. 总结 如何将Vue项目打包并发布?我这边是测试发布到本地,不过步骤是一样的,步骤如下: 1.安装部署Nginx服务器.(类似Tomcat服务器) 说明:Nginx (engine x) 是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器.同时,也是一种轻量级的Web服务器,可以作为独立的服务器部署网站. (1)官方下载网址:http://nginx.org/ (2)下载之后,得到
-
Jenkins打包微服务构建Docker镜像运行的实现
目录 环境准备 开始 1.GitLab远程仓库创建微服务项目 2.IDEA代码推送到Gitlab 3.Jenkins创建流水线项目 4.参数化构建 5.拉取远程仓库的构建脚本 6.编写远程审查脚本sonar-project.properties 构建脚本 环境准备 1.Jenkins 2.GitLab 3.SonarQube 4.Harbor 5.Docker 6.Maven 7.JDK1.8 8.微服务项目 以上技术部分在我之前的文章中有写过 这里就不过多细化的演示,本文章主要是连贯性的将微服
-
深入理解docker镜像的分层(小白必看)
大家好,今天分享docker镜像的分层理解 我们拉取Redis 镜像 [root@localhost ~]# docker pull redis Using default tag: latest latest: Pulling from library/redis a2abf6c4d29d: Pull complete c7a4e4382001: Pull complete 4044b9ba67c9: Pull complete c8388a79482f: Pull complete 413c
-
idea快速实现将SpringBoot项目打包Docker镜像并部署
目录 1.修改docker的配置文件 2.配置端口开放 3.IDEA安装Docker插件 4.IDEA配置docker 5.SpringBoot整合Docker配置 5.1 安装pom依赖 5.2 build镜像 5.3 启动镜像 1.修改docker的配置文件 修改文件信息路径如下:/etc/docker/daemon.json在配置文件中添加以下内容: "hosts": ["tcp://0.0.0.0:2375", "unix:///var/run/d
随机推荐
- 如何用Access加密页面?
- js实现带关闭按钮始终显示在网页最底部工具条的方法
- Nginx 服务器安装及配置文件详解介绍
- javascript中关于&& 和 || 表达式的小技巧分享
- asp.net Linq To Xml上手Descendants、Elements遍历节点
- PHP开发的一些注意点总结
- PHP通过CURL实现定时任务的图片抓取功能示例
- jQuery插件datepicker 日期连续选择
- php给每个段落添加空格的方法
- C++中抽象类和接口的区别介绍
- MySQL 四种事务隔离级别详解及对比
- jquery live()调用不存在的解决方法
- juqery 学习之四 筛选查找
- centos 5.1下的安全设置(适合所有的linux版本)
- Android给自定义按键添加广播和通过广播给当前焦点输入框赋值
- java实现单链表中是否有环的方法详解
- 基于Android应用中如何反馈Crash报告的详解
- Unity3D Shader实现动态屏幕遮罩
- Django实战之用户认证(初始配置)
- android车牌识别系统EasyPR使用详解