Open the server Apps tab
Select the tutorial-vps VPS, open the Apps tab, and start a new app deployment. Keep sensitive server details hidden before capturing or sharing screenshots.


Distributed event streaming platform with KRaft mode (no Zookeeper)
Add your server credentials to Server Compass
Choose from our template library
Fill in settings and click Deploy
Use the Apache Kafka template in Server Compass to deploy a fast distributed event streaming platform on your VPS, then verify the Kafka CLI topic command.
Select the tutorial-vps VPS, open the Apps tab, and start a new app deployment. Keep sensitive server details hidden before capturing or sharing screenshots.

Click New App and choose the template deployment path so Server Compass can load the built-in catalog.

Use the template picker search to find Apache Kafka in the Server Compass template catalog.

Choose the Apache Kafka template. Server Compass fills the Kafka container, persistent data volume, broker port, and advertised listener host.

Confirm the app name and compose service. In this run, the app was named kafka-demo and used host port 9092.

Review the generated environment values, confirm the Kafka broker port is available, and click Deploy Now.

Keep the deployment modal open while Server Compass uploads the compose file, pulls the Apache Kafka image, starts the container, and verifies the stack.

After deployment finishes, return to the Apps tab and confirm the Apache Kafka app is marked Running with the broker port available.

Open the app detail view and verify the running Apache Kafka container. In this tutorial run, the Kafka CLI topic command reported that Apache Kafka was ready.

The Kafka CLI created and listed a tutorial verification topic through the local broker.
It deploys an Apache Kafka container in KRaft mode with a persistent data volume and an externally advertised broker listener.
The tutorial used host port 9092, which maps to the Kafka broker port 9092.
Apache Kafka exposes a broker endpoint rather than a conventional browser app. The tutorial verifies it with the Kafka CLI topic command.
No. The deployment guide should live on the Apache Kafka template detail page and be linked from the reusable template deployment docs page.
Prefer the command line? Follow this step-by-step guide to deploy Apache Kafka manually on your VPS.
Start by opening a terminal window and connecting to your VPS via SSH.
# Connect to your VPS
ssh root@your-server-ip
# Or with a specific SSH key
ssh -i ~/.ssh/your-key root@your-server-ipFirst time? Docker required! Install it with: curl -fsSL https://get.docker.com | sh
Create a dedicated space for your application deployment.
# Create and navigate to project directory
mkdir -p ~/apps/kafka
cd ~/apps/kafkaCreate a docker-compose.yml file with the following configuration:
services:
kafka:
image: apache/kafka:latest
ports:
- "9092:9092"
environment:
- KAFKA_NODE_ID=1
- KAFKA_PROCESS_ROLES=broker,controller
- KAFKA_LISTENERS=PLAINTEXT://:9092,CONTROLLER://:9093
- KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://localhost:9092
- KAFKA_CONTROLLER_LISTENER_NAMES=CONTROLLER
- KAFKA_LISTENER_SECURITY_PROTOCOL_MAP=CONTROLLER:PLAINTEXT,PLAINTEXT:PLAINTEXT
- KAFKA_CONTROLLER_QUORUM_VOTERS=1@localhost:9093
- KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR=1
- KAFKA_TRANSACTION_STATE_LOG_REPLICATION_FACTOR=1
- KAFKA_TRANSACTION_STATE_LOG_MIN_ISR=1
- KAFKA_LOG_DIRS=/var/lib/kafka/data
volumes:
- kafka_data:/var/lib/kafka/data
restart: unless-stopped
volumes:
kafka_data:
PORTKafka port(default: 9092)Deploy the stack and monitor the startup process.
# Spin up containers
docker compose up -d
# Verify deployment
docker compose ps
# Check logs for errors
docker compose logs -fSet up firewall rules to permit incoming connections.
# Allow the application port through firewall
sudo ufw allow 9092/tcp
sudo ufw reload
# Access your app at:
# http://your-server-ip:9092Deploy Apache Kafka with a beautiful UI instead. No SSH, no YAML editing, no terminal commands. Just click, configure, and deploy in under 3 minutes.
After deploying Apache Kafka with Server Compass, complete these steps to finish setup
Create topics
Test with kafka-console-producer and kafka-console-consumer
Configure retention policies
Need help? Check out our documentation for detailed guides.
Common questions about self-hosting Apache Kafka
Simply download Server Compass, connect to your VPS, and select Apache Kafka from the templates list. Fill in the required configuration and click Deploy. The entire process takes under 3 minutes.
Apache Kafka requires a minimum of 1024MB RAM. We recommend a VPS with at least 2048MB RAM for optimal performance. Any modern Linux server with Docker support will work.
Yes! Server Compass provides volume mapping that allows you to import existing data. You can also use standard Apache Kafka backup and restore procedures.
Server Compass makes updates easy. Simply click the Update button in your deployment dashboard, and the latest Apache Kafka image will be pulled and deployed with zero downtime.
Apache Kafka is open-source software. You only pay for your VPS hosting (typically $5-20/month) and optionally Server Compass ($29 one-time). No subscription fees or per-seat pricing.
Download Server Compass and deploy Apache Kafka to your VPS in under 3 minutes. No Docker expertise required.
Download Server Compass