一、安装依赖
编译 Erlang 需要以下依赖库和工具:
sudo apt update
sudo apt install -y build-essential autoconf libncurses5-dev libssl-dev m4 unixodbc-dev libwxgtk3.0-gtk3-dev libgl1-mesa-dev libglu1-mesa-dev
二、解压源码包
tar -xzvf otp_src_21.3.tar.gz
cd otp_src_21.3
三、配置编译选项
mkdir -p /usr/local/erlang 创建目录
./configure --prefix=/usr/local/erlang --enable-smp-support --enable-threads --enable-kernel-poll --with-ssl
参数:
--prefix=/usr/local/erlang:设定安装目录
--enable-smp-support:支持多核处理器
--with-ssl:启用 SSL/TLS 支持
四、编译与安装
make -j$(nproc) # 并行编译(nproc为CPU核心数)
sudo make install # 安装到指定目录
五、配置环境变量
sudo nano /etc/profile 添加
export PATH=/usr/local/erlang/bin:$PATH
source /etc/profile 重新加载
六、验证安装
erl -version
# 或直接运行 erl,输入 halt(). 退出
方式二:通过Ubuntu仓库安装
Ubuntu仓库提供的版本可能较旧(如3.8.x),但安装简单,适合快速验证功能
一、安装Erlang
sudo apt install erlang # 自动安装Erlang及其依赖
二、安装RabbitMQ
sudo apt install rabbitmq-server # 安装RabbitMQ服务端
三、验证安装
systemctl status rabbitmq-server # 检查服务状态是否为active
四、添加用户
添加用户
配置权限
查看用户权限
设置tag
rabbitmqctl add_user admin mq.admin
rabbitmqctl set_permissions -p "/" admin ".*" ".*" ".*"
rabbitmqctl list_user_permissions admin
rabbitmqctl set_user_tags admin administrator
方式三:通过官方仓库安装
官方仓库提供最新版本(如4.x),需手动配置仓库并安装
1.安装依赖工具
sudo apt install curl gnupg apt-transport-https -y # 下载工具
2.添加GPG密钥与仓库
# 导入RabbitMQ密钥
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
# 配置仓库文件
sudo tee /etc/apt/sources.list.d/rabbitmq.list <<EOF
deb [arch=amd64] https://ppa1.rabbitmq.com/rabbitmq-server/deb/ubuntu $(lsb_release -sc) main
EOF
3.安装Erlang与RabbitMQ
sudo apt install erlang-base erlang-asn1 erlang-ssl # 安装Erlang核心组件
sudo apt install rabbitmq-server # 安装最新版RabbitMQ
4.基础配置与验证
启用Web管理插件
sudo rabbitmq-plugins enable rabbitmq_management # 启动管理界面
访问地址:http://服务器IP:15672
(默认账户:guest/guest
,仅限本地访问)
创建管理员用户
# 添加用户并设置管理员权限
sudo rabbitmqctl add_user admin admin
sudo rabbitmqctl set_user_tags admin administrator # 赋予管理员角色
# 启动/停止服务
sudo systemctl start rabbitmq-server # 启动
sudo systemctl stop rabbitmq-server # 停止
# 启用开机自启
sudo systemctl enable rabbitmq-server
ok。
遇到问题:
1. 端口访问失败
检查防火墙:确保15672(管理端口)与5672(AMQP端口)已放行。
sudo ufw allow 15672/tcp # 放行端口