如何正确设置jenkins与docker的关系?

如何正确设置jenkins与docker的关系?,docker,jenkins,bind,Docker,Jenkins,Bind,我是Docker的新手,正在学习如何与Jenkins一起实现Docker。我能够使用以下命令成功地将docker卷绑定到我的主机目录 docker run–名称jenkinsci-p8080:8080-p50000:50000-v~/Jenkins:/var/Jenkins_home/Jenkins/Jenkins:lts 现在基本的Jenkins已经设置好并绑定到我的主机,有一些事情我不确定要处理 (1) 这只能通过localhost:8080访问。如何使其他计算机可以访问此文件?我读到我可以

我是Docker的新手,正在学习如何与Jenkins一起实现Docker。我能够使用以下命令成功地将docker卷绑定到我的主机目录

docker run–名称jenkinsci-p8080:8080-p50000:50000-v~/Jenkins:/var/Jenkins_home/Jenkins/Jenkins:lts

现在基本的Jenkins已经设置好并绑定到我的主机,有一些事情我不确定要处理

(1) 这只能通过localhost:8080访问。如何使其他计算机可以访问此文件?我读到我可以将URL更改为我公司的公共IP地址?这是正确的方法吗

(2) 我想自动安装选定插件,并在全局工具配置中设置路径。关于github有一些提示,但我不清楚这个Dockerfile放在哪里。例如,如果我想安装插件MSBuild和Green Balls,那会是什么样子

FROM jenkins/jenkins:lts
COPY plugins.txt /usr/share/jenkins/ref/plugins.txt
RUN /usr/local/bin/install-plugins.sh < /usr/share/jenkins/ref/plugins.txt
来自jenkins/jenkins:lts的

复制plugins.txt/usr/share/jenkins/ref/plugins.txt
运行/usr/local/bin/install-plugins.sh
我是否需要创建一个名为plugins.txt的文本文件,其中包含我想要下载的插件列表?此Dockerfile将存储在哪里

(3) 我还需要一个Dockerfile,用于安装运行.NET Windows项目所需的所有依赖项(nuget、msbuild、wix、nunit等)。我相信这个Dockerfile将放在我的git存储库中


基本上,我被这些Docker的信息弄得不知所措,并试图拼凑Docker是如何与Jenkins互动的。如果您能就这些问题提供任何建议和指导,我将不胜感激。

被docker+kubernetes压垮是可以的。我们处理应用程序/服务的方式有很多信息和整体转变

  • 要使jenkins在所有接口上都可用,请使用以下命令
  • docker run–名称jenkinsci-p“0.0.0.0:8080:8080”-p“0.0.0.0:50000:50000”-v~/Jenkins:/var/Jenkins_home/Jenkins/Jenkins:lts
    
  • 是的,您必须提供
    plugins.txt
    文件,并创建一个包含所有必需插件的新jenkins映像。之后,您可以使用此新图像而不是jenkins/jenkins:lts
  • 适合您的工作负载的新映像应该包含您的环境所需的所有依赖项

  • 被docker+kubernetes压倒是可以的。我们处理应用程序/服务的方式有很多信息和整体转变

  • 要使jenkins在所有接口上都可用,请使用以下命令
  • docker run–名称jenkinsci-p“0.0.0.0:8080:8080”-p“0.0.0.0:50000:50000”-v~/Jenkins:/var/Jenkins_home/Jenkins/Jenkins:lts
    
  • 是的,您必须提供
    plugins.txt
    文件,并创建一个包含所有必需插件的新jenkins映像。之后,您可以使用此新图像而不是jenkins/jenkins:lts
  • 适合您的工作负载的新映像应该包含您的环境所需的所有依赖项

  • 自动化插件安装是什么意思?你想在Jenkins docker run预装插件吗?我也知道,只有NetCore应用程序与docker兼容。Net经典应用程序仅可在IIS中部署。而且IIs对docker不友好。您的应用程序是否使用NetCore技术?自动化插件安装是什么意思?你想在Jenkins docker run预装插件吗?我也知道,只有NetCore应用程序与docker兼容。Net经典应用程序仅可在IIS中部署。而且IIs对docker不友好。您的应用程序是否使用NetCore技术?我正在github上遵循脚本使用步骤。在主机的windows cmd提示符下,我创建了plugin.txt(包含一些我想下载的插件)和Dockerfile。这两个文件存储在主机的Jenkins目录中。当我使用命令“docker build.”构建docker文件时,日志显示插件正在下载。然而,当我在我的localhost:8080上重新启动jenkins时,插件并没有被下载……似乎我必须创建一个新的容器(使用一个新的名称并使用新创建的映像)才能获得预期的结果。对吗?首先使用默认配置创建jenkins容器,在该目录中手动创建plugins.txt和Dockerfile,构建Dockerfile以创建新映像,然后使用新映像创建新容器,这似乎很奇怪。这是唯一的方法吗?Nn,您不需要首先使用默认配置创建容器。只需使用安装的插件或依赖项创建一个映像,并从该映像运行容器。在主机的windows cmd提示符下,我创建了plugin.txt(包含一些我想下载的插件)和Dockerfile。这两个文件存储在主机的Jenkins目录中。当我使用命令“docker build.”构建docker文件时,日志显示插件正在下载。然而,当我在我的localhost:8080上重新启动jenkins时,插件并没有被下载……似乎我必须创建一个新的容器(使用一个新的名称并使用新创建的映像)才能获得预期的结果。对吗?首先使用默认配置创建jenkins容器,在该目录中手动创建plugins.txt和Dockerfile,构建Dockerfile以创建新映像,然后使用新映像创建新容器,这似乎很奇怪。这是唯一的方法吗?Nn,您不需要首先使用默认配置创建容器。只需使用安装的插件或依赖项创建一个映像,并从此映像运行容器。