searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

在linux上安装编译go程序与构建docker镜像

2024-04-30 02:34:47
57
0

一. 在Linux上安装Go语言,可以按照以下步骤进行:

  1. 下载Go语言安装包:
    访问Go语言的官方网站,选择适用于你的Linux系统的安装包(通常是.tar.gz文件)。
    你可以使用wgetcurl命令来下载安装包。例如: 
    wget golang.google.cn/dl/go1.22.2.linux-amd64.tar.gz
  2. 解压安装包:
    使用tar命令解压下载的文件到/usr/local目录(或你选择的任何目录)。例如:
    sudo tar -C /usr/local -xzf go1.22.2.linux-amd64.tar.gz
    设置环境变量:
    你需要将Go的安装路径添加到你的PATH环境变量中。这通常通过编辑~/.bashrc~/.bash_profile文件来完成。打开文件后,添加以下行:
  3. export GOROOT=/usr/local/go  
    export PATH=$PATH:$GOROOT/bin

    如果你的Go工作目录与GOROOT不同,你还需要设置GOPATH环境变量。例如:
    export GOPATH=$HOME/go

    在完成这些设置后,你需要在终端输入指令source ~/.bashrc(或你编辑的文件名)以使这些环境变量生效。
  4. 验证安装:
    重启终端后,输入go version来检查Go是否安装成功,以及安装的版本信息。
    输入go env来查看Go的各种环境变量设置。
    请注意,Go的工具链是用C语言编写的,因此在安装Go之前你需要先安装相关的C工具,例如gcc等。


二、在Linux上编译Go的"hello"程序并构建Docker镜像,你可以按照以下步骤进行:

      1. 编写Go程序
         首先,创建一个Go程序。假设你的程序名为main.go,并且它的内容如下:

package main  
  
import "fmt"  
  
func main() {  
    fmt.Println("Hello, World!")  
}

         将这段代码保存为main.go文件。

        2. 编译Go程序

           打开终端,切换到包含main.go文件的目录,并运行以下命令来编译你的Go程序:

go build -o hello

          这将会生成一个名为hello的可执行文件。

       3. 创建Dockerfile

           在同一个目录下,创建一个名为Dockerfile的文件,内容如下:

# 使用官方的golang作为基础镜像  
FROM golang:1.22.2 AS builder  
  
# 将当前目录内容复制到容器的/app内  
COPY . /app  
  
# 设置工作目录为/app  
WORKDIR /app  
  
# 构建程序  
RUN go build -o hello .  
  
# 使用alpine作为基础镜像来减小镜像大小  
FROM alpine:latest  
  
# 将构建阶段生成的可执行文件复制到镜像中  
COPY --from=builder /app/hello /  
  
# 设置容器启动时运行的可执行文件  
CMD ["/hello"]


          这个Dockerfile首先使用官方的golang镜像来编译你的Go程序,然后将编译好的程序复制到基于alpine的基础镜像中,以减小最终镜像的大小。

     4. 构建Docker镜像
        在包含Dockerfile的目录中,运行以下命令来构建Docker镜像:

docker build -t hello-go .

这里-t hello-go是给你的镜像命名的标记,.表示Dockerfile所在的当前目录。

      5. 运行Docker容器
         构建完镜像后,你可以运行一个容器来执行你的程序:

docker run hello-go

         这将会启动一个新的容器,并运行你的hello程序,你应该能在终端看到"Hello, World!"的输出。

注意:请确保你已经安装了Docker,并且Docker服务正在运行。如果还没有安装Docker,请参照Docker的官方文档进行安装。

这些步骤将帮助你编译Go程序并构建一个Docker镜像来运行它。你可以根据需要调整Dockerfile中的配置,比如使用不同的基础镜像、添加环境变量等。

0条评论
作者已关闭评论
z****z
2文章数
0粉丝数
z****z
2 文章 | 0 粉丝
z****z
2文章数
0粉丝数
z****z
2 文章 | 0 粉丝
原创

在linux上安装编译go程序与构建docker镜像

2024-04-30 02:34:47
57
0

一. 在Linux上安装Go语言,可以按照以下步骤进行:

  1. 下载Go语言安装包:
    访问Go语言的官方网站,选择适用于你的Linux系统的安装包(通常是.tar.gz文件)。
    你可以使用wgetcurl命令来下载安装包。例如: 
    wget golang.google.cn/dl/go1.22.2.linux-amd64.tar.gz
  2. 解压安装包:
    使用tar命令解压下载的文件到/usr/local目录(或你选择的任何目录)。例如:
    sudo tar -C /usr/local -xzf go1.22.2.linux-amd64.tar.gz
    设置环境变量:
    你需要将Go的安装路径添加到你的PATH环境变量中。这通常通过编辑~/.bashrc~/.bash_profile文件来完成。打开文件后,添加以下行:
  3. export GOROOT=/usr/local/go  
    export PATH=$PATH:$GOROOT/bin

    如果你的Go工作目录与GOROOT不同,你还需要设置GOPATH环境变量。例如:
    export GOPATH=$HOME/go

    在完成这些设置后,你需要在终端输入指令source ~/.bashrc(或你编辑的文件名)以使这些环境变量生效。
  4. 验证安装:
    重启终端后,输入go version来检查Go是否安装成功,以及安装的版本信息。
    输入go env来查看Go的各种环境变量设置。
    请注意,Go的工具链是用C语言编写的,因此在安装Go之前你需要先安装相关的C工具,例如gcc等。


二、在Linux上编译Go的"hello"程序并构建Docker镜像,你可以按照以下步骤进行:

      1. 编写Go程序
         首先,创建一个Go程序。假设你的程序名为main.go,并且它的内容如下:

package main  
  
import "fmt"  
  
func main() {  
    fmt.Println("Hello, World!")  
}

         将这段代码保存为main.go文件。

        2. 编译Go程序

           打开终端,切换到包含main.go文件的目录,并运行以下命令来编译你的Go程序:

go build -o hello

          这将会生成一个名为hello的可执行文件。

       3. 创建Dockerfile

           在同一个目录下,创建一个名为Dockerfile的文件,内容如下:

# 使用官方的golang作为基础镜像  
FROM golang:1.22.2 AS builder  
  
# 将当前目录内容复制到容器的/app内  
COPY . /app  
  
# 设置工作目录为/app  
WORKDIR /app  
  
# 构建程序  
RUN go build -o hello .  
  
# 使用alpine作为基础镜像来减小镜像大小  
FROM alpine:latest  
  
# 将构建阶段生成的可执行文件复制到镜像中  
COPY --from=builder /app/hello /  
  
# 设置容器启动时运行的可执行文件  
CMD ["/hello"]


          这个Dockerfile首先使用官方的golang镜像来编译你的Go程序,然后将编译好的程序复制到基于alpine的基础镜像中,以减小最终镜像的大小。

     4. 构建Docker镜像
        在包含Dockerfile的目录中,运行以下命令来构建Docker镜像:

docker build -t hello-go .

这里-t hello-go是给你的镜像命名的标记,.表示Dockerfile所在的当前目录。

      5. 运行Docker容器
         构建完镜像后,你可以运行一个容器来执行你的程序:

docker run hello-go

         这将会启动一个新的容器,并运行你的hello程序,你应该能在终端看到"Hello, World!"的输出。

注意:请确保你已经安装了Docker,并且Docker服务正在运行。如果还没有安装Docker,请参照Docker的官方文档进行安装。

这些步骤将帮助你编译Go程序并构建一个Docker镜像来运行它。你可以根据需要调整Dockerfile中的配置,比如使用不同的基础镜像、添加环境变量等。

文章来自个人专栏
文章 | 订阅
0条评论
作者已关闭评论
作者已关闭评论
0
0