2017-09-04 28 views
3

這是我Dockerfile獲取 「php_network_getaddresses:的getaddrinfo失敗:產品名稱或服務不知道」 時,試圖在作曲家運行PHP內置服務器

FROM php:7.1 
COPY ./ /var/www/html 
WORKDIR /var/www/html 
CMD ["php", "-S 0.0.0.0:8181 -t /var/www/html"] 
EXPOSE 8181 

運行它docker run -p 8181:8181 my-app

和接收錯誤

[Mon Sep 4 23:47:39 2017] Failed to listen on 0.0.0.0:8181 (reason: php_network_getaddresses: getaddrinfo failed: Name or service not known)

我不明白我在做什麼錯

這個版本的作品:

FROM php 
RUN echo "<?php echo 'Hello World';" > /tmp/index.php 
CMD ["php", "-S", "0.0.0.0:80", "-t", "/tmp"] 

但這並不

FROM php 
COPY ./ /var/www 
CMD ["php", "-S 0.0.0.0:80", "-t", "/var/www"] 
+0

是否有你在'localhost'上使用'0.0.0.0'的原因? – Phil

+0

我也使用了'localhost'。並收到相同的錯誤 – Oskar

回答

0

當使用EXEC形式,你需要在每個PARAM分開,即

CMD ["php", "-S", "0.0.0.0:8181", "-t", "/var/www/html"] 
相關問題