GoFrame框架的Docker容器部署指南

在云服务时代最流行的部署方式就是容器部署,这也是最推荐的部署方式。对于 GoFrame 框架就不多介绍了,直接来初始化一个 demo,备用。

初始化一个项目:gf-demo

gf init gf-demo -u

-u 参数,是否将现有 goframe 框架更新为最新版本

进入项目文件夹,并执行 main.go

cd gf-demo && gf run main.go

输入如下两地址其一,查看服务

http://127.0.0.1:8000/swagger

http://127.0.0.1:8000/api.json

关于 Dockerfile 文件

初始化得到 gf 项目后,在路径 gf-demo/manifest/docker 下,会自动生成一个 Dockerfile 文件。

文件内容和详解如下:

...

关于基础镜像 loads/alpine:3.8

其作用是在构建 Docker 镜像时提供一个轻量级、安全且易于维护的基础环境。

国内的用户推荐使用该基础镜像,基础镜像的 Dockerfile 地址: https://GitHub.com/gqcn/dockerfiles ,仓库地址: https://hub.docker.com/u/loads 。

Alpine Linux 是一个基于 musl libc 和 busybox 的轻量级 Linux 发行版,它的目标是提供一个小而简单的操作系统,适用于容器化部署。Alpine Linux 的特点是其包管理系统 apk 非常小且简单,只包含必要的软件包,从而减少了系统的复杂性和潜在的安全风险。

轻量级:Alpine Linux 镜像通常比传统的 Linux 发行版(如 Ubuntu 或 CentOS)更小,这使得镜像下载和部署更快,占用更少的资源。

安全性:由于 Alpine Linux 只包含必要的软件包,因此减少了潜在的安全漏洞和攻击面。此外,Alpine Linux 还定期更新以修复已知的安全漏洞。

易于维护:Alpine Linux 的软件包管理工具 apk 非常简单易用,可以轻松地安装、升级和管理软件包。这使得在 Docker 镜像中进行依赖管理和软件安装变得更加容易。

兼容性:Alpine Linux 支持多种架构,包括 x86、ARM 等,这使得它可以在不同的硬件平台上运行。

自动化上传 Harbor 脚本

自动化脚本文件后缀名 .sh,例如:docker.sh,可直接鼠标双击执行。执行文件夹需在项目根目录,即和 main.go 同级。

如下代码,从打包到上传的整个流程脚本:

...

输入版本号:

执行后续脚本:

脚本执行完成后,在 Harbor 远程仓库查看是否上传成功:

热门手游下载
相关文章
下载排行榜