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

Cara Install FTP Server Menggunakan VSFTPD di CentOS 7

Pengertian FTP File transfer protocol (FTP) merupakan protokol yang bertugas untuk menjembatani pertukaran informasi di dalam…

1 bulan ago

Iran konfirmasi tembakkan drone, rudal ke Israel

Yerusalem - Iran mengonfirmasi telah meluncurkan puluhan pesawat nirawak (drone) dan rudal ke arah Israel…

3 bulan ago

Iran sebut tindakannya serang Israel sesuai Pasal 51 Piagam PBB

New York - Utusan tetap Iran untuk Perserikatan Bangsa-bangsa (PBB) mengatakan bahwa tindakan militer Republik…

3 bulan ago

Israel sebut Iran luncurkan puluhan drone ke wilayahnya

Teheran - Juru bicara pasukan militer Israel Daniel Hagari pada Minggu mengatakan Iran telah meluncurkan…

3 bulan ago

11 Cara Menghilangkan Iklan di HP Xiaomi

Kemunculan iklan di HP Android termasuk Xiaomi bukanlah hal baru bagi pengguna. Iklan-iklan tersebut biasanya…

3 bulan ago

Cara Menghilangkan Iklan di HP Xiaomi agar Tidak Mengganggu

Cara menghilangkan iklan di HP Xiaomi dibutuhkan ketika pengguna mulai terganggu dengan adanya iklan-iklan yang bermunculan di layar…

3 bulan ago