阿里云代理商 折上折,新老用户,新购,续费,升级更多优惠,还有更惊喜等您咨询

本文目录一览:

阿里云 CentOS 7.6 yum 安装 go(golang) 语言环境

前言:记录下安装过程以便下次有需要无需百度!

    输入 yum search golang 

docker环境使用Athens搭建golang私服

这里使用的是名为 Athens 的开源 go 语言包管理服务,详细的介绍可以参考

为了快捷方便的使用,这里推荐 docker 的方式进行部署,通过运行 docker run -d -v ./data:/var/lib/athens -e ATHENS_DISK_STORAGE_ROOT=/var/lib/athens -e ATHENS_STORAGE_TYPE=disk --name athens-proxy --restart always -p 3000:3000 gomods/athens:latest 即可启动服务

或者通过 docker-compose 编排服务,通过下面的 docker-compose.yml 文件,运行 docker-compose up -d 即可启动

完成上诉步骤之后,还需要设置环境变量启用 golang 的代理功能,不同操作系统的设置方式可自行修改,将变量 GO111MODULE 设置为 on , GOPROXY 设置为私服的地址

若是不想自行搭建私服,也可使用一些现成的镜像站 , ,或者国内阿里云的 ,只要将环境变量 GOPROXY 修改成相应地址即可

Golang项目部署3,容器部署

容器部署即使用 docker 化部署 golang 应用程序,这是在云服务时代***流行的部署方式,也是***推荐的部署方式。

跨平台交叉编译是 golang 的特点之一,可以非常方便地编译出我们需要的目标服务器平台的版本,而且是静态编译,非常容易地解决了运行依赖问题。

使用以下指令可以静态编译 Linux 平台 amd64 架构的可执行文件:

生成的 main 便是我们静态编译的,可部署于 Linux amd64 上的可执行文件。

我们需要将该可执行文件 main 编译生成 docker 镜像,以便于分发及部署。 Golang 的运行环境推荐使用 alpine 基础系统镜像,编译出的容器镜像约为 20MB 左右。

一个参考的 Dockerfile 文件如下:

其中,我们的基础镜像使用了 loads/alpine:3.8 ,中国国内的用户推荐使用该基础镜像,基础镜像的 Dockerfile 地址: ,仓库地址:

随后使用 " docker build -t main . " 指令编译生成名为 main 的 docker 镜像。

需要注意的是,在某些项目的架构设计中, 静态文件 和 配置文件 可能不会随着镜像进行编译发布,而是分开进行管理和发布。

例如,使用 MVVM 模式的项目中(例如使用 vue 框架),往往是前后端非常独立的,因此在镜像中往往并不会包含 public 目录。而使用了 配置管理中心 (例如使用 consul / etcd / zookeeper )的项目中,也往往并不需要 config 目录。

因此对于以上示例的 Dockerfile 的使用,仅作参考,根据实际情况请进行必要的调整。

使用以下指令可直接运行刚才编译成的镜像:

容器的分发可以使用 docker 官方的平台: ,国内也可以考虑使用阿里云: 。

在企业级生产环境中, docker 容器往往需要结合 kubernetes 或者 docker swarm 容器编排工具一起使用。

容器编排涉及到的内容比较多,感兴趣的同学可以参考以下资料:

万网代理商为您提供万网主机,万网邮箱,万网域名,价格优惠。