Edukasi

Cara Deploy Golang Sebagai Systemd di Ubuntu

Golang adalah bahasa pemrograman yang powerfull dan mampu dikompile ke binary. Di dalam artikel ini saya akan membagikan sedikit pengalaman saya ketika deploy hasil build golang sebagai systemd di ubuntu server. Systemd sendiri adalah service manager untuk sistem operasi ubuntu. Dengan kata lain kita akan menjadikan service dari hasil build project go yang kita buat.

Pada tutorial ini saya juga akan pakai krakend sebagai API gateway-nya. Krakend sendiri adalah API gateway yang powerfull dan support concurrency request tapi pada tutorial ini saya tidak akan membahas krakend saya hanya akan membahas deploy golangnya saja.

Langkah pertama yang harus dilakukan buat file dengan dengan nama myapp.service

1 [Unit]
2 Description=My golang app.
3
4 [Service]
5 Type=simple
6 Restart=always
7 RestartSec=5s
8 WorkingDirectory=/your/valid/path/
9 ExecStart=/your/valid/go/path –port=3000

Kemudian buat lagi dengan ekstensi yang sama tetapi untuk service krakend dengan nama yang berbeda contoh myappgateway.service

1 [Unit]
2 Description=My golang app gateway.
3
4 [Service]
5 Type=simple
6 Restart=always
7 RestartSec=5s
8 WorkingDirectory=/your/valid/path/
9 ExecStart=/your/valid/path/krakend run -c config.json –port=8080

Selanjutnya copy-kan kedua file tersebut ke path systemd pada ubuntu /lib/systemd/system/

cp myapp.service /lib/systemd/system/

cp myappgateway.service /lib/systemd/system/

Kemudian setelah itu jalankan service tersebut dengan systemctl

sudo systemctl start myapp.service

sudo systemctl start myappgateway.service

Untuk mengaktifkannya service saat boot

sudo systemctl enable myapp.service

sudo systemctl enable myappgateway.service

Setelah itu kita cek dulu apakah sudah sesuai dengan command status

sudo systemctl status myapp.service

sudo systemctl status myappgateway.service

Jika kita ingin menghentikan service dengan command stop

sudo systemctl stop myapp.service

sudo systemctl stop myappgateway.service

Oke kita sudah berhasil deploy hasil build projek golang kita di server kita cek dengan postman atau browser https://yourserverhostorip:8080. Oke terima kasih sudah membaca artikel ini.

ryan

Recent Posts

Komputer Lemot? Gunakan MiniOS Ultra, Distro Linux dengan Fitur yang Cukup Lengkap

Jika merasa frustasi karena komputer atau laptop kamu hanya sanggup menjalankan aplikasi sederhana seperti browser…

1 minggu ago

Games Nostalgia PS1 Tamiya Let’s & Go!! Eternal Wings (Japan)

Bakusou Kyoudai Lets & Go Eternal Wings atau biasa disebut dengan Game Tamiya PS1 merupakan permainan balap mobil Mini…

3 minggu ago

Cara Tambahkan Stiker Add Yours di WhatsApp Status

WhatsApp Status kembali mendapatkan fitur baru. Setelah cukup lama diuji coba, WhatsApp akhirnya merilis fitur 'Add…

3 minggu ago

Mark Zuckerberg Ingin AI Jadi Teman untuk Orang yang Kesepian

Chatbot AI saat ini sudah umum dipakai menjadi asisten digital. Tapi menurut Mark Zuckerberg, AI juga bisa…

3 minggu ago

Polytron Itu Mobil Listrik Nasional atau Bukan?

Polytron jadi merek Indonesia yang terjun dalam industri mobil listrik. Polytron disebut-sebut bakal menjadi mobil…

3 minggu ago

Pesaing China Muncul, Bikin AI Pakai GPU Murah Meriah

Fastino, startup kecerdasan buatan asal Amerika Serikat, memamerkan model AI barunya yang ditujukan untuk bisnis. Menariknya, model AI…

3 minggu ago