
jordan/rundeck最新版本的README可查看:[***]
本仓库包含Rundeck Docker镜像的源码。
Rundeck Docker镜像基于debian:bullseye构建,集成了Supervisor、MariaDB和Rundeck服务,适用于快速部署和运行Rundeck自动化作业平台。
docker exec或nsenter进行容器内操作RUNDECK_PASSWORD,将随机生成并通过标准输出显示EXTERNAL_SERVER_URL,默认值为[***]bashdocker pull jordan/rundeck
启动新容器并绑定主机4440端口:
bashsudo docker run -p 4440:4440 -e EXTERNAL_SERVER_URL=[***] --name rundeck -t jordan/rundeck:latest
启动容器并绑定主机4443端口以启用SSL。注意:生产环境需更新/etc/rundeck/ssl/keystore和/etc/rundeck/ssl/truststore,默认证书为自签名。设置KEYSTORE_PASS和TRUSTSTORE_PASS为密钥库密码,可通过卷挂载这两个文件:
bashsudo docker run -p 4443:4443 -e EXTERNAL_SERVER_URL=[***] -e RUNDECK_WITH_SSL=true --name rundeck -t jordan/rundeck:latest
添加外部插件时,将JAR文件放入/opt/rundeck-plugins卷,容器启动时会自动复制到Rundeck的libext目录。
参考:[***]
入口点运行脚本会检查以下Docker密钥:RUNDECK_ADMIN_PASSWORD、RUNDECK_PASSWORD、DATABASE_ADMIN_PASSWORD、KEYSTORE_PASS和TRUSTSTORE_PASS。优先级为:密钥 > 环境变量 > 随机生成值。
SERVER_URL (已弃用 - 使用EXTERNAL_SERVER_URL) - 完整URL格式,如[***] EXTERNAL_SERVER_URL - 当Rundeck运行在代理后时使用,适用于通过外部网关/负载均衡器访问的场景。注意:rd-jobs和rd-projects等工具将无法使用,需使用新版rd命令行工具。 RDECK_JVM_SETTINGS - 传递给Rundeck JVM的额外参数(例如:-Xmx1024m -Xms256m -XX:MaxMetaspaceSize=256m -server -Dfile.encoding=UTF-8 -Dserver.web.context=/rundeck) DATABASE_DRIVER - 当使用MySQL/MariaDB或Postgres以外的数据库时,指定数据库驱动类名 DATABASE_URL - 用于外部数据库(例如:jdbc:mysql://<HOSTNAME>:<PORT>/rundeckdb) RUNDECK_UID - Rundeck启动时使用的Unix用户ID,适用于通过卷共享文件时的权限配置,需同时定义RUNDECK_GID。 RUNDECK_GID - Rundeck启动时使用的Unix组ID,适用于通过卷共享文件时的权限配置,需同时定义RUNDECK_UID。 RUNDECK_WITH_SSL - 启用SSL RUNDECK_USER - MySQL中'rundeck'用户的用户名 RUNDECK_PASSWORD - MySQL中'rundeck'用户的密码 RUNDECK_ADMIN_PASSWORD - Rundeck服务器管理员密码 RUNDECK_SERVER_UUID - 服务器UUID(在framework.properties中设置) RUNDECK_STORAGE_PASSWORD - 用于项目和密钥加密的密码(在rundeck-config.properties中设置) RUNDECK_STORAGE_PROVIDER - 存储提供器选项:db(默认)或file。注意:file存储可能在未来版本中弃用 RUNDECK_THREAD_COUNT - 并发执行作业的线程数,详见:[***] GUI_BRAND_HTML - 应用头部标题HTML,详见:[***]<span class="title">QA环境</span>' SMTP_HOST - 邮件通知使用的SMTP服务器主机 SMTP_PORT - 邮件通知使用的SMTP服务器端口 SMTP_USERNAME - SMTP认证用户名(如需) SMTP_PASSWORD - SMTP认证密码(如需) SMTP_DEFAULT_FROM - 邮件通知的发件人地址 DEBIAN_SYS_MAINT_PASSWORD - Debian Stretch及以上版本不再使用 NO_LOCAL_MYSQL - 默认false。设置为true以使用外部MySQL容器或实例,需同时设置DATABASE_URL和RUNDECK_PASSWORD(用于JDBC连接)。数据库设置详情:[***] LOGIN_MODULE - 登录模块:RDpropertyfilelogin(默认)或ldap,详见:[***] JAAS_CONF_FILE - 若使用ldap,指定ldap配置文件名,需将文件挂载到/etc/rundeck/<文件名>,详见:[***] SKIP_DATABASE_SETUP - 设置为true以跳过数据库设置(适用于数据库已配置或未知管理员密码的情况)
/etc/rundeck - Rundeck配置目录 /etc/locale.gen - 语言环境生成文件,列出的语言环境将被生成 /var/rundeck - Rundeck数据目录 /var/lib/rundeck - 不建议作为卷使用(包含webapp),SSH密钥可使用子目录/var/lib/rundeck/.ssh /var/lib/mysql - MySQL数据目录 /var/log/rundeck - Rundeck日志目录 /opt/rundeck-plugins - 用于添加外部插件 /var/lib/rundeck/logs - Rundeck日志存储 /var/lib/rundeck/var/storage - 存储数据 /var/lib/rundeck/projects - 项目数据
若在Web代理后运行Rundeck,使用以下命令:
bashsudo docker run -p 4440:4440 \ -e EXTERNAL_SERVER_URL=[***] \ -e HTTP_PROXY="[***]" \ -e HTTPS_PROXY="[***]" \ -e RDECK_JVM_SETTINGS="-Djava.net.useSystemProxies=true" \ --name rundeck -t jordan/rundeck:latest
容器默认启动内置MySQL/MariaDB实例,用于密钥存储和项目定义存储。如需使用外部数据库,配置如下:
NO_LOCAL_MYSQL=true RUNDECK_STORAGE_PASSWORD=<存储密码> DATABASE_URL=<MySQL或Postgres的JDBC URL> DATABASE_ADMIN_USER=<数据库管理员用户> DATABASE_ADMIN_PASSWORD=<数据库管理员密码> RUNDECK_PASSWORD=<rundeck数据库用户密码>
除选项1的环境变量外,额外设置:
SKIP_DATABASE_SETUP=true
若SCM设置在重启后丢失(详见:[] 和 []RUNDECK_SERVER_UUID环境变量在framework.properties中设置rundeck.server.uuid。可从系统报告页面获取服务器UUID:
rundeck.server.uuid = <当前Rundeck UUID>
详见:[***]
详见:[***]
admin/admin




manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务