我正在寻找一种方法来运行由Jenkins 2.0中的多个容器组成的支持Docker的构建.
是否有任何计划在Pipeline中对Docker Compose进行原生支持,或者通过CloudBees docker插件进行管道.
或者可以/必须通过显式调用解决这个问题sh docker-compose...吗?甚至可以在内部使用它们try... finally
来进一步控制服务生命周期.
编辑:第一个答案是建议一种在jenkins中构建docker容器的方法.这不是这里所需要的.我(EngineerDollery)希望使用compose在jenkins中启动我的目标平台,以便我可以将我的应用程序部署到它并运行端到端测试.
我正在按照此文档进行安装gitlab docker image,并对命令感到困惑:
docker run --name gitlab_data genezys/gitlab:7.5.2 /bin/true
Run Code Online (Sandbox Code Playgroud)
我知道" /bin/true"命令只返回一个成功状态代码,但我怎么能理解/bin/true这个docker run ...命令的作用呢?
我有一个 Docker 镜像a,它对一组给定的文件执行一些逻辑。在本地运行时,我开始a如下:
docker run -v /home/Bradson/data:/data a
Run Code Online (Sandbox Code Playgroud)
这完成了它的工作。
现在我想a在远程 Docker 守护进程上运行:
DOCKER_HOST=tcp://remote_host:2375 docker run -v /home/Bradson/data:/data a
Run Code Online (Sandbox Code Playgroud)
我现在收到/data不包含任何内容的错误,很可能是因为/home/Bradson/data远程主机上不存在。
我该如何处理?我应该首先scp /home/Bradson/data访问远程主机上的某个目录并在-v选项中引用该目录吗?是否有纯粹的 Docker 方法?
请注意,我希望/home/Bradson/data在运行时可用,而不是在a. 因此我使用了该-v选项。
我是 Docker 的新手,但在使用 Windows 10 的 docker 工具箱对一些现有的 python 代码进行 Dokcerizing 方面取得了成功。
目前我有这个设置:
这是通过 Dockerfile 完成的:
FROM python:2.7.13
WORKDIR /root
COPY ./requirements.txt /root/requirements.txt
RUN pip install -r requirements.txt
COPY . /root
CMD ["python", "main.py"]
Run Code Online (Sandbox Code Playgroud)
并且我的所有代码都位于带有一堆 CSV 和 .pkl 文件的容器中。问题是 CSV 和 .pkl 文件每天都在变化,所以经过一些阅读后,我想我可以将这些文件分成一个卷,或者甚至是一个单独的容器,我可以每天修改和上传,而无需将主要的 python 脚本更改为 1.4G大小,我的上传速度是 40kbps(最多)。
所以我想知道如何引用其他容器/卷,以便我可以访问主体 Python 代码中的 CSV 和 /pkl 文件?目前一切都在同一个目录中,所以没有问题,我只是调用 .csv/.pkl 名称,它可以工作
#open the local .csv file
data = pd.read_csv(csv_select)
#open the local .pkl file
pickled_list = pickle.load(open(can_cat+".pkl","rb"))
Run Code Online (Sandbox Code Playgroud)
我将如何引用上述代码从单独的容器中打开 csv/pkl …