Important: ZeroMQ is a messaging library, not a message broker or server. It is embedded directly into applications and does not run as a standalone service. This guide installs ZeroMQ development libraries.
sudo apt update
sudo apt install -y libzmq3-dev libzmq5
sudo dnf install -y zeromq-devel zeromq --enablerepo=epel
wget https://github.com/zeromq/libzmq/releases/download/v4.3.5/zeromq-4.3.5.tar.gz
tar -xzf zeromq-4.3.5.tar.gz
cd zeromq-4.3.5
./configure
make -j$(nproc)
sudo make install
sudo ldconfig
# Check installed version
pkg-config --modversion libzmq
# Expected output: 4.3.5 (or your installed version)
pip install pyzmq
npm install zeromq
go get github.com/pebbe/zmq4
Create a simple REQ-REP pattern:
# server.py (REP - responder)
import zmq
context = zmq.Context()
socket = context.socket(zmq.REP)
socket.bind("tcp://*:5555")
while True:
message = socket.recv()
print(f"Received: {message}")
socket.send(b"World")
# client.py (REQ - requester)
import zmq
context = zmq.Context()
socket = context.socket(zmq.REQ)
socket.connect("tcp://localhost:5555")
socket.send(b"Hello")
message = socket.recv()
print(f"Received: {message}")
See ZeroMQ Configuration for configuration guidance.
Any questions?
Feel free to contact us. Find all contact information on our contact page.
Prefer automation? See ZeroMQ Ansible Setup for an example playbook.
Prefer containers? See ZeroMQ Docker Setup.
See ZeroMQ Security for hardening guidance.