• Skip to primary navigation
  • Skip to main content
  • Skip to primary sidebar

Jaranguda

Belajar Mengajar

  • Home
  • Sponsor/Jasa
  • Tentang

Containerize Aplikasi Golang di Docker

Last Updated on 23 July 2021 By tommy Leave a Comment

Sebagai contoh kita akan membuat script Golang sederhana yang berjalan di port 8000, bila diakses akan menampilkan hostname dari dari container yang menjalankannya. Buat folder baru dengan nama aplikasi-golang, buat file baru web-server.go, copy paste script dibawah ini

package main
 
import (
    "fmt"
    "net/http"
    "os"
)
 
func home(w http.ResponseWriter, req *http.Request) {
 
    hostname, err := os.Hostname()
    if err != nil {
        panic(err)
    }
    fmt.Fprintf(w, "Hostname: %s", hostname)
}
 
func main() {
    http.HandleFunc("/", home)
    http.ListenAndServe(":8000", nil)
}

Build aplikasi

go build web-server.go

coba jalankan

./web-server

test dengan curl

curl localhost:8000

aplikasi golang sederhana

Buat Dockerfile

Untuk membuat docker image, buat Dockerfile yang berisi

FROM golang:1.16
RUN mkdir /app
COPY $PWD /app
WORKDIR /app
RUN go build web-server.go
CMD ["/app/web-server"]

build aplikasi golang di docker dengan

docker build . -t golangapp

jalankan docker yang baru dibuat

docker run -p 8000:8000 golangapp

-p 8000:8000, digunakan untuk binding port 8000 dari docker ke localhost. Bila port 8000 telah digunakan ganti dengan port lainnya, misalkan 8200 (-p 8200:8000), akses dengan curl

curl localhost:8000

Setelah ini aplikasi bisa di deploy ke Kubernetes, AWS ECS atau apapun service yang anda gunakan.

Tulisan menarik lainnya

  • Aplikasi CRUD di Laravel 5

    Untuk Laravel 5.5 bisa dilihat di Contoh Script PHP CRUD di Laravel 5.5 Disini kita…

  • Exclude Aplikasi di DNF (Pengganti YUM) Fedora

    Untuk meng-exclude aplikasi biar ngga di install/upgrade di Fedora yang menggunakan dnf (pengganti YUM) nantinya,…

  • Cara Backup dan Restore Thunderbird di Linux

    Thunderbird adalah salah satu email client yang paling banyak digunakan di Linux. Selain itu Thunderbird…

  • Masalah Fullscreen Smplayer di Linux

    Bila anda mendapati tampilan fullscreen smplayer seperti gambar dibawah ini disini ada solusi untuk masalah…

Filed Under: Linux

Reader Interactions

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Primary Sidebar

Pencarian

Tanya Jawab tentang DevOps SRE CPE, gabung di https://t.me/devopsindonesia

Terbaru

  • Cara Menonaktifkan Pager di macOS
  • Cara Mengupdate Nama Apple silicon-as-a-Service Scaleway
  • Cara Force Delete Namespace di Kubernetes
  • Install PHP MariaDB di Mac Monterey
  • MacOS Minta Install Git

Komentar

  • Ari on Cara Mematikan SSID Molecool Balifiber
  • kiki anarki on Mengambil Data dari Situs BPJS Ketenagakerjaan dengan PHP cURL
  • musgan on Password Router Huawei HG8245H5 Indihome
  • ghabily on Mengambil Informasi Router Alcatel Lucent G-241W-A dengan PHP
  • nea on Mencari urutan angka yang hilang di PHP

Tulisan Populer

  • Password Router Huawei HG8245H5 Indihome 1.1m views
  • Password Terbaru ZTE F609 Indihome 784k views
  • Password Superadmin Huawei HG8245A 314.2k views
  • Cara Setting Manual Modem GPON ZTE F609 Indihome 272.2k views
  • Cara Setting Wireless ZTE F609 Indihome 256.1k views
  • Mengaktifkan Port LAN di Huawei HG8245 Indihome 169.1k views
  • Akses UseeTV Indihome via Wireless ZTE F609 156.5k views
  • Kemana Menghilangnya Saldo BCA 50 ribu 150.3k views
  • Cara Reset Password ZTE F609 Indihome 147.2k views
  • Cara Setting DHCP Server Modem/Router ZTE F609 112.9k views

Kategori

  • Delphi
  • dll
  • Gambas
  • Internet
  • Java
  • Lazarus
  • Linux
  • PHP
  • Review
  • Teknologi

Sponsor

kadal.id
carakami.com
kuotabisa.com
Untuk jadi sponsor, hubungi kita lewat halaman sponsor
© 2021. Jaranguda
  • Linux
  • PHP
  • Internet
  • Teknologi
  • Delphi
  • Gambas
  • Java