File proyek .env Compose menyediakan nilai interpolasi. Untuk memberikan salah satu nilai itu ke kontainer, rujuk nilainya di konfigurasi layanan.

Misalnya, .env berisi titik akhir proxy:

HTTP_PROXY=http://203.0.113.10:8080

Layanan memakainya untuk permintaan ke tujuan HTTP maupun HTTPS:

services:
  app:
    image: your-image
    environment:
      HTTP_PROXY: "${HTTP_PROXY}"
      HTTPS_PROXY: "${HTTP_PROXY}"

Ganti alamat dokumentasi dan image; pilih titik akhir HTTP yang kompatibel dari layanan Anda atau dari daftar proxy HTTP. Proxy HTTP biasa dapat meneruskan HTTPS melalui CONNECT jika mendukung terowongan yang diminta.

Entri env_file eksplisit adalah cara lain untuk meneruskan variabel dari file pilihan ke layanan. File interpolasi proyek tidak berfungsi sebagai env_file implisit bagi kontainer.

Memeriksa apa yang sampai ke aplikasi

docker compose config menampilkan konfigurasi layanan yang sudah diselesaikan. docker compose config --environment sebaliknya menampilkan nilai yang dipakai untuk interpolasi.

Bandingkan lingkungan layanan dengan proses aplikasi. Kontainer yang sudah ada tidak menerima nilai baru saat Anda menyunting .env; terapkan perubahan melalui siklus hidup Compose yang dimaksud, dengan mempertimbangkan gangguan layanan.

Jika variabel tidak ada, perbaiki konfigurasi layanan. Jika ada tetapi permintaan tetap langsung, periksa dukungan proxy klien HTTP. Penyuntikan lingkungan menyediakan konfigurasi; aplikasi harus memakainya.

Artikel terkait