使用 dockerization 的 Nexus 存储库配置

Nexus repository configuration with dockerization

是否可以以适合基于 Docker 的容器化环境的方式配置 Nexus 存储库管理器 (3.9.0)?

我们需要一个自定义的 docker 映像,其中包含 nexus 存储库管理器的基本配置,例如项目特定的存储库、基于 LDAP 的用户身份验证。我们发现大多数 nexus 配置都存在于 nexus 使用的数据库 (OrientDB) 中。我们还发现 nexus 提供了一个 REST 接口来处理第 3 方的配置,但我们发现除了备份之外没有配置 exporter/importer 功能(目录服务器 ha LDIF,应用程序服务器 ha 命令行脚本等)。

现在我们将配置导出为备份文件,在自定义 docker 映像构建期间,我们将这些备份文件复制回容器中的文件系统:

FROM sonatype/nexus3:latest

[...]

# Copy backup files
COPY backup/* ${NEXUS_DATA}/backup/

conatiner 启动时,它将获取备份文件,并且将按照我们需要的方式配置 nexus。但是,如果有一种方法可以让我们通过一组配置文件来处理这些配置,那就更好了。

所有数据都存储在 /nexus-data 下,因此您可以创建一个带有 docker 卷或将保留所有数据的主机目录。预配置该实例后,您可以使用包含联系数据的 docker 卷分发自定义 docker 映像。或者,如果您使用主机目录,您可以像现在一样简单地复制所有数据,但使用 /nexus-data 目录。

您可以在DockerHub 持久数据下找到更多信息。