Bec*_*cks 1 python selenium containers jenkins docker
我已经从docker hub提取了jenkins容器,如下所示:
docker pull jenkins
Run Code Online (Sandbox Code Playgroud)
容器运行,我可以在中访问Jenkins UI:
http://localhost:8080
Run Code Online (Sandbox Code Playgroud)
我的问题是:
如果我想能够创建一个从github存储库提取的jenkins作业,并且希望从该存储库的测试文件之一运行一些python测试,我该如何安装诸如virtualenvwrapper, pip, pytest, nose, seleniumetc之类的额外软件包?
似乎Docker容器未与本地主机文件系统共享任何引用。
如何在正在运行的容器中安装此类软件包?
谢谢
您将需要在Docker容器构建时安装所有依赖项。
您可以Dockerfile在jenkins库中创建自己的库,然后在其中放置自定义内容。你Dockerfile可以看起来像
FROM jenkins:latest
MAINTAINER Becks
RUN apt-get update && apt-get install -y {space delimited list of package}
Run Code Online (Sandbox Code Playgroud)
然后,您可以执行类似...
docker build -t jenkins-docker --file Dockerfile .
docker run -it -d --name=jenkins-docker jenkins-docker
Run Code Online (Sandbox Code Playgroud)
我可能没有正确编写所有语法,但这基本上是您需要做的。如果您想run加速jenkins 的步骤,请按照Dockerfile 此处现有内容进行操作,并将相关部分添加到dockerfile中,以添加一些RUN运行jenkins的步骤。
遇到了类似的问题,尽管该页面也将docker袜子安装在另一个容器中,从而将一个容器连接到另一个容器,但也遇到了类似的问题。鉴于它是一个外部链接,因此这里是相关的dockerfile,
FROM jenkins:1.596
USER root
RUN apt-get update \
&& apt-get install -y sudo \
&& rm -rf /var/lib/apt/lists/*
RUN echo "jenkins ALL=NOPASSWD: ALL" >> /etc/sudoers
USER jenkins
COPY plugins.txt /usr/share/jenkins/plugins.txt
RUN /usr/local/bin/plugins.sh /usr/share/jenkins/plugins.txt
Run Code Online (Sandbox Code Playgroud)
这就是您如何旋转它的方法。
docker build -t myjenk .
...
Successfully built 471fc0d22bff
$ docker run -d -v /var/run/docker.sock:/var/run/docker.sock \
-v $(which docker):/usr/bin/docker -p 8080:8080 myjenk
Run Code Online (Sandbox Code Playgroud)
我强烈建议您浏览该帖子。非常棒
| 归档时间: |
|
| 查看次数: |
5352 次 |
| 最近记录: |