Read in 3 minutes

last updated 

How to Install Go on CentOS 7

Go, often referred to as golang is a modern open source programming language created by Google. Many popular applications, including Kubernetes, Docker, Hugo and Caddy, are written in Go.

In this tutorial we will show you how to download and install Go on a CentOS 7 system.


Before continuing with this tutorial, make sure you are logged in as a user with sudo privileges.

How to Install Go

At the time of writing this article, the latest stable version of Go is version 1.10.3. Before downloading the tarball visit the official Go downloads page and check if there is a new version available.

Follow the steps below to install Go on CentOS 7:

  1. Download the tarball.

    To download the Go binary use either wget or curl:

  2. Verify the tarball.

    Once the download is completed verify the tarball checksum with the sha256sum command:

    sha256sum go1.10.3.linux-amd64.tar.gz
    fa1b0e45d3b647c252f51f5e1204aba049cde4af177ef9f2181f43004f901035  go1.10.3.linux-amd64.tar.gz

    Make sure the hash printed from the command above matches the one from the downloads page.

  3. Extract the tarball.

    Use the tar command to extract the tarball to the /usr/local directory:

    sudo tar -C /usr/local -xzf go1.10.3.linux-amd64.tar.gz
  4. Adjust the Path Variable.

    Now we need to tell our system where to find the Go executable binaries by adjusting the $PATH environment variable.

    We can do this by appending the following line to the /etc/profile file (for a system-wide installation) or to the $HOME/.bash_profile file (for a current user installation):

    export PATH=$PATH:/usr/local/go/bin

    Save the file, and load the new PATH environment variable into the current shell session with the following command:

    source ~/.bash_profile

Test the Installation

To test whether Go is installed correctly we will set up a workspace and build a simple “Hello world” program.

  1. Create the workspace directory

    By default the workspace directory is set to $HOME/go, to create it type:

    mkdir ~/go
  2. Create a simple “Hello World” Go file.

    Inside the workspace create a new directory src/hello

    mkdir -p ~/go/src/hello

    and in that directory create a file named hello.go

    package main
    import "fmt"
    func main() {
        fmt.Printf("Hello, World\n")

    You can learn more about Go workspace directory hierarchy here

  3. Build the hello.go file:

    To build the file, switch to the ~/go/src/hello directory and run go build:

    cd ~/go/src/hello
    go build

    The command above will build an executable named hello.

  4. Run the executable:

    Run the executable by typing:

    Hello, World

    If you see the output above, then you have successfully installed Go.


Now that you have downloaded and installed Go your CentOS system, you can start developing your Go projects.

If you hit a problem or have feedback, leave a comment below.