أواجه مشكلة مع الخلية التي تعمل داخل حاوية عامل الميناء. تم بناء صورة الاختبار الخاصة بي من ملف الإرساء التالي:
# See: https://index.docker.io/u/brice/mysql/FROM ubuntu:12.10MAINTAINER Joni Kahara <joni.kahara@async.fi> # Because docker replaces /sbin/init: https://github.com/dotcloud/docker/issues/1024RUN dpkg-divert --local --rename --add /sbin/initctlRUN ln -s /bin/true /sbin/initctlRUN apt-get updateRUN apt-get upgrade -yRUN apt-get -y install mysql-serverRUN sed -i -e"s/^bind-address\s*=\s*127.0.0.1/bind-address = 0.0.0.0/" /etc/mysql/my.cnfRUN /usr/bin/mysqld_safe & \ sleep 10s && \ mysql -e "GRANT ALL ON *.* to 'root'@'%'; FLUSH PRIVILEGES;"EXPOSE 3306VOLUME ["/var/lib/mysql", "/var/log/mysql"]CMD ["mysqld_safe"]
بعد إنشاء صورة من الملف أعلاه ، أقوم بتشغيلها باستخدام:
docker run -p 3306:3306 asyncfi/magento-mysql
وبعد ذلك كل شيء هو تضخم ويمكنني تسجيل الدخول إلى هذا المثال من الخلية من الجهاز المحلي. ومع ذلك ، يمكنني أيضا تسجيل الدخول من أي جهاز آخر.
لقد قمت بإعداد جدار الحماية الخاص بي لتصفية كل شيء باستثناء حركة المرور القادمة إلى منافذ محددة ("المخفية" سش ، هتب ، هتبس) ، وهذا التصفية في الواقع يبدو أن العمل ؛ إذا كنت على سبيل المثال تشغيل خادم تطوير جانغو على المنفذ 1234 ثم أنا قادرة على الاتصال من الجهاز المحلي ، ولكن ليس من الخارج. لذلك يبدو أن جدار الحماية يقوم بتصفية الحزم عندما يتم توجيهها إلى خادم يعمل كعملية" عادية " ، ولكن ليس عند تشغيل الخادم داخل حاوية.
أرقام الأسطر تقول ما يلي:
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)num pkts bytes target prot opt in out source destination1 2265 107K ACCEPT all -- lo any anywhere anywhere2 240K 319M ACCEPT all -- any any anywhere anywhere ctstate RELATED,ESTABLISHED3 14 1040 ACCEPT tcp -- any any anywhere anywhere tcp dpt:<REDACTED>4 21 1092 ACCEPT tcp -- any any anywhere anywhere tcp dpt:http5 6 360 ACCEPT tcp -- any any anywhere anywhere tcp dpt:https6 538 34656 LOG all -- any any anywhere anywhere limit: avg 5/min burst 5 LOG level debug prefix "iptables DROP: "7 551 35424 DROP all -- any any anywhere anywhereChain FORWARD (policy ACCEPT 5 packets, 296 bytes)num pkts bytes target prot opt in out source destination1 0 0 ACCEPT all -- docker0 docker0 anywhere anywhere2 6752 396K ACCEPT all -- docker0 !docker0 anywhere anywhere3 125K 188M ACCEPT all -- any docker0 anywhere anywhere ctstate RELATED,ESTABLISHEDChain OUTPUT (policy ACCEPT 51148 packets, 14M bytes)num pkts bytes target prot opt in out source destination
نسخة عامل الميناء هو:
Client version: 0.7.3Go version (client): go1.2Git commit (client): 8502ad4Server version: 0.7.3Git commit (server): 8502ad4Go version (server): go1.2Last stable version: 0.7.3
لماذا يتعرض ميناء الخلية إلى العالم الخارجي?