首页 > 解决方案 > jenkins 在 Solaris 服务器上的安装

问题描述

如何在 Solaris 服务器上安装 jenkins?我发现无法做到这一点的文章,因为 jenkins 已停止支持 solaris。

标签: jenkinssolaris

解决方案


即使 Solaris 的官方 IPS 存储库已停产,您仍然可以通过 jenkins webapp (jenkins.war) 在 Solaris 中运行 Jenkins。引用Jenkins 安装文档:

Solaris、OmniOS、SmartOS 和其他兄弟姐妹

通常,安装 Java 8 并下载 jenkins.war 并将其作为独立进程或在 Apache Tomcat 等应用程序服务器下运行就足够了。

一些警告适用:

  • 无头 JVM 和字体:对于构建在最小占用空间系统上的 OpenJDK,运行无头 JVM 可能会出现问题,因为 Jenkins 需要一些字体来呈现某些页面。

  • ZFS 相关 JVM 崩溃:当 Jenkins 在检测为 SunOS 的系统上运行时,它会尝试使用捆绑的 libzfs.jar 加载高级 ZFS 功能的集成,该文件将 Java 调用映射到主机操作系统提供的本机 libzfs.so 例程。不幸的是,该库是为同时由操作系统构建和捆绑的二进制实用程序而设计的,并且从未打算作为向消费者公开的稳定接口。随着 Solaris 的分支,包括 ZFS 和后来的 OpenZFS 倡议的发展,不同的主机操作系统提供了许多不同的二进制函数签名——当 Jenkins libzfs.jar 调用错误的签名时,整个 JVM 进程崩溃了。自每周发布 2 以来,提出了一个解决方案并将其集成到 jenkins.war 中。55(迄今为止还没有在任何 LTS 中),它使管理员能够配置应该为每个已知具有不同变体的函数使用哪些函数签名,将其应用于其应用程序服务器初始化选项,然后运行和更新通用 jenkins.war没有进一步的解决方法。有关更多详细信息,请参阅 libzfs4j Git 存储库,包括尝试“锁定”特定发行版所需配置的脚本(特别是如果您的内核更新带来新的不兼容 libzfs.so)。

另请注意,OpenZFS 计划的分支可能会在各种 BSD、Linux 和 macOS 发行版上提供 ZFS。一旦 Jenkins 支持检测 ZFS 功能,而不是依赖于 SunOS 检查,则应考虑上述 ZFS 与 Jenkins 集成的注意事项。


推荐阅读