Installasi GOLANG pada Debian 10

Assalamualaikum,wr,wb.

Mari kita mulai :


INSTALLASI

Download Golang terlebih dahulu (Pada tutorial ini saya menggunakan Golang 1.14.3) :

# wget https://dl.google.com/go/go1.14.3.linux-amd64.tar.gz
 Exstrak file :

# tar -C /usr/local -xzf go1.14.3.linux-amd64.tar.gz

MEMBUAT ENVIRONMENT UNTUK GOLANG

Setelah mendownload dan menginstal paket Go binary, kita perlu mengatur lingkungan sistem pada sistem Linux. Untuk pengguna bash, Anda dapat mengedit '.bash_profile'

# pico ~/.bash_profile
Sekarang paste konfigurasi Environment Untuk Golang di bawah ini.

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

(Kemudian Save)

Selanjutnya add source ~/.bash_profile di  ~/.bashrc , silahkan add di line terakhir :

pico ~/.bashrc


source ~/.bash_profile

(Kemudian Save)


Selanjutnya Anda cek Golangnya :

go version


go version go1.14.3 linux/amd64


MEMBUAT FILE INIT.D APLIKASI GO

 apt-get install psmisc


pico /etc/init.d/servergo
#!/bin/bash

# Load functions from library
. /lib/lsb/init-functions

# Name of the application
app="aplikasigo"

# Start the service
run() {
  echo -n $"Starting $app:"
  cd /home/go
  ./$app > /var/log/$app.log 2> /var/log/$app.err < /dev/null &
  
  sleep 1
  
  status $app > /dev/null
  # If application is running
  if [[ $? -eq 0 ]]; then
    # Store PID in lock file
    echo $! > /var/run/lock/subsys/$app
    success
    echo
  else
    failure
    echo
  fi
}

# Start the service
start() {
  status $app > /dev/null
  # If application is running
  if [[ $? -eq 0 ]]; then
    status $app
  else
    run
  fi
}

# Restart the service
stop() {
  echo -n "Stopping $app: "
  killall $app
  rm -f /var/run/lock/subsys/$app
  echo
}

# Reload the service
reload() {
  status $app > /dev/null
  # If application is running
  if [[ $? -eq 0 ]]; then
    echo -n $"Reloading $app:"
    killall -HUP `pidof $app`
    sleep 1
    status $app > /dev/null
    # If application is running
    if [[ $? -eq 0 ]]; then
      success
      echo
    else
      failure
      echo
    fi
  else
    run
  fi
}

# Main logic
case "$1" in
  start)
    start
    ;;
  stop)
    stop
    ;;
  status)
    status $app
    ;;
  restart)
    stop
    sleep 1
    start
    ;;
  reload)
    reload
    ;;
  *)
    echo $"Usage: $0 {start|stop|restart|reload|status}"
    exit 1
esac
exit 0

(kemudian Save)


TEST GOLANG

Buat File Aplikasi Golang terlebih dahulu :

pico /home/go/aplikasigo.go

package main

import (
    "fmt"
    "log"
    "net/http"
)

const port string = "8080"

func welcome(w http.ResponseWriter, r *http.Request) {
    dataHTML := `<h1>GOLANG</h1>
        
        by : <a href="https://fajrinarmawan.web.id">FAJRIN ARMAWAN</a>
        `
    if r.Method == "GET" {
        fmt.Fprintf(w, dataHTML)
    }
}

func main() {
    fmt.Println("Berjalan di Port :", port)
    http.HandleFunc("/", welcome)
    if err := http.ListenAndServe(":"+port, nil); err != nil {
        log.Fatal(err)
    }
}


Jalankan Aplikasi :

systemctl start servergo.service

Silahkan Buka aplikasi Golang di http://ip:8080


Sekian Untuk tulisan kali ini, semoga dapat membantu dan bermanfaat.

Wassalamualaikum,wr,wb.


Share: