curl在docker build期间不起作用

时间:2017-11-07 00:29:02

标签: docker curl dockerfile linuxmint

我正在编写一个基于wildfly图像的Dockerfile。我已经隔离了这些线路,我有些头疼。 curl 命令在构建过程中不起作用。我已经卸载并再次安装了Docker,但错误仍然存​​在。我的系统是Linux Mint。 此外,我试图在RHEL中构建相同的Dockerfile,它就像一个魅力。

这是Dockerfile:

FROM jboss/wildfly

RUN cd $HOME \
    && curl -O "http://central.maven.org/maven2/mysql/mysql-connector-java/5.1.44/mysql-connector-java-5.1.44.jar"

以下是错误输出:

Sending build context to Docker daemon   1.03MB
Step 1/6 : FROM jboss/wildfly
 ---> b695bdcce374
Step 2/6 : RUN cd $HOME     && curl -O "http://central.maven.org/maven2/mysql/mysql-connector-java/5.1.44/mysql-connector-java-5.1.44.jar"
 ---> Running in 4fdcef7dbda1
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:--  0:00:39 --:--:--     0
  curl: (6) Could not resolve host: central.maven.org; Unknown error
The command '/bin/sh -c cd $HOME     && curl -O "http://central.maven.org/maven2/mysql/mysql-connector-java/5.1.44/mysql-connector-java-5.1.44.jar"' returned a non-zero code: 6

2 个答案:

答案 0 :(得分:1)

错误是解析主机名的DNS问题。您可以尝试使用--dns选项(https://docs.docker.com/engine/reference/run/#network-settings

运行docker
docker run --dns=8.8.8.8

将为您设置容器/etc/resolv.conf。

答案 1 :(得分:0)

我可以解决这个问题:

docker build --add-host central.maven.org:151.101.56.209 .

但我对此并不满意。我想说Docker使用我的DNS而不是设置固定IP。它会更优雅。