Ubuntu24.04/CentOS7 安装 RabbitMQ + Erlang/OTP

Ubuntu24.04 + Erlang/OTP26 + RabbitMQ 4.0

apt install curl gnupg apt-transport-https -y

## Team RabbitMQ's main signing key
curl -1sLf "https://keys.openpgp.org/vks/v1/by-fingerprint/0A9AF2115F4687BD29803A206B73A36E6026DFCA" | sudo gpg --dearmor | sudo tee /usr/share/keyrings/com.rabbitmq.team.gpg > /dev/null
## Community mirror of Cloudsmith: modern Erlang repository
curl -1sLf https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-erlang.E495BB49CC4BBE5B.key | sudo gpg --dearmor | sudo tee /usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg > /dev/null
## Community mirror of Cloudsmith: RabbitMQ repository
curl -1sLf https://github.com/rabbitmq/signing-keys/releases/download/3.0/cloudsmith.rabbitmq-server.9F4587F226208342.key | sudo gpg --dearmor | sudo tee /usr/share/keyrings/rabbitmq.9F4587F226208342.gpg > /dev/null


## Add apt repositories maintained by Team RabbitMQ

tee /etc/apt/sources.list.d/rabbitmq.list <<EOF
deb [arch=amd64 signed-by=/usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg] https://ppa1.rabbitmq.com/rabbitmq/rabbitmq-erlang/deb/ubuntu noble main
deb-src [signed-by=/usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg] https://ppa1.rabbitmq.com/rabbitmq/rabbitmq-erlang/deb/ubuntu noble main
deb [arch=amd64 signed-by=/usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg] https://ppa2.rabbitmq.com/rabbitmq/rabbitmq-erlang/deb/ubuntu noble main
deb-src [signed-by=/usr/share/keyrings/rabbitmq.E495BB49CC4BBE5B.gpg] https://ppa2.rabbitmq.com/rabbitmq/rabbitmq-erlang/deb/ubuntu noble main
deb [arch=amd64 signed-by=/usr/share/keyrings/rabbitmq.9F4587F226208342.gpg] https://ppa1.rabbitmq.com/rabbitmq/rabbitmq-server/deb/ubuntu noble main
deb-src [signed-by=/usr/share/keyrings/rabbitmq.9F4587F226208342.gpg] https://ppa1.rabbitmq.com/rabbitmq/rabbitmq-server/deb/ubuntu noble main
deb [arch=amd64 signed-by=/usr/share/keyrings/rabbitmq.9F4587F226208342.gpg] https://ppa2.rabbitmq.com/rabbitmq/rabbitmq-server/deb/ubuntu noble main
deb-src [signed-by=/usr/share/keyrings/rabbitmq.9F4587F226208342.gpg] https://ppa2.rabbitmq.com/rabbitmq/rabbitmq-server/deb/ubuntu noble main
EOF

## Update package indices
apt update -y

## Install Erlang packages
apt install -y erlang-base erlang-asn1 erlang-crypto erlang-eldap erlang-ftp erlang-inets erlang-mnesia erlang-os-mon erlang-parsetools erlang-public-key erlang-runtime-tools erlang-snmp erlang-ssl erlang-syntax-tools erlang-tftp erlang-tools erlang-xmerl

## Install rabbitmq-server and its dependencies
apt install rabbitmq-server -y --fix-missing #安装完自动启动

systemctl status rabbitmq-server

CentOS7 + Erlang/OTP 25.3.2.15 + RabbitMQ v3.12.13

https://v3-12.rabbitmq.com/install-generic-unix.html

RabbitMQ v3.12.13
https://github.com/rabbitmq/rabbitmq-server/releases/download/v3.12.13/rabbitmq-server-generic-unix-3.12.13.tar.xz

Erlang/OTP v25.3.2.15
https://github.com/erlang/otp/releases/download/OTP-25.3.2.15/otp_src_25.3.2.15.tar.gz

yum install -y ncurses-devel
yum install -y openssl openssl-devel


cd /opt #将包上传或下载到/opt下
tar zxf otp_src_25.3.2.15.tar.gz
tar Jxf rabbitmq-server-generic-unix-3.12.13.tar.xz


#编译安装Erlang/OTP
cd /opt/otp_src_25.3.2.15
./configure
echo $?
make
echo $?
make install
echo $?

#erl命令路径
ls -l /usr/local/bin/erl

#RabbitMQ不需编译安装
#PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin

export RABBIT_HOME=/opt/rabbitmq_server-3.12.13
export PATH=$RABBIT_HOME/sbin:$PATH

rabbitmq-server #前台启动测试一下有无报错
rabbitmq-server -detached #确认没有报错后,选择后台运行

安装完成后的操作

rabbitmqctl status # Only root or rabbitmq can run rabbitmqctl
#rabbitmqctl shutdown

#创建管理员并授权
rabbitmqctl list_users
rabbitmqctl add_user admin passw0rd #新增用户(设置账号、密码)
rabbitmqctl set_user_tags  admin administrator
rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
rabbitmqctl list_permissions

#启用web控制台插件
rabbitmq-plugins list
rabbitmq-plugins enable rabbitmq_management

#浏览器打开 http://192.168.x.x:15672
#输入 admin passw0rd

补充:可能遇到的情况

提示crypto库找不到

原因是在编译Erlang时crypto依赖的openssl库没找到。

 {"init terminating in do_boot",{error,{crypto,{"no such file or directory","crypto.app"}}}}
init terminating in do_boot ({error,{crypto,{no such file or directory,crypto.app}}})

需安装 openssll openssl-devel,重新编译安装Erlang。

yum install -y openssl openssl-devel
cd /opt/otp_src_25.3.2.15
make clean
./configure
make
make install

如果选择编译安装rabbitmq,可能会遇到以下报错:

rabbitmqctl on Elixir v1.17.3 but it has declared in its mix.exs file it supports only Elixir >= 1.13.4 and < 1.17.0

需安装Elixir v1.16.3 (对应Erlang25)
https://github.com/elixir-lang/elixir/releases/download/v1.16.3/elixir-otp-25.zip

#检查
export PATH=/opt/elixir-otp/bin/:$PATH
elixir -v
posted @   M1927  阅读(52)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示