127.0.0.1
di Docker hampir selalu berarti "wadah ini". Jika Anda menjalankan aplikasi Anda di bawah Docker Compose, itu
... menyiapkan satu jaringan untuk aplikasi Anda. Setiap wadah untuk layanan bergabung dengan jaringan default dan keduanya dapat dijangkau oleh penampung lain di jaringan itu, dan dapat ditemukan oleh mereka di nama host yang identik dengan nama wadah.
Artinya, dalam konteks docker-compose.yml
ini file, ada nama host redis
dan web
titik itu di dua wadah.
Anda telah melakukan salah satu hal konfigurasi yang penting. Saat kode Anda mengatakan
REDIS_HOST = os.environ.get('REDIS_HOST', '127.0.0.1')
Anda dapat mengatur variabel lingkungan yang menggantikan nilai default bawaan. Jadi di sini Anda hanya perlu menambahkan pengaturan variabel lingkungan ke docker-compose.yml
Anda berkas:
version: '3'
services:
redis:
image: "redis:alpine"
web:
build: . # current directory
environment:
- REDIS_HOST=redis
ports:
- "8000:8000"
# application source code and default command are built into the image