我有一个4行的dockerfile。前3个命令按预期工作。但是我在第4行遇到错误。
FROM elasticsearch
RUN wget https://dumps.wikimedia.org/other/cirrussearch/20160215/emlwiki-20160215-cirrussearch-content.json.gz
RUN gunzip emlwiki-20160215-cirrussearch-content.json.gz
RUN curl -s -XPOST localhost:9200/wikipedia_content/somelan/_bulk --data-binary @emlwiki-20160215-cirrussearch-content.json
如何在dockerfile中执行curl命令?
答案 0 :(得分:1)
localhost:9200是容器的主机/ ip,而不是您的docker主机。由于您没有运行任何可以在端口9200上侦听的内容,我怀疑您想从主机中提取内容。
通常情况下,您有另一个容器在9200上监听,您可以通过容器名称引用它,并且您可以使用docker-compose启动这两个容器。
要从主机提取,您需要包含docker主机的IP或主机名,而不是localhost。