Installing Golang on an AWS instance

Edwin Siby
2 min readJun 10, 2023

--

Linux mint / Linux 2 / Amazon Linux 2023

Step 1: Install Golang on Linux

Login to your Linux system using ssh and upgrade to apply the latest security updates.

$ sudo apt-get update 
$ sudo apt-get upgrade

for linux 2023 use yam instead of apt.

Then download the Go language binary archive file using the following link. To find and download latest version available or 32 bit version go to official download page.

$ wget https://go.dev/dl/go1.20.linux-amd64.tar.gz

Now extract the downloaded archive and install it to the desired location on the system. For this tutorial, I am installing it under /usr/local directory. You can also put this under the home directory (for shared hosting) or other location.

$ tar -xvf go1.20.linux-amd64.tar.gz 
$ mv go /usr/local

Step 2: Setup Go Environment

Now you need to setup Go language environment variables for your project. Commonly you need to set 3 environment variables as GOROOT, GOPATH and PATH.

GOROOT is the location where Go package is installed on your system.

$ export GOROOT=/usr/local/go

GOPATH is the location of your work directory. For example my project directory is ~/Projects/web-development .

$ export GOPATH=$HOME/Apps/app1

Now set the PATH variable to access go binary system wide.

$ export PATH=$GOPATH/bin:$GOROOT/bin:$PATH

Step 3: Verify Installation

At this step, you have successfully installed and configured go language on your system. First, use the following command to check the Go version.

$ go version 

output - go version go1.20 linux/amd64

Now also verify all configured environment variables using following command.

$ go env 


output -

GOARCH="amd64"
GOBIN=""
GOCACHE="/root/.cache/go-build"
GOEXE=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOROOT="/usr/local/go"
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
CC="gcc"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build661994963=/tmp/go-build"
CXX="g++"
CGO_ENABLED="1"

Have a nice day Gophers.

--

--

Edwin Siby
Edwin Siby

No responses yet