一、Docker手工部署GO环境

第一步:基于ubuntu镜像创建容器,并进入容器;

$ docker run -itd --name ubuntu-go ubuntu
$ docker exec -it ubuntu-go /bin/bash

第二步:配置国内源;

root@xxx:~# sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list
root@xxx:~# sed -i 's/security.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list

第三步:配置完成后,更新软件源;

root@xxx:~# apt-get update --fix-missing

第四步:安装基础软件;

root@xxx:~# apt-get install gcc libc6-dev git vim lrzsz -y

第五步:安装go软件;

root@xxx:~# apt-get install golang -y

第六步:配置go环境变量;

root@xxx:~# export GOROOT=/usr/lib/go        
root@xxx:~# export PATH=$PATH:/usr/lib/go/bin 
root@xxx:~# export GOPATH=/root/go
root@xxx:~# export PATH=$GOPATH/bin/:$PATH

第七步:下载beego框架;

root@xxx:~# go get github.com/astaxie/beego

第八步:创建项目目录;

root@xxx:~# mkdir /root/go/src/myTest

第九步:进入myTest目录,创建test.go文件。

package main

import (
    "github.com/astaxie/beego"
)

type MainController struct {
    beego.Controller
}

func (this *MainController) Get() {
    this.Ctx.WriteString("hello world\n")
}

func main() {
    beego.Router("/", &MainController{})
    beego.Run()
}

第十步:启动beego;

root@xxx:~# go run test.go

第十一步:启动完成后,打开另外一个终端,查看容器使用网络;

$ docker inspect ubuntu-go

最后通过curl命令进行测试。效果如下所示:
在这里插入图片描述

二、Dockerfile构建GO环境

第一步:创建并进入目录;

$ mkdir docker/images/beego
$ cd docker/images/beego

第二步:创建Dockerfile文件,然后拷贝以下内容到文件中;

# 基础镜像
FROM ubuntu
# 镜像作者
MAINTAINER ZhongLiwen 896337156@qq.com
# 修改国内源
RUN sed -i 's/archive.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list
RUN sed -i 's/security.ubuntu.com/mirrors.ustc.edu.cn/g' /etc/apt/sources.list
# 执行命令
RUN apt-get update --fixing-missing
RUN apt-get install gcc libc6-dev git lrzsz -y
# 安装Go环境
RUN apt-get install golang -y
# 配置环境变量
ENV GOROOT=/usr/lib/go        
ENV PATH=$PATH:/usr/lib/go/bin 
ENV GOPATH=/root/go
ENV PATH=$GOPATH/bin/:$PATH
# 下载项目
RUN go get github.com/astaxie/beego
# 增加文件
COPY test.go /root/go/src/myTest/
# 定制工作目录
WORKDIR /root/go/src/myTest/
# 对外端口
EXPOSE 8080
# 运行beego
ENTRYPOINT ["go","run","test.go"]

第三步:构建镜像;

$ docker build -t ubuntu-beego:v1.0 .

第四步:创建容器;

$ docker run -itd --name beego-test ubuntu-beego:v1.0

第五步:查看容器的IP地址;

$ docker inspect beego-test

启动完成后,执行curl命令访问IP地址,运行效果如下:
在这里插入图片描述

Logo

云原生社区为您提供最前沿的新闻资讯和知识内容

更多推荐