为 Github 项目创建 Docker 图像

Creating a Docker Image for a Github Project

我有一个 GitHub project,(我正在使用(我没有创建它)),称为 OpenRefine,我想 封装 Docker 图像,这样其他人就可以从 "Docker Hub" 中提取 Docker 图像,并在他们的基本交互 Docker 实体上安装 OpenRefine,即。图片.

然后我想将其上传到可以与他人共享的存储库。

如果它有一个名字而不是一个疯狂的哈希值就好了。


难道我只是用 git clone 命令创建了一个 "docker file" 文本文件?

但是如何将其上传到 docker 集线器等存储库?我只是把那个文本文件放在那里?

类似于

从ubuntu

维护者:/ WTF?!

运行 git 克隆废话

CMD 这里是什么?


这似乎是一个非常基本的问题,但在 Docker provided tutorials, nor is there a definitive answer on Whosebug 中不容易访问这些信息,但对于以非常复杂的方式生成终端输出“Hello,这些无疑是极好的资源世界”。

我不确定,但您可以尝试获取一些适合 运行 您的应用程序的基本 docker 图片。在那里构建您的应用程序并使用 "docker commit" 获取新图像,该图像将包含您的应用程序的基本图像。

虽然 Sergius 的回答没有错,但其他方法是通过 Dockerfile https://docs.docker.com/reference/builder/。通过这种方式,您可以在 github 项目中包含一个 Dockerfile 并构建该映像以放置在 docker 集线器上。或者您可以创建一个 docker 文件,从 github 中提取您的项目,运行任何必要的构建步骤,然后将其推送到 docker hub。

无论哪种方式,您都需要使用

从 docker 文件构建映像

docker build -t <name of image> <OPTIONS> <build context>

然后你会使用docker push推送图像。

对于项目外的 Dockerfile:

FROM ubuntu:14.04
RUN apt-get install git && \
git clone <your git repo> && \
<additional bash commands for building your project>
CMD <command to run your project> # Can also use ENTRYPOINT in certain cases

在 Docker Hub 上已经有 plenty 的 Docker OpenRefine 图片。

您为什么不以他们的 Docker 文件之一为例? This one 似乎是最受欢迎的。