मैंने हाल ही में लिंक का उपयोग करने के लिए डॉकर 1.9 और डॉकर-कंपोज 1.5 के नेटवर्किंग फीचर की ओर पलायन करना शुरू कर दिया है।
अब तक लिंक्स के साथ कोई समस्या नहीं थी nginx के साथ एक समूह में एक अलग सर्वर में स्थित मेरे php5-fpm fastcgi सर्वर से कनेक्ट करने के लिए docker-compose। हालाँकि, जब मैं docker-compose --x-networking up
अपने php-fpm, mongo और nginx कंटेनरों को बूट करता हूं, तो nginx quinx सीधे[emerg] 1#1: host not found in upstream "waapi_php_1" in /etc/nginx/conf.d/default.conf:16
हालाँकि, अगर मैं docker-compose कमांड को फिर से चलाता हूं, जबकि php और mongo कंटेनर चल रहे हैं (nginx से बाहर), nginx शुरू होता है और तब से ठीक काम करता है।
यह मेरी docker-compose.yml
फाइल है:
nginx:
image: nginx
ports:
- "42080:80"
volumes:
- ./config/docker/nginx/default.conf:/etc/nginx/conf.d/default.conf:ro
php:
build: config/docker/php
ports:
- "42022:22"
volumes:
- .:/var/www/html
env_file: config/docker/php/.env.development
mongo:
image: mongo
ports:
- "42017:27017"
volumes:
- /var/mongodata/wa-api:/data/db
command: --smallfiles
यह मेरे default.conf
लिए है nginx:
server {
listen 80;
root /var/www/test;
error_log /dev/stdout debug;
access_log /dev/stdout;
location / {
# try to serve file directly, fallback to app.php
try_files $uri /index.php$is_args$args;
}
location ~ ^/.+\.php(/|$) {
# Referencing the php service host (Docker)
fastcgi_pass waapi_php_1:9000;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
# We must reference the document_root of the external server ourselves here.
fastcgi_param SCRIPT_FILENAME /var/www/html/public$fastcgi_script_name;
fastcgi_param HTTPS off;
}
}
मैं केवल एक डॉकटर-कंपोज़ कॉल के साथ काम करने के लिए कैसे नंगे हो सकता हूं?