Selasa, 21 Februari 2023

Cara Menjalankan Go Run Main.go Pada Container

https://www.totorajo.web.id/2023/02/cara-menjalankan-golang-pada-docker.html. Silahkan dicoba terlebih dulu supaya bisa mengikuti artikel ini. Sebelumnya kita sudah berhasil membuat container yang didalamnya isinya Golang 1.20.

Selanjutnya bagaimana cara coding project kita bisa terbaca pada container. Sehingga kita bisa menjadikan go run main.go kemudian kita bisa akses hasil melalui browser. Pertama kita perlu melakukan pengecekan dulu apakah container yang kita buat sebelumnya sudah berhasil atau belum. Ketika perintah docker ps pada terminal dan jika berhasil maka akan tampil seperti berikut.



Kotak merah menunjukan ada container bernama golang dan berjalan di port 8060. 8060:8060 mungkin akan menjadikan bingung kenapa ada dua.  8060 pertama adalah port expose port yang kita akses dari browser. 8060 kedua adalah port apps dari golang yang kita buat. Jadi maksud 8060:8060 adalah mengakses port 8060 dari broswer yang diteruskan ke container apps dengan port 8060. Bagaimana jika port aplikasi misal 3000? Jika begitu berarti saat kita membuat container pada tutorial sebelumnya menuliskan portnya 8060:3000.



Perhatikan kotak merah ada list nama container. Kita perlu ingat nama tersebut untuk masuk kedalam container ditutorial ini kita akan masuk atau akses container dengan nama golang. Selanjutnya kita load coding project golang kita ke visual studio code kemudian lihat dimana project tersebut disimpan.



Jika D:\container\golang\ dalah directory yang kita mount pada saat kita membuat container maka seluruh directory yang ada dibawahnya akan tersedia di container yang sudah kita buat tadi. Untuk membuatkan jalankan perintah :

# docker exec -it golang bash 

Jika muncul root@c8524644d242:/go# selamat kita sudah berhasil akses container. Sampai disini ketika kita lihat directory /go/src maka seluruh file yang ada di D:\container\golang\lab\lab-golang-gin-jwt juga ada di  /go/src

Setelah kita sudah berada dicontainer maka kita bisa melakukan seluruh yang diperlukan dev golang. Sebagai contoh melakukan go run main.go



Disini kita sudah berhasil menjalankan go code di container yang source codenya dari drive D. Cara ini sangat membantu ketika kita sedang melakukan riset. Semua yang kita coba diatas bisa juga kita implementasikan di programming dengan bahasa lain.  Semoga membantu

Cara Membuat Container Golang Pada Docker

Golang saat ini bahasa pemrograman yang menjadi pilihan untuk kebutuhan backend. Golang bisa kita install di berbagi sistem operasi seperti Windows, Linux dan MacOs. Jika kita sedang melakukan riset dan perlu banyak mencoba bahasa pemrograman menginstall pada Host OS terkadang menimbulkan masalah bentrok antar versi. Hal ini mengganggu produktivias kita jika sudah kejar deadline. Berikut cara mudah melakukan develop golang langsung pada docker container. Cara ini akan memberikan banyak kelebihan seperti :

1. Bisa melakukan pengujian source code di banyak versi golang.  Satu versi golang bisa diwakilkan satu container. Kita bisa membuat banyak container dengan versi yang berbeda-beda.

2. Sistem operasi host / laptop menjadi tidak banyak terinstall bahasa pemrograman. Hal ini menjadikan resiko install ulang karena kerusakan config menjadi kecil.

Cara Setup Golang Pada Docker Container
Tentukan directory pada host (laptop/pc) yang akan kita gunakan untuk develop. Jika menggunakan linux misal /home/toto/golang dan jika diwindows misal d:\dev\golang. directory tersebut adalah tempat  kita membuat project golang. Dalam penjelasan selanjutnya kita gunakan directory berdasarkan linux.

Kita cari docker image di docker hub atau bisa akses langsung pada url https://hub.docker.com/_/golang. Kita akan menggunakan versi latest (saat tulisan ini dibuat adalah versi 1.20.0). 

Jalankan perintah berikut pada terminal

Sampai disini kita sudah berhasil membuat container berisi golang yang siap untuk kita develop apps. Untuk bagaimana cara menjalankan docker run didalam container dan hasil bisa akses di browser silahkan baca artikel berikutnya di kategori docker. Semoga membantu.

Kamis, 02 Juni 2022

Cara Mudah Install Library GD Pada Docker

 

Pada saat kita membuat aplikasi menggunakan PHP dan membutuhkan fungsi manipulasi gambar. Maka kita perlu menambahkan atau mengaktifkan library bernama gd ini. Jika kita mengguakan docker bagaimana cara untuk menambahkan library gd ? Berikut adalah langkah yang harus kita lakukan ketika kita menggunakan OS turunan debian.

1. Akses bash container yang ingin kita tambahkan. Untuk caranya silahkan baca di tulisan :
https://www.totorajo.web.id/2021/12/cara-akses-terminal-container-pada.html

2. Jalankan perintah berikut :
Semoga membantu

Kamis, 12 Mei 2022

Install Moodle Pada Container Docker

Moodle adalah aplikasi berbasis web yang biasa digunakan untuk LMS atau Learning Management System. Ketika kita menggunakan hosting dan akan melakukan upload moodle supaya bisa diakses dari internet cukup melakukan upload file dan setup database. Berikut adalah langkah ketika ingin melakukan deployment Moodle pada Docker. 



Semoga membantu

Rabu, 11 Mei 2022

Cara Mengelola Container Docker Dengan GUI



Untuk mengelola container yang sudah kita buat pada docker kita bisa menggunakan CLI Docker pada terminal. Untuk beberapa container kita masih bisa dengan mudah mengelola dengan CLI. Ketika container terus bertambah mengelola dengan CLI terkadang membuat kita bingung. Solusinya adalah gunakan Portainer. Aplikasi berbasis docker image yang bisa kita akses melalui browser. Sehingga apa yang kita ketikan pada terminal untuk mengelola container bisa digantikan dengan tampilan GUI yang bisa kita klik. Berikut adalah cara installnya.
Login ssh ke vm atau vps yang sudah terinstall docker.
contoh : ssh toto@147.88.112.79


Setelah selesai misal IP vps kita 147.88.112.79. Untuk akses Portainer http://147.88.112.79:9000.
Jika kita akses pertama kali nanti akan diminta membuat user baru dengan username admin dan password kita buat sendiri sesuai instruksi. Semoga bermanfaat.

Selasa, 19 April 2022

Cara Mengatasi Got permission denied Docker daemon socket

 

Setelah kita menginstall docker pada server selanjutnya kita akan membuat container. Untuk melakukan pengecekan container yang pernah kita buat bisa kita mengetikan perintah $ docker ps. Tetapi muncul notifikasi gagal menampilkan list container seperti ini :  Got permission denied while trying to connect to the Docker daemon socket.

Untuk mengatasi error tersebut ketikan berikut pada terminal : 
sudo chmod 666 /var/run/docker.sock

Kembali ketikan $ docker ps seharusnya error Got permission denied while trying to connect to the Docker daemon socket sudah tidak muncul lagi. Semoga membantu

Minggu, 27 Maret 2022

Cara Mudah Install Docker Pada Ubuntu



Docker merupakan software untuk melakukan pembuatan vm berbasis container. Kita bisa dengan mudah menyiapkan environment baik untuk staging, demo atau production dengan cepat. Dengan adanya Docker proses developtment bisa dilakukan dengan cepat dan murah. Karena 1 vps bisa kita pakai untuk membuat beberapa container. 

Jika setiap container mewakili service maka ketika kita membuat microservice hanya membutuhkan 1 VPS saja dengan environment pemrograman yang beragam. Berikut adalah langkah langkah bagaimana menginstall Docker pada sistem operasi Ubuntu 20

Semoga membantu.

Rabu, 23 Maret 2022

Cara Setting SSL Pada Docker


SSL saat ini menjadi kebutuhan standart development aplikasi. Ketika kita menggunakan container dan ingin melakukan setup domain dengan reverse proxy caranya bisa dipelajari disini. Setelah domain berhasil terhubung dengan server dan kita ingin menambahkan https berikut adalah cara mudah setup https pada container docker.

Sebelum kita melakukan setup pada server pastikan kita order SSL baik gratis ataupun premium. Setelah kita melakukan order SSL pastikan kita sudah memiliki :
1. Certificate / CRT contoh : domain.crt
2. Private Key  contoh : domain.key
3. CA Bundle contoh : ca-bundle.crt

3 file tersebut kita simpan dalam directory /home/toto/ssl/

Selanjutnya lakukan ini untuk membuat file .pem
/home/toto/ssl/ $ cat domain.crt ca-bundle.crt > domain.pem

Kemudian edit 
$ sudo /etc/nginx/sites-available/default

Dan tambahkan atau sesuaikan seperti berikut 


simpan kemudian restart nginx dengan cara $ sudo service nginx restart. Kemudian akses https://container1.totorajo.web.id:4443 jika setup sesuai maka domain tersebut sudah bisa diakses menjadi https. Semoga membantu.

Rabu, 16 Maret 2022

Cara Install RabbitMQ Menggunakan Docker

Dalam proses development aplikasi kita membutuhkan proses broadcast. Contoh mengirikam email ketika selesai registrasi atau pemberitahuan yang terkirim ke whatsapp secara berkala. Untuk keperluan tersebut biasanya kita menggunakan cron service yang kita jalankan kemudian melakukan eksekusi file untuk melakukan proses broadcast tersebut. Jika user atau target kita sedikit cara tersebut tidak menjadi masalah. Tetapi ketika kita ingin melakukan brodcast ke 10.000 user maka muncul masalah berapa lama waktu yang dibutuhkan. Misal saja kita melakukan cronjob per 1 menit dan dalam satu menit bisa mengirim 10 user. Maka perlu 1000 menit untuk menyelesaikan proses broadcast tersebut.

Messaging broker adalah service untuk solusi kasus diatas.  Kita menggunakan RabbitMQ. Kita hanya perlu mengirimkan data dalam bentuk json ke RabbitMQ. RabbitMQ yang akan mengatur jadwal pengiriman broadcast tersebut. Berikut adalah cara mudah menyiapkan RabbitMQ pada server menggunakan docker tanpa harus ribet.



5672 adalah port RabbitMQ client connections
15672 adalah port RabbitMQ management website

Jika port tersebut sudah digunakan diserver bisa diganti disesuikan di port yang masih kosong.
Contoh: 15672:15672
Port sebelum tanda titik dua adalah port yang diakses dari browser / client
Port setelah titik dua adalah port default RabbitMQ

Untuk login management website bisa menggunakan user default yaitu :
User : guest
Pass : guest

Semoga membantu
DomaiNesia