install golang ubuntu bionic
Jump toUpdate content

Installing Go on Ubuntu

Reviewed on 19 September 2023Published on 14 August 2018
  • compute
  • Instance
  • Go
  • Ubuntu-Bionic-Beaver

Go is an open-source programming language, initially developed by a team at Google and becoming increasingly popular for many applications. The project is backed by many contributors from the open-source community.

This tutorial will guide you through the download and installation of the Go programming language on a Ubuntu Bionic Beaver server. At the end of this guide, you will create your first Go application.

Security & Identity (IAM):

You may need certain IAM permissions to carry out some actions described on this page. This means:

  • you are the Owner of the Scaleway Organization in which the actions will be carried out, or
  • you are an IAM user of the Organization, with a policy granting you the necessary permission sets
  • You have an account and are logged into the Scaleway console
  • You have configured your SSH key
  • You have a server running on Ubuntu 18.04 (Bionic Beaver) or later
  • You have sudo privileges or access to the root user.

Installing Go

  1. Connect to your Instance using SSH.

    ssh root@your_server_ip
  2. Update your APT package cache and upgrade the software already installed on the Instance to the latest release.

    apt update && apt upgrade -y
  3. Install the Go programming language from the apt repository:

    apt install golang -y
  4. Make sure Go is installed by running the following command:

    go version

    You should see an output like the following:

    root@gopher:~# go version
    go version go1.13.8 linux/amd64
  5. Set the GOPATH for your environment:

    echo "GOPATH=$HOME/golang" >> ~/.bashrc
    echo "export GOPATH" >> ~/.bashrc
    echo "PATH=\$PATH:\$GOPATH/bin # Add GOPATH/bin to PATH for scripting" >> ~/.bashrc
    source ~/.bashrc

Creating a Hello World Go Application

  1. Start by creating a workspace, where you will store the files of your project.
    mkdir -p $HOME/golang/src/hello-world

    Go uses a strict Workspace layout. You should follow the guidelines to make sure your application will work.

  2. Open a text editor and create a file hello-world.go in the working directory. Then copy and paste the following content into it:
    package main
    import "fmt"
    func main() {
    fmt.Printf("Hello world! This is my first Go program.\n")
  3. Run the code directly in Go with the command go run:
    go run hello-world.go
  4. Compile the application if you want to have a program directly available as a binary to distribute it.
    go install hello-world
  5. Once the application is compiled, you can launch it by typing hello-world in your terminal.
    bill@golang:~# hello-world
    Hello world! This is my first Go program.
  6. Use which to discover the location of the binary. It will return the file path:
    bill@golang:~# which hello-world

Creating a Go Web Application

Go provides the net/http package, which makes it very easy to create web applications:

Create a new workspace and add the following content to the main.go.

package main
import (
func main() {
http.HandleFunc("/", WorldServer)
http.ListenAndServe(":8080", nil)
func WorldServer(w http.ResponseWriter, r *http.Request) {
fmt.Fprintf(w, "Hello, %s!", r.URL.Path[1:])

You now have a working Go development environment. If you want to learn more about writing code in Go, you can follow the interactive tutorial.