Cara Membuat Environment Variable di Docker
Dalam dunia pengembangan perangkat lunak, Docker telah menjadi alat yang populer untuk membangun, mengirim, dan menjalankan aplikasi di kontainer. Salah satu fitur penting dari Docker adalah kemampuan untuk menggunakan environment variable, yang memungkinkan kita untuk mengonfigurasi aplikasi sesuai kebutuhan tanpa mengubah kode sumber. Dalam tutorial ini, kita akan membahas cara membuat dan menggunakan environment variable di Docker, khususnya dalam konteks penggunaan container LEMP yang telah disebutkan.
Prasyarat
- Docker terinstal di sistem Anda.
- Pengetahuan dasar tentang Docker dan penggunaan command line.
- Docker Compose (opsional, tetapi sangat dianjurkan).
Langkah Utama
Untuk membuat environment variable dalam Docker, kita dapat menggunakan beberapa metode. Metode yang paling umum adalah dengan menggunakan flag -e saat menjalankan perintah docker run. Mari kita lihat langkah-langkahnya.
1. Menarik Gambar Docker
Pertama, kita perlu menarik gambar Docker yang akan kita gunakan. Dalam contoh ini, kita akan menggunakan gambar LEMP. Jalankan perintah berikut:
docker pull adhocore/lemp:8.3
2. Menjalankan Kontainer dengan Environment Variables
Setelah gambar berhasil diunduh, kita dapat menjalankan kontainer dengan menyiapkan beberapa environment variable. Misalnya, kita ingin mengonfigurasi database MySQL yang akan berjalan di dalam kontainer. Berikut adalah contoh perintah untuk menjalankan kontainer dengan environment variable yang sesuai:
docker run -p 8080:80 -p 8888:88 -v pwd:/var/www/html \
-e MYSQL_ROOT_PASSWORD=1234567890 -e MYSQL_DATABASE=appdb \
-e MYSQL_USER=dbuser -e MYSQL_PASSWORD=123456 \
--name lemp -d adhocore/lemp:8.3
Dalam contoh ini, terdapat empat environment variable yang dikonfigurasi:
- MYSQL_ROOT_PASSWORD: Password untuk pengguna root di MySQL.
- MYSQL_DATABASE: Nama database yang akan dibuat saat kontainer berjalan.
- MYSQL_USER: Nama pengguna untuk akses ke database.
- MYSQL_PASSWORD: Password untuk pengguna yang telah dibuat.
3. Memverifikasi Konfigurasi
Setelah menjalankan kontainer, Anda dapat memverifikasi bahwa environment variable telah diterapkan dengan benar. Anda bisa menggunakan perintah berikut untuk mengakses shell kontainer:
docker exec -it lemp /bin/sh
Di dalam shell, Anda bisa menggunakan perintah env untuk melihat semua environment variable yang telah ditetapkan:
env
Konfigurasi Lanjutan
Selain menggunakan flag -e dalam perintah docker run, Anda juga dapat menetapkan environment variable dalam file Docker Compose. Ini sangat berguna untuk proyek yang lebih besar dengan banyak layanan.
1. Membuat File docker-compose.yml
Berikut adalah contoh file docker-compose.yml dengan beberapa layanan dan environment variable yang sudah dikonfigurasi:
version: '3.8'
services:
web:
image: adhocore/lemp:8.3
ports:
- "8080:80"
- "8888:88"
volumes:
- .:/var/www/html
environment:
MYSQL_ROOT_PASSWORD: 1234567890
MYSQL_DATABASE: appdb
MYSQL_USER: dbuser
MYSQL_PASSWORD: 123456
Anda dapat menjalankan layanan ini dengan perintah:
docker-compose up -d
Best Practices
Menggunakan environment variable memiliki banyak keuntungan, tetapi penting untuk mengikuti beberapa praktik terbaik untuk memastikan keamanan dan efisiensi.
- Jangan Hardcode Sensitive Information: Hindari menyimpan informasi sensitif seperti password dalam kode sumber Anda. Gunakan file .env untuk menyimpan informasi ini dan tambahkan ke .gitignore.
- Gunakan Nama Variabel yang Jelas: Nama environment variable harus deskriptif agar mudah dipahami oleh orang lain yang membaca kode.
- Gunakan Variabel Default: Pertimbangkan untuk menggunakan variabel default dalam kode aplikasi Anda sehingga jika environment variable tidak ditetapkan, aplikasi Anda masih dapat berjalan dengan baik.
Troubleshooting
Terkadang Anda mungkin mengalami masalah saat menggunakan environment variable. Berikut adalah beberapa langkah untuk memecahkan masalah yang umum terjadi.
- Kontrol Syntax: Pastikan bahwa tidak ada kesalahan ketik dalam penamaan variabel atau nilai yang Anda berikan.
- Periksa Log Kontainer: Gunakan perintah
docker logs [container_name]untuk memeriksa log dan mencari tahu apakah ada kesalahan terkait dengan konfigurasi. - Gunakan Shell untuk Debug: Masuk ke dalam shell kontainer dengan
docker exec -it [container_name] /bin/shdan periksa nilai environment variable denganenv.
Kesimpulan
Dalam tutorial ini, kita telah membahas cara membuat dan mengelola environment variable di Docker, terutama dalam konteks kontainer LEMP. Penggunaan environment variable sangat penting untuk menjaga keamanan dan fleksibilitas aplikasi Anda. Dengan mengikuti langkah-langkah yang telah dijelaskan di atas, Anda dapat dengan mudah mengonfigurasi aplikasi Docker Anda sesuai kebutuhan. Jangan ragu untuk menggali lebih dalam dan bereksperimen dengan konfigurasi yang berbeda untuk menemukan cara terbaik yang sesuai dengan proyek Anda.
Jika Anda memerlukan bantuan atau layanan setup, jangan ragu untuk menghubungi kami. Konsultasi Jasa Setup Sekarang
Verifikasi Teknis
Panduan ini disusun berdasarkan referensi teknis terbaru. Namun, konfigurasi server dapat bervariasi. Lihat sumber referensi asli →
