TeamCity持续集成和持续交付Docker

原文地址:https://hub.docker.com/r/jetbrains/teamcity-server/

TeamCity服务器 - 强大的持续集成和持续交付功能


这是官方的JetBrains TeamCity服务器镜像。
该镜像适用于生产用途和评估目的。

像标签

docker映像中的所有默认标记都指向Linux映像。 Windows Docker镜像有后缀-windowsservercore 和-nanoserver

  • jetbrains/teamcity-server, jetbrains/teamcity-server:latest (ubuntu)
  • jetbrains/teamcity-server:latest-windowsservercore, jetbrains/teamcity-server:latest-windowsservercore-ltsc2016 (windowsservercore ltsc2016)
  • jetbrains/teamcity-server:latest-nanoserver, jetbrains/teamcity-server:latest-nanoserver-sac2016 (nanoserver sac2016)
  • jetbrains/teamcity-server:latest-windowsservercore-1709 (windowsservercore 1709)
  • jetbrains/teamcity-server:latest-nanoserver-1709 (nanoserver 1709)
如何使用镜像

从Docker Hub存储库中提取镜像

docker pull jetbrains/teamcity-server

使用以下命令在Linux容器内使用TeamCity服务器启动容器:

docker run -it --name teamcity-server-instance  \
    -v <path to data directory>:/data/teamcity_server/datadir \
    -v <path to logs directory>:/opt/teamcity/logs  \
    -p <port on host>:8111 \
    jetbrains/teamcity-server

或Windows 容器

docker run -it --name teamcity-server-instance
    -v <path to data directory>:C:/ProgramData/JetBrains/TeamCity
    -v <path to logs directory>:C:/TeamCity/logs
    -p <port on host>:8111
    jetbrains/teamcity-server:latest-nanoserver

<path to data directory>是作为TeamCity数据目录的主机计算机目录,其中TeamCity存储项目设置和构建结果。 通过空目录为全新的开始。 未设置映射时,您将在容器关闭时失去所有TeamCity设置。
<path to logs directory>是存储TeamCity服务器日志的主机目录。 映射可以省略,但是在容器关闭时日志将会丢失,这将使问题调查变得不可能。

除了数据目录之外,TeamCity还存储一组用户并在SQL数据库中创建结果。
默认情况下,TeamCity服务器使用存储在数据目录下文件系统上的内部数据库。 但是,生产使用需要外部数据库

要使用服务器进行生产,请务必查看并应用这些建议

您至少需要一个TeamCity代理才能运行构建。检查jetbrains/teamcity-agentjetbrains/teamcity-minimal-agent镜像

Windows容器限制

有关Windows容器中已知问题的详细信息,请参阅已知问题页面。
其他命令

当需要将其他环境变量传递给服务器进程时,请使用常规-e选项。 例如 要传递TEAMCITY_SERVER_MEM_OPTS环境变量,请使用:

docker run -it --name teamcity-server-instance   \
       -e TEAMCITY_SERVER_MEM_OPTS="-Xmx2g -XX:MaxPermSize=270m -XX:ReservedCodeCacheSize=350m" \
       -v <path to data directory>:/data/teamcity_server/datadir  \
       -v <path to log directory>:/opt/teamcity/logs   \
       -p <port on host>:8111 \
       jetbrains/teamcity-server

要运行maintainDB脚本(例如,用于服务器备份),请停止正在运行的容器并从主机执行以下命令:

docker run -it --name teamcity-server-instance  \
    -v <path to data directory>:/data/teamcity_server/datadir  \
    -v <path to log directory>:/opt/teamcity/logs  \
    -p <port on host>:8111 \
    jetbrains/teamcity-server \
    "/opt/teamcity/bin/maintainDB.sh" "backup"
确保所有本地系统路径与主服务器启动命令保持一致。

要更改TomCat容器内的TeamCity应用程序的上下文,请通过
-e TEAMCITY_CONTEXT=/contextdocker run 默认的一个是ROOT,意味着服务器可以在http:// host /
升级TeamCity

确保检查通用的TeamCity升级说明
如果你没有改变容器,你可以停止正在运行的容器,通过通常的命令将新版本的图像和服务器拉入。
如果您更改了图像,则需要将更改复制到新的TeamCity服务器映像。 一般来说,使用Docker的常识来执行升级。

许可


该镜像可在TeamCity许可下获得。
TeamCity可免费使用100个构建配置(作业)和3个代理的限制。 许可细节

反馈

向TeamCity官方问题跟踪器报告建议问题。

在Hood之下


此图片基于TeamCity基础图像构建,其中包括:

  •      ubuntu:xenial(Linux)
  •      microsoft / windowsservercore或microsoft / nanoserver(Windows)
  •      Oracle JRE 8 Update 161,64位
  •      curl,unzip(Linux)


限制


由于Oracle许可证策略,该映像基于JRE 8 Update 161,并提供有限的Java工具集。 如果您需要Java诊断工具(例如,为TeamCity进程进行内存转储或进行线程转储),请通过现有的Java安装将JDK 8 Update 161,64位安装到容器中。

其他TeamCity镜像

Dockerfile源码


https://github.com/JetBrains/teamcity-docker-server



评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值