DISKON TERBATAS! Masukkan kupon "skillbaru" saat checkout di kelas apa saja

Logo Koala Skodev mengetik

Skodev

Belajar coding dalam bahasa Indonesia

MANAJEMEN DOCKER CONTAINER DENGAN PORTAINER

Portainer adalah platform manajemen kontainer berbasis web yang mendukung Docker, Swarm, Nomad, dan Kubernetes. Portainer tersedia dalam dua versi yaitu Community Edition (CE) dan Business Edition (BE).

Manajemen Docker Container dengan Portainer

Daftar Isi:

Apa itu Portainer?
Mengapa Portainer
Prasyarat
Ringkasan Diagram
Memasang Portainer Komputer di...
Konfigurasi Portainer Agent di...

Pernahkah kamu merasa lelah karena harus mengelola beberapa kontainer docker melalui CLI? Jika iya, mari berkenalan dengan Portainer. Jadi, apa sih Portainer itu? dan apa saja yang bisa dia lakukan?

Apa itu Portainer?

Portainer adalah platform manajemen kontainer berbasis web yang mendukung Docker, Swarm, Nomad, dan Kubernetes. Portainer tersedia dalam dua versi yaitu Community Edition (CE) dan Business Edition (BE).

Jadi sederhananya portainer ini platform yang memudahkan kamu untuk mengelola siklus hidup dari kontainer yang sedang dijalankan dengan adanya bantuan GUI berbasis web.

Belum tahu apa itu Docker?

Mengapa Portainer

Portainer ini memiliki ukuran image yang kecil, sekitar 200 MB untuk versi CE baik untuk server ataupun agent. Tentunya ini dapat menghemat penyimpananmu. Selain itu, dengan dukungan tampilan UI/UX yang sederhana mempercepat adaptasi pengguna dengan fitur-fitur yang disediakan.

Sekarang pertanyaannya, kapan kita sebaiknya menggunakan Portainer?

Seperti yang sudah penulis bahas sebelumnya, portainer ini cocok bagi kamu yang ingin mengelola banyak kontainer docker tapi tidak ingin direpotkan dengan pengelolaan berbasis CLI.

Bisa dibayangkan jika kamu harus mengelola 10 kontainer di 2 lingkungan yang berbeda (staging & production) akan seperti apa kacaunya jika kamu harus mengingat kembali semua perintah docker yang kamu perlukan.

Intinya dengan portainer kamu bisa sat set sat set dalam mengelola dan melihat semua kontainer yang ada.

Prasyarat

Baca juga “Install Docker Desktop on Ubuntu”

Ringkasan Diagram

Ini adalah gambaran sistem sederhana yang akan kamu kerjakan pada tutorial ini.

Diagram Sistem

Memasang Portainer Komputer di Lokal

Okey, cukup perkenalan dengan portainernya. Mari siapkan kopi dan laptop untuk mulai menginstallnya di komputer lokal.

  1. Pertama-tama kamu harus membuat volume yang akan digunakan oleh portainer server untuk menyimpan database-nya

docker volume create portainer_data

  1. Download dan jalankan kontainer portainer server

docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest

  1. Jika berhasil, kamu dapat melihat kontainernya pada dashboard docker

Docker Desktop

Disini penulis menggunakan port 9000:9000 untuk menjalankan portainer server.

  1. Klik port 9443:9443 pada dashboard docker, nantinya kamu diarahkan ke halaman initial setup.

  2. Masukkan data-data yang diminta. Jika sudah, maka sekarang kamu akan diarahkan ke halaman login seperti berikut.

Portainer Login

  1. Masukkan username dan password yang sudah kamu buat sebelumnya untuk masuk ke dashboard portainer.

Portainer Home

Sampai disini kamu telah berhasil memasang portainer server di lokal komputer menggunakan docker. Selanjutnya kita akan memasang portainer agent pada remote server.

Konfigurasi Portainer Agent di Server

Untuk kebutuhan uji coba, kamu dapat memanfaatkan preemtible VM milik Google Cloud. Tapi untuk bisa menggunakanya kamu harus memiliki akun trial terlebih dahulu.

Baca juga “Create a Google Cloud Free Trial Account”

Setelah berhasil membuat akun Google Cloud, sekarang lanjut ke langkah berikutnya.

Tapi sebelum membuat preemtible VM, kamu perlu membuat aturan firewall baru yang mengizinkan port 9001 dengan protokol TCP yang nantinya akan digunakan oleh portainer agent agar dapat terhubung dengan portainer server.

  1. Ketikkan Firewall pada fitur pencarian GCP dan pilih.

GCP Search Menu

  1. Pilih Create Firewall Rule, kemudian isi kolom dengan nilai seperti berikut

setelah itu Create dan tunggu hingga aturan firewall baru berhasil dibuat.

  1. Jalankan perintah berikut pada Cloud Shell GCP untuk membuat preemtible VM

gcloud compute instances create [VM_NAME] --preemptible

disini penulis memberi nama myserver.

  1. Setelah VM berhasil dibuat, sekarang login menggunakan SSH.

  2. Karena kamu akan menjalankan portainer agent menggunakan kontainer docker, maka kamu perlu memasang dockernya terlebih dahulu.

  3. Jalankan perintah berikut untuk mengatur repositori APT dari docker versi CLI.

# Add Docker's official GPG key:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/debian/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Add the repository to Apt sources:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/debian \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
  1. Install docker

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

  1. Untuk memastikan bahwa docker berhasil kamu install, uji instalasi dengan perintah

sudo docker run hello-world

untuk mendeploy kontainer bawaan docker.

  1. Kamu juga bisa menggunakan perintah

docker ps

untuk melihat semua kontainer yang sedang dijalankan.

  1. Untuk menginstall portainer agent, kamu perlu masuk ke mode root. Jalankan perintah berikut

sudo su

  1. Setelah masuk ke mode root, sekarang waktunya kamu menginstall portainer agent.
docker run -d \
  -p 9001:9001 \
  --name portainer_agent \
  --restart=always \
  -v /var/run/docker.sock:/var/run/docker.sock \
  -v /var/lib/docker/volumes:/var/lib/docker/volumes \
  portainer/agent:2.20.1
  1. Jalankan kembali docker ps untuk melihat apakah portainer agent telah dijalankan dan tidak ada masalah.

  2. Sekarang kembali ke dashboard portainer

Environments Sub-menu

pilih sub-menu Environments, kemudian Add environment.

  1. Centang pada bagian Docker Standalone dan klik Start Wizard.

Environment Wizard

  1. Karena sebelumnya kamu telah menginstall portainer agent pada VM, kita dapat mengabaikan perintah yang disediakan oleh portainer pada kotak dialog

Environment Wizard

  1. Isi kolom yang diminta seperti berikut
  1. Setelah itu klik Connect.

  2. Jika berhasil, kamu dapat melihat preemtible-vm pada menu Environments.

Environments Sub-menu

  1. Kembali ke menu Home, lalu klik Live connect pada preemtible-vm.

Home Menu

  1. Pilih Containers dan lihat, kita sekarang dapat melihat semua kontainer yang sedang dijalankan ataupun yang dihentikan.

Container List

  1. kontainer berlabel merah adalah kontainer yang berhenti (hello-world).

  2. Untuk melihat detail kontainer, pilih salah satu kontaier misalnya portainer_agent.

Container Details

Scroll kebawah untuk melihat detail lainnya yang disediakan oleh portainer.

Pilih Logs jika kita ingin melihat log dari kontainer yang sedang dijalankan.

Container Logs

Okey, sampai disini kamu sudah berhasil menginstall portainer agent pada server yang ingin kamu pantau kontainer dockernya.

Selain bisa digunakan untuk memantau dan mengelola kontainer Docker pada remote server, portainer juga dapat digunakan untuk mengelola kontainer pada komputer lokal.

Pilih local pada menu Environments.

Local Environment Summary

Disini kamu akan diberikan ringkasan informasi terkait environment docker yang ada pada lokal komputer seperti jumlah stack, containers, images, dsb.

Local Container List

Klik Containers, untuk menambahkan kontainer baru klik Add container.

Container Setup

Silakan mengisi kolom yang disediakan seperti pada gambar.

Bagian yang perlu diperhatikan adalah nama image harus mengikuti format berikut

my-image:my-tag misalnya nginx:mainline-alpine3.20-slim

Selanjutnya, untuk port masukkan 80 lalu klik Deploy the container.

New NGINX Container

Setelah berhasil di deploy, kamu dapat melihat kontainer baru tersebut.

NGINX Default Page

Klik port kontainer (80:80) untuk memastikan NGINX berjalan dengan sebagaimana mestinya.

Selamat, hari ini kamu sudah belajar hal baru terkait manajemen kontainer docker menggunakan platform bernama portainer. Kamu dapat mengeksplor fitur-fitur menarik lainnya yang disediakan oleh portainer.

Referensi:

Penulis: Kholil Hakim

Hi guys, kenalin aku Kholil Haq Alim Hakim biasa di panggil Holil. Pekerja IT yang suka Linux dan Cloud

Artikel lain di kategori "docker"

Daftar newsletter skodev masukkan emailmu untuk dapat informasi menarik dari dunia koding