islandora/activemq本镜像为ActiveMQ 5.19.0版本的Docker化部署包,基于Islandora-DevOps/isle-buildkit activemq项目构建。ActiveMQ是一款开源的企业级消息代理(Message Broker),支持多种消息协议,提供可靠的异步消息传递能力,适用于分布式系统间的通信解耦。
通过以下命令可快速启动ActiveMQ实例,默认启用Web控制台(http://localhost:8161),默认登录凭据为admin/password:
bashdocker run --rm -ti -p 8161:8161 islandora/activemq
注意:若未配置凭据(环境变量),将无法登录Web控制台。
bashdocker run -d \ --name activemq \ -p 1883:1883 \ # MQTT协议端口 -p 5672:5672 \ # AMQP协议端口 -p 8161:8161 \ # Web控制台端口 -p 61613:61613 \ # STOMP协议端口 -p 61614:61614 \ # WS协议端口 -p 61616:61616 \ # OpenWire协议端口 -v activemq-data:/opt/activemq/data \ # 挂载消息存储卷 -e ACTIVEMQ_USER=admin \ # 消息服务用户名 -e ACTIVEMQ_PASSWORD=Secure@123 \ # 消息服务密码 -e ACTIVEMQ_LOG_LEVEL=DEBUG \ # 日志级别设为DEBUG islandora/activemq
yamlversion: '3.8' services: activemq: image: islandora/activemq container_name: activemq restart: always ports: - "8161:8161" # Web控制台 - "61616:61616" # OpenWire主力协议 - "1883:1883" # MQTT物联网协议 - "5672:5672" # AMQP协议 volumes: - activemq-data:/opt/activemq/data # 持久化消息存储 environment: - ACTIVEMQ_USER=admin - ACTIVEMQ_PASSWORD=Secure@123 - ACTIVEMQ_WEB_ADMIN_PASSWORD=Secure@123 # Web控制台密码 - ACTIVEMQ_LOG_LEVEL=INFO # 常规日志级别 - ACTIVEMQ_AUDIT_LOG_LEVEL=WARN # 审计日志级别 volumes: activemq-data: # 定义命名卷,确保数据持久化
| 端口 | 描述 | 协议/服务 |
|---|---|---|
| 1883 | MQTT协议端口 | MQTT |
| 5672 | AMQP协议端口 | AMQP |
| 8161 | Web控制台端口 | WebConsole |
| 61613 | STOMP协议端口 | STOMP |
| 61614 | WebSocket端口 | WS |
| 61616 | OpenWire协议端口 | OpenWire |
| 路径 | 描述 | 用途 |
|---|---|---|
/opt/activemq/data | 消息存储目录 | AMQ Message Store,用于持久化消息数据 |
| 环境变量 | 默认值 | 描述 |
|---|---|---|
ACTIVEMQ_AUDIT_LOG_LEVEL | INFO | 审计日志级别,可选值:OFF、FATAL、ERROR、WARN、INFO、DEBUG、TRACE、ALL |
ACTIVEMQ_LOG_LEVEL | INFO | 常规日志级别,可选值同上 |
ACTIVEMQ_PASSWORD | password | 消息服务默认用户密码(对应credentials.properties) |
ACTIVEMQ_USER | admin | 消息服务默认用户名(对应credentials.properties) |
ACTIVEMQ_WEB_ADMIN_NAME | admin | Web控制台管理员用户名(对应jetty-realm.properties) |
ACTIVEMQ_WEB_ADMIN_PASSWORD | password | Web控制台管理员密码(对应jetty-realm.properties) |
ACTIVEMQ_WEB_ADMIN_ROLES | admin | Web控制台管理员角色(对应jetty-realm.properties) |
可通过环境变量扩展用户、组及Web控制台用户,遵循以下命名规则:
| 环境变量格式 | 描述 | 对应配置文件 |
|---|---|---|
ACTIVEMQ_USER_{USER}_NAME | 消息服务用户名称({USER}为自定义标识) | users.properties |
ACTIVEMQ_USER_{USER}_PASSWORD | 消息服务用户密码 | users.properties |
ACTIVEMQ_GROUP_{GROUP}_NAME | 用户组名称({GROUP}为自定义标识) | groups.properties |
ACTIVEMQ_GROUP_{GROUP}_MEMBERS | 用户组成员(逗号分隔用户名) | groups.properties |
ACTIVEMQ_WEB_USER_{USER}_NAME | Web控制台用户名称 | jetty-realm.properties |
ACTIVEMQ_WEB_USER_{USER}_PASSWORD | Web控制台用户密码 | jetty-realm.properties |
ACTIVEMQ_WEB_USER_{USER}_ROLES | Web控制台用户角色(逗号分隔) | jetty-realm.properties |
示例:添加Web控制台用户operator(角色viewer):
bash-e ACTIVEMQ_WEB_USER_OPERATOR_NAME=operator \ -e ACTIVEMQ_WEB_USER_OPERATOR_PASSWORD=operator123 \ -e ACTIVEMQ_WEB_USER_OPERATOR_ROLES=viewer
ACTIVEMQ_LOG_LEVEL控制级别。ACTIVEMQ_AUDIT_LOG_LEVEL控制级别。日志级别按优先级从高到低为:OFF > FATAL > ERROR > WARN > INFO > DEBUG > TRACE > ALL。默认级别为INFO,可通过环境变量调整(如设为DEBUG用于问题排查)。

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