Repositori ini berisi file konfigurasi untuk menjalankan server Portainer dan agennya menggunakan Docker Compose. Server ini akan menjalankan Portainer dan agennya dengan beberapa pengaturan yang telah dikonfigurasi.
Agent/docker-compose.yml
: File Docker Compose untuk menjalankan Portainer Agent.docker-compose.yml
: File Docker Compose utama yang digunakan untuk menjalankan container Portainer.image
: Direktori yang berisi gambar untuk dokumentasi.readme.md
: File dokumentasi ini.
Pastikan Anda telah menginstal Docker dan Docker Compose di sistem Anda. Jika belum, Anda dapat menginstalnya dengan mengikuti dokumentasi berikut:
atau pada Cara Instalasi Docker
-
Kloning Repositori:
git clone https://github.com/SyahrulApr86/MITI-Configuration-files.git cd MITI-Configuration-files/Portainer
-
Menjalankan Docker Compose: Pastikan Anda berada di direktori yang berisi file
docker-compose.yml
, kemudian jalankan perintah berikut:sudo docker compose up -d
Perintah ini akan mendownload image Portainer (jika belum ada), membuat container, dan menjalankan Portainer server dengan konfigurasi yang telah ditentukan.
Setelah service Portainer siap, Anda dapat mengaksesnya melalui browser menggunakan URL berikut:
- URL:
https://<ip_external>:9443/
(ingat harus menggunakanhttps
)
Untuk setiap host yang ingin dimonitor, Anda harus menjalankan Portainer Agent. Anda dapat melakukannya dengan menjalankan docker compose yang ada di folder ./Agent
:
- Menjalankan Docker Compose di Host yang Ingin Dimonitor:
cd Agent sudo docker compose up -d
Anda juga dapat mengotomatisasi proses ini dengan menggunakan Ansible.
Setelah Portainer dan agennya berjalan, buka halaman Portainer melalui URL yang telah disebutkan sebelumnya. Tambahkan agen dengan memasukkan ip_internal:9001
dan nama agen tersebut. Jika Anda ingin menggunakan ip_external
, Anda harus mengkonfigurasi firewall di host yang akan dimonitor agar port 9001 dapat diakses dari luar.
Jika Anda mengalami masalah saat menjalankan container, Anda dapat memeriksa log dengan perintah berikut:
sudo docker compose logs
Log ini akan memberikan informasi lebih lanjut tentang apa yang mungkin salah dan bagaimana cara memperbaikinya.
Berdasarkan konfigurasi yang ada dalam file docker-compose.yml
, berikut adalah port yang perlu dibuka:
- Portainer:
8000
,9443
- Portainer Agent:
9001
Anda bisa mengikuti langkah-langkah berikut untuk membuka port yang diperlukan, atau Anda dapat melihat Cara Membuat Firewall Rules jika menggunakan Google Cloud Platform.
Pastikan bahwa port yang diperlukan dibuka pada firewall di host Docker Anda sehingga klien dapat mengakses layanan. Jika Anda menggunakan ufw pada Ubuntu, Anda dapat membuka port dengan perintah berikut:
sudo ufw allow 8000/tcp
sudo ufw allow 9443/tcp
sudo ufw allow 9001/tcp
sudo ufw reload
Jika Anda menjalankan instance di GCP, Anda perlu memastikan bahwa port yang diperlukan dibuka pada firewall rules GCP:
- Buka Google Cloud Console.
- Navigasi ke VPC Network > Firewall.
- Buat Firewall Rule Baru:
- Klik tombol Create Firewall Rule.
- Masukkan detail berikut:
- Name:
allow-portainer
- Targets:
Specified target tags
lalu beri nama tagallow-portainer
- Source IP ranges:
0.0.0.0/0
(untuk akses publik) atau subnet spesifik. - Protocols and ports: Centang Specified protocols and ports dan masukkan
tcp:8000,tcp:9443,tcp:9001
.
- Name:
- Klik Create untuk membuat firewall rule.
- Tambahkan Tag ke Instance:
- Navigasi ke VM Instances.
- Klik instance yang ingin Anda akses.
- Matikan instance jika sedang berjalan.
- Klik Edit.
- Pada bagian Network tags, tambahkan tag
allow-portainer
. - Klik Save untuk menyimpan perubahan.
Anda juga dapat menggunakan Ansible untuk mengelola konfigurasi Portainer dan Docker (cara ini lebih sederhana). Anda dapat melihat cara menggunakannya di Ansible Configuration.
Setelah service berjalan, Anda dapat mengakses Portainer melalui browser menggunakan URL https://<ip_external>:9443/
untuk mengakses Portainer. Untuk setiap host yang ingin dimonitor, jalankan agen Portainer dan tambahkan agen dengan memasukkan ip_internal:9001
dan nama agen tersebut. Jika menggunakan ip_external
, konfigurasikan firewall di host yang akan dimonitor agar port 9001 dapat diakses dari luar.
Untuk informasi lebih lanjut tentang menggunakan dan mengkonfigurasi Portainer di Docker, silakan merujuk ke dokumentasi resmi Portainer dan Docker: