当前位置: 首页 > news >正文

docker部署go简单web项目(无mysql等附加功能)

首先准备好go语言代码

代码表示当访问主机上8080端口下的/hello路径时,会返回hello,world。

package main

import (
	"fmt"
	"github.com/gin-gonic/gin"
)

type hh struct {
	S string
}

func main() {
	router := gin.Default()
	router.GET("/hello", func(c *gin.Context) {
		c.JSON(200, hh{S: "hello world!"})
	})

	err := router.Run(":8080")
	if err != nil {
		fmt.Println(err)
		return
	}

}

准备Dockerfile文件

FROM golang:1.23

# 为我们的镜像设置必要的环境变量
ENV GO111MODULE=on \
    CGO_ENABLED=0 \
    GOOS=linux \
    GOARCH=amd64 \
    GOPROXY=https://goproxy.io,direct

# 移动到工作目录:/app/demo3
WORKDIR /app/demo3

# 先复制 go.mod 和 go.sum 文件
COPY go.mod go.sum ./

# 下载依赖
RUN go mod download

# 将剩余代码复制到容器中
COPY . .

# 编译 Go 代码,指定输出文件名为 main
RUN go build -o main main.go

# 声明服务端口
EXPOSE 8080

# 启动容器时运行的命令
ENTRYPOINT ["./main"]

注意第一行基础镜像的版本要和你项目所用的go版本相同在这里插入图片描述
在这里插入图片描述

将以下文件放入宿主机中

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

构建镜像

首先在宿主机上进入Dockerfile文件所在的目录,然后输入以下命令开始构建镜像 。 注意 -t 后跟的是镜像名,是自定义的,可以不和我一样。

docker build -t demo3image .

输入完成后等待构建成功即可,构建不会很快,我这里等了大概有十多分钟。
在这里插入图片描述

创建并运行容器

镜像前面创建好了,我们现在要让镜像在容器里跑起来,输入下方指令即可。–name 后的demo3表示容器名称,可以自定义。

docker run -d --name demo3 -p 8080:8080 dem03image

在这里插入图片描述

添加安全组

我用的服务器是阿里云的,以下是配置阿里云服务器安全组的步骤
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

验收结果

在这里插入图片描述

相关文章:

  • Ubuntu从零创建Hadoop集群
  • FS800DTU联动OneNET平台数据可视化View
  • c#编程:SortedList与Dictionary的比较 与 选择
  • Vue3 + Vite + TS,使用 配置项目别名属性:server
  • 如何避免过度依赖某个云服务商
  • 什么是可重入,什么是可重入锁? 它用来解决什么问题?
  • 在vscode中编译运行c语言文件,配置并运行OpenMP多线程并行程序设计
  • ros进阶——强化学习倒立摆的PG算法实现
  • 高斯消元法
  • 如何通过云计算实现业务的持续创新?
  • YOLOv11-ultralytics-8.3.67部分代码阅读笔记-validator.py
  • AI前端赋能医疗诊断:效率与精准的双重跃升
  • 社群团购平台的愿景构建与开源链动2+1模式S2B2C商城小程序应用探索
  • 【AI 接入工作流实操指南与示例解析】
  • 嵌入式软件数据结构(一)链表知识点专栏 附源码 附原理
  • 数据中心“失宠”与AI算力争夺加剧的深度剖析与未来展望
  • 可狱可囚的爬虫系列课程 14:10 秒钟编写一个 requests 爬虫
  • 【GESP】C++二级真题 luogu-b3955, [GESP202403 二级] 小杨的日字矩阵
  • JMeter 的基础知识-安装部分
  • 介绍一下在自动驾驶 路径规划和 控制算法 详细一些
  • 网站做支付链接安全吗/深圳今天重大事件新闻
  • 图片发到哪些网站 seo/seo对网店推广的作用
  • 织梦模板怎么单独做移动端网站/怎么宣传自己的产品
  • 十堰市茅箭区建设局网站/网站优化检测工具
  • 不良网站进入窗口/列举五种网络营销模式
  • 徐州建站推广/seo顾问什么职位