在Dockerfile中运行Docker pull命令

11

我是Docker的新手,正在尝试一些东西。现在我想创建一个Dockerfile,自动构建Oracle DB镜像。

############################################################
# Dockerfile to build MongoDB container images
# Based on Ubuntu
############################################################

# Set the base image to Ubuntu
FROM ubuntu

# File Author / Maintainer
MAINTAINER Example McAuthor

# Update the repository sources list
RUN apt-get update

################## BEGIN INSTALLATION #####################
CMD docker pull alexeiled/docker-oracle-xe-11g

我的问题是docker pull命令。
当我尝试使用RUN命令时,Docker守护进程会说找不到'docker'。然后我使用CMD命令,它可以工作,但这是否正确?也许你可以向我展示其他的方法。

1个回答

14

不应该从Dockerfile中拉取。

您只需从以下内容开始编写Dockerfile:

FROM docker-oracle-xe-11g

添加任何你在自己的Oracle镜像中需要的Oracle配置文件。
docker-oracle-xe-11g Dockerfile已经基于Ubuntu。

FROM ubuntu:14.04.1

如果我使用“FROM docker-oracle-xe-11g”,我会收到以下错误消息:错误:找不到图像library/docker-oracle-xe-11g:latest - Ditscheridou
@user2068694 首先在您的Docker会话中尝试docker pull docker-oracle-xe-11g - VonC
2
是的,我知道那个方法可行,但我希望能够通过 Dockerfile 触发它...因为我需要在几台电脑上部署这个。 - Ditscheridou
@user2068694,您可以从几台计算机上同时部署相同的Docker镜像,基于“docker-oracle-xe-11g”,而无需从Dockerfile本身拉取任何内容。 - VonC

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接