
armyguy255a/openfire该Docker镜像提供Openfire的容器化版本,Openfire是一款实时协作(RTC)服务器。它展示了如何容器化应用,使微服务部署变得简单,无需依赖完整的服务器环境。
本镜像可直接使用,也可作为基础镜像进行进一步定制。通过容器化Openfire,您可以快速启动实例并将其整合到更大的基础设施中。
如需构建未经修改的默认镜像:
bashgit clone [***] cd openfire docker build -t armyguy255a/openfire .
包含一个高级build.ps1 PowerShell脚本,用于自动化构建并将镜像推送到仓库。该脚本与Git集成,支持参数化构建。
使用build.ps1:
powershell.\build.ps1 -RemoteRegistry "armyguy255a/openfire" -PushToRegistry $true
此命令将构建Docker镜像并推送到指定的远程仓库。
使用默认设置启动容器:
bashdocker run -d \ -p 5222:5222 \ -p 5223:5223 \ -p 5262:5262 \ -p 5269:5269 \ -p 5270:5270 \ -p 5275:5275 \ -p 5276:5276 \ -p 7070:7070 \ -p 7443:7443 \ -p 7777:7777 \ -p 9090:9090 \ -p 9001:9001 \ --name openfire \ -v openfire-data:/usr/share/openfire \ armyguy255a/openfire:4.9.0
也可使用提供的run.ps1脚本以预定义设置启动容器:
powershell.\run.ps1
您可以将此Openfire镜像用作基础来构建自定义容器。这在需要添加插件、配置或其他依赖项时特别有用。
要将此镜像用作基础,请在项目中创建Dockerfile,并指定armyguy255a/openfire作为基础镜像。示例如下:
dockerfileFROM armyguy255a/openfire:4.9.0 # 安装额外插件或依赖项 COPY custom-plugin.jar /usr/share/openfire/plugins/ # 添加自定义配置 COPY openfire.xml /usr/share/openfire/conf/openfire.xml # 根据需要定义额外的环境变量或卷 ENV MY_CUSTOM_SETTING=value # 切换到openfire用户 USER openfire # 暴露端口 EXPOSE 9090 9091 5222 5223 5269 5270 5262 7070 7443 80 443 5275 5276 7777 # 设置入口点 ENTRYPOINT ["/usr/share/openfire/entrypoint.sh"]
构建自定义镜像:
bashdocker build -t my-custom-openfire .
如需添加启动逻辑或管理额外服务,可创建entrypoint.sh脚本:
bash#!/bin/bash # 用于额外配置的自定义启动脚本 # 启动Openfire exec /usr/share/openfire/entrypoint.sh
确保将脚本设置为可执行并复制到容器中。
为在容器重启间保留数据和配置,容器将openfire-data卷挂载到/usr/share/openfire。这使Openfire能够存储持久数据,例如:
bashdocker run -d \ -v openfire-data:/usr/share/openfire \ armyguy255a/openfire:4.9.0
该容器支持Docker健康检查。要检查健康状态,可在Docker Compose或部署配置中添加以下内容:
yamlhealthcheck: test: ["CMD", "curl", "-f", "http://localhost:9090"] interval: 1m timeout: 10s retries: 3
欢迎Fork仓库并通过提交拉取请求进行贡献。改进功能、可用性或稳定性的贡献将被优先考虑。
本项目采用MIT许可证。详情参见LICENSE文件。
manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务