Homebrew RabbitMQ 公式
概述
Homebrew 是 macOS 和 Linux 上流行的软件包管理器。RabbitMQ 公式可从 Homebrew 核心库(开箱即用)中获取。该公式由 Homebrew 社区维护,而非 RabbitMQ 团队。
安装时会自动安装最新且受支持的 Erlang/OTP 版本作为依赖。
请从头至尾阅读此简短指南。该公式存在一些注意事项,由于禁用了稳定的功能标志(feature flags),其中一些可能导致节点无法升级到 RabbitMQ 3.12 及更高版本。
安装
在安装之前,请确保软件库(taps)是最新的
brew update
然后,使用以下命令安装 RabbitMQ 服务器
brew install rabbitmq
安装 RabbitMQ 公式将会安装关键依赖,例如受支持的 Erlang/OTP 版本。
但是,安装此公式不会启动服务(RabbitMQ 节点)。请参阅下方的运行和管理节点。
位置
RabbitMQ 服务器脚本和 CLI 工具均安装在 Intel Mac 的 /usr/local/Cellar/rabbitmq/{version}/ 或 Apple Silicon Mac 的 /opt/homebrew/Cellar/rabbitmq/{version}/ 下的 sbin 目录中。
它们应可通过 Intel Mac 的 /usr/local/opt/rabbitmq/sbin 或 Apple Silicon Mac 的 /opt/homebrew/opt/rabbitmq/sbin 访问。指向二进制文件的链接已创建在 Intel Mac 的 /usr/local/sbin 或 Apple Silicon Mac 的 /opt/homebrew/sbin 下。
要查找安装位置,请使用
brew info rabbitmq
有效的操作系统用户
使用 Homebrew,节点和 CLI 工具默认将使用当前登录的操作系统用户帐户。这对于开发环境是最佳的,并且意味着 RabbitMQ 节点和 CLI 工具都使用相同的共享密钥文件。
运行和管理节点
与其他一些安装方法(如 Debian 和 RPM 软件包)不同,RabbitMQ Homebrew 公式使用通用 UNIX 二进制构建,不需要 sudo。
启动服务器
在前台启动节点
要从前台启动节点,请运行
CONF_ENV_FILE="/opt/homebrew/etc/rabbitmq/rabbitmq-env.conf" /opt/homebrew/opt/rabbitmq/sbin/rabbitmq-server
启动节点后,我们建议在上面启用所有功能标志
# highly recommended: enable all feature flags on the running node
/opt/homebrew/sbin/rabbitmqctl enable_feature_flag all
在后台启动节点
要在后台启动节点,请使用 brew services start
# starts a local RabbitMQ node
brew services start rabbitmq
# highly recommended: enable all feature flags on the running node
/opt/homebrew/sbin/rabbitmqctl enable_feature_flag all
停止服务器
要停止正在运行的节点,请使用
# stops the locally running RabbitMQ node
brew services stop rabbitmq
或直接使用 CLI 工具
/opt/homebrew/sbin/rabbitmqctl shutdown
该命令将等待节点进程停止。如果目标节点未运行,它将退出并显示警告。
在 Homebrew 中使用 RabbitMQ CLI 工具
该公式在 Intel Mac 的 /usr/local/sbin 或 Apple Silicon Mac 的 /opt/homebrew/sbin 下设置了指向 CLI 工具的链接。
如果该目录不在 PATH 中,建议将其附加到 PATH 中
# for macOS Intel
export PATH=$PATH:/usr/local/sbin
# for Apple Silicon
export PATH=$PATH:/opt/homebrew/sbin
将上述 export 添加到 shell 配置文件(例如 bash 的 ~/.bashrc 或 zsh 的 ~/.zshrc),以便为每个新的 shell(包括操作系统重启)更新 PATH。
启用功能标志
Homebrew 公式在安装后不会自动启用功能标志。要在安装后启用所有功能标志(这对于获取某些特定功能以及未来版本的兼容性非常重要),请使用
/opt/homebrew/sbin/rabbitmqctl enable_feature_flag all
配置 Homebrew 安装的 RabbitMQ 节点
Homebrew 使用的文件和目录位置因 Intel Mac 和 Apple Silicon Mac 而异。要查找您的安装位置,请使用
brew info rabbitmq
在 Apple Silicon Mac 上,RabbitMQ 配置文件位于 /opt/homebrew/etc/rabbitmq/rabbitmq.conf。该文件默认不存在,必须由用户创建。然后必须重启节点,以便它在启动时读取新的配置文件。
可以使用环境变量来控制某些设置。rabbitmq-env.conf 位于 /opt/homebrew/etc/rabbitmq/rabbitmq-env.conf
请参阅 RabbitMQ 配置指南以了解更多信息。
重新安装公式
要重新安装公式(例如,如果旧版本无法升级,因为它没有主动启用所有功能标志),请卸载它,然后删除所有节点数据文件
brew services stop rabbitmq
brew uninstall rabbitmq
# Now delete all node's data directories and configuration files.
# This assumes that Homebrew root is at /opt/homebrew
rm -rf /opt/homebrew/etc/rabbitmq/
rm -rf /opt/homebrew/opt/rabbitmq/
rm -rf /opt/homebrew/var/lib/rabbitmq/
# the launch agent file
rm -f $HOME/Library/LaunchAgents/homebrew.mxcl.rabbitmq.plist
# If the above steps fail with
# Error: No such file or directory - /opt/homebrew/var/homebrew/linked/rabbitmq
#
# consider trying
brew doctor
brew cleanup
# re-install
brew install rabbitmq
## start the service if necessary
# brew services start rabbitmq
## after starting the service, enable all feature flags
# /opt/homebrew/sbin/rabbitmqctl enable_feature_flag all