首页 > 解决方案 > 如何更改默认 Docker 存储库以在 Dockerfile 中使用

问题描述

我是 Docker 新手。我在封闭的环境中工作(例如,无法访问互联网)我有一个简单的 Dockerfile,如下所示:

FROM alpine 
LABEL maintainer="dwa"
RUN apk add --update nodejs modejs-npm
COPY SimpleServer.js /src
WORKDIR /src
RUN npm install
EXPOSE 8083
ENTRYPOINT["node", "./SimpleServer.js"]

当我尝试像这样运行图像构建时:

docker image build -t web:latest 。

我收到以下错误

get https://registry-1.docker.io/v2/: dial tcp: lookup registry-1.docker.io on xxx.xxx.xxx.xxx:53: read udp xxx.xxx.xxx.xxx..... i/o tmeout
(alpine, etc...)

我可以访问单独存储库中的所有图像,我可以通过内部网络访问该存储库。问题:是否可以将 Docker 配置为在查找“官方”存储库之前查看我的特定存储库,如果可以,我该怎么做?

谢谢你的帮助。

标签: docker

解决方案


您可以在 dockerfile 中指向存储库:

FROM your_repository/your_image:your_version

例子:

FROM myrepo/alpine
LABEL maintainer="dwa"
RUN apk add --update nodejs modejs-npm
COPY SimpleServer.js /src
WORKDIR /src
RUN npm install
EXPOSE 8083
ENTRYPOINT["node", "./SimpleServer.js"]

推荐阅读