我有制作图像的 docker 文件。
FROM public.ecr.aws/lambda/python:3.9
RUN export LANG=en_US.UTF-8
RUN export PYTHONUNBUFFERED=1
Run Code Online (Sandbox Code Playgroud)
docker build -f dockers/mydocker -t python .
然后我想用这张图片制作图像。
列出了名为 basic 的图像docker images
然后在另一个 Dockerfile 中。
FROM python
ADD ./Pipfile* ./
RUN pipenv install --ignore-pipfile
Run Code Online (Sandbox Code Playgroud)
当我尝试构建这个 dockerfile 时
有这样来的
FROM docker.io/library/python
这是否意味着我可以使用本地图像来构建下一个图像?
我需要为此目的创建本地存储库?
或者还有其他方法可以做到这一点吗?
这可能工作正常,但您应该小心选择与标准 Docker Hub 映像名称不冲突的名称。
\nDocker 映像名称的格式为registry.example.com/path/name. 如果您没有明确指定注册表,则它始终默认为docker.io(无法更改),如果您也没有指定路径,则它默认为docker.io/library/name. docker build -t在所有上下文 \xe2\x80\x93选项、docker run镜像名称、DockerfileFROM行以及镜像名称出现的任何其他地方都是如此。
这意味着,当您运行时,您将创建一个与Docker Hub映像docker build -t python同名的本地映像。诊断程序将向您显示扩展名称。不过,它实际上应该基于您当地的形象;Docker 不会联系远程注册表,除非本地镜像丢失或者您明确告知它。pythondocker build
我建议在这里选择一些明确的名称。您并不特别需要 Docker Hub 帐户,但请尽量避免与标准映像冲突的裸名称。
\n# this will work even if you don\'t "own" this Docker Hub name\ndocker build -f Dockerfile.base -t whitebear/python .\nRun Code Online (Sandbox Code Playgroud)\nFROM whitebear/python\n...\nRun Code Online (Sandbox Code Playgroud)\n(您可能无法看到基本图像的效果,因为它RUN export没有执行任何操作;请将基本图像中的这些行更改为ENV。)
| 归档时间: |
|
| 查看次数: |
7149 次 |
| 最近记录: |