मैं 2 डॉकर्स, अपाचे के साथ एक डॉकर, php5 के साथ एक डॉकर बनाता हूं, और मैं शुरू करने के लिए डॉकर-कंपोज़ का उपयोग करता हूं।PHP डॉकर लिंक अपाचे डॉकर
apache2 Directoy apache2 में Dockerfile:
FROM debian:latest
RUN apt-get update && apt-get install -y apache2
ADD test.php /var/www/html
CMD ["/usr/sbin/apache2ctl", "-D", "FOREGROUND"]
और test.php:
<?php
phpinfo();
?>
PHP5 निर्देशिका php में Dorckerfile:
FROM debian:latest
RUN apt-get update && apt-get install -y php5
डोकर-compose.yml:
apache:
build: ./apache2
container_name: apache
ports:
- "80:80"
links:
- "php5"
php5:
build: ./php
container_name: php
तो मैं चलाएँ:
docker-compose up
apache2 सर्वर सफलतापूर्वक शुरू करते हैं। तब मैं http://server_ip द्वारा इस सर्वर का उपयोग, जब मैं http://server_ip/test.php का उपयोग तो मैं debian.But के सूचकांक मिलता है, सिर्फ इस होते हैं:
<?php
phpinfo();
?>
php सिर्फ मैं नहीं क्यों काम है.और नहीं है।
PHP और Apache अब दो अलग-अलग कंटेनर में रहते हैं और वेब कॉल/लिंक/डेटा एक्सचेंज के माध्यम से केवल एक-दूसरे के साथ बातचीत कर सकते हैं, लेकिन एक-दूसरे को कॉल करके नहीं। आप एक संयुक्त php5/apache कंटेनर बनाना चाहते हैं और सुनिश्चित करें कि आप php5 मॉड्यूल का उपयोग करें। –
@WolfgangFahl आपका क्या मतलब है "वेब कॉल/लिंक/डेटा एक्सचेंज के माध्यम से एक दूसरे के साथ बातचीत करें"? मैं समझ नहीं पा रहा हूँ – xina1i
आप अपाचे और PHP के लिए अलग कंटेनरों का उपयोग कर सकते हैं लेकिन आपको कुछ पोर्ट पर चलने वाले 'php-fpm' का उपयोग करने की आवश्यकता है और फिर आपको अपनी apache कॉन्फ़िगरेशन फ़ाइल में' php-fpm' को कॉन्फ़िगर करने की आवश्यकता है। –