Özet - Environment
- Docker & Kubernetes kursu
- Başlangıç
- Ders 60/82
- 5 dk
ENV, ARG ve -e'yi birleştirerek yapılandırılabilir bir image yazarsın.
Özet: ortam
Bu grupta:
-e AD=değerçalışma anında değişken verir;-e ADana makineden alır.ENVimage'a kalıcı varsayılan ekler;-eonu geçersiz kılar.ARGyalnızca build'de geçerlidir;--build-argile doldurulur, FROM öncesinde temel image'ı seçebilir.--env-fileçok sayıda değişkeni dosyadan yükler; gizli dosyalar depoya konmaz.WORKDIRsonraki talimatların dizinidir;RUN cdkalıcı değildir.
docker build --build-arg SURUM=1.5.0 -t api:1.5.0 .
docker run -d --env-file app.env -e LOG_LEVEL=debug api:1.5.0Uygulama Build ve çalışma ayarı
İki komut yaz: SURUM=1.5.0 build argümanıyla mevcut klasörden api:1.5.0 build et; ardından api adlı container'ı arka planda app.env dosyasıyla ve LOG_LEVEL=debug ile başlat.
Başlangıç kodu
# buraya yazÖrnek çözüm
docker build --build-arg SURUM=1.5.0 -t api:1.5.0 .
docker run -d --name api --env-file app.env -e LOG_LEVEL=debug api:1.5.0Beklenen çıktı
[+] Building 2.9s (8/8) FINISHED => naming to docker.io/library/api:1.5.0 done b4c5d6e7f809
Soru ve cevaplar
Dersin sorularını cevaplarıyla birlikte inceleyebilirsin. Kendini denemek istersen dersi interaktif olarak çöz.
1 Bir build argümanının değerini çalışan container'da da okumak için ne yapılır?
- Hiçbir şey; ARG otomatik kalır
- -e ARG yazılır
- Mümkün değildir
- ENV AD=$AD ile ENV'e aktarılır Doğru cevap
Açıklama: ARG build bitince kaybolur; ENV image'da kalır.
2 Env dosyasındaki değeri komutla geçersiz kıl.
docker run -d --env-file app.env ____ LOG_LEVEL=debug api:1.0
docker run -d --env-file app.env -e LOG_LEVEL=debug api:1.0
Açıklama: -e, --env-file'daki değerin önüne geçer.
3 Eşleştir.
| Kavram | Anlamı |
|---|---|
-e |
Çalışma anı değişkeni |
ENV |
Image varsayılanı |
ARG |
Build değişkeni |
--env-file |
Dosyadan yükle |