我在构建 docker 映像时遇到问题并尝试了不同的 DNS 选项,但似乎没有运气。
Docker 版本 1.9.1,内部版本 a34a1d5
存储库处于活动状态。为了运行容器,我使用了docker run --dns=192.168.1.1 -d -ti --name alpine3 alpine
标签和 dns 在那里工作。
对于图像,我将我的 DNS IP 192.168.1.1 添加到/etc/docker/daemon.json 和/etc/default/docker.io 以及 docker eth DNS,但这没有帮助。
我多次重新启动 docker 服务并重新拉取高山映像。
我什至使用 localhost 创建了本地存储库,该存储库可以在构建过程中通过日志中的路径访问,我可以下载所需的文件,但是当我运行 docker 构建时,我收到错误。
doc1@ubuntu:$ docker build -t web .
Sending build context to Docker daemon 5.632 kB
Step 1 : FROM alpine
---> 3c82203aab43
Step 2 : MAINTAINER y0zg
---> Using cache
---> 16cc74909dc2
Step 3 : RUN echo http://localhost > /etc/apk/repositories; echo http://nl.alpinelinux.org/alpine/v3.6/main >> /etc/apk/repositories
---> Using cache
---> b7f808daeb7b
Step 4 : RUN apk --no-cache update
---> Running in f6625eaa1d7d
fetch http://localhost/x86_64/APKINDEX.tar.gz
ERROR: http://localhost: could not connect to server (check repositories file)
fetch http://localhost/x86_64/APKINDEX.tar.gz
WARNING: Ignoring http://localhost/x86_64/APKINDEX.tar.gz: could not connect to server (check repositories file)
fetch http://nl.alpinelinux.org/alpine/v3.6/main/x86_64/APKINDEX.tar.gz
ERROR: http://nl.alpinelinux.org/alpine/v3.6/main: temporary error (try again later)
2 errors; 11 distinct packages available
这是码头工人文件
doc1@ubuntu:$ cat Dockerfile
FROM alpine
MAINTAINER y0zg
RUN echo http://localhost > /etc/apk/repositories;
echo http://nl.alpinelinux.org/alpine/v3.6/main >> /etc/apk/repositories
RUN apk --no-cache update
ADD counter.rb counter.rb
EXPOSE 4567
ENTRYPOINT ["ruby","counter.rb"]
这是DNS问题,您可以使用以下步骤解决它:
1) 使用以下命令查找您的 DNS IP
nmcli dev show | grep 'IP4.DNS'
IP4。域名[1]: 192.168.0.1
2) 在桌面上创建一个文件名为deamon.json
的文件,文件包含以下数据: {
"dns": ["192.168.0.1", "8.8.8.8"]
}
注意:将该 IP 192.168.0.1
替换为您的 DNS ip
3)在系统中/etc/docker/
该目录并粘贴您刚刚创建的文件deamon.json
4)然后重新启动您的码头工人/您的系统,它将解决您的问题。