Jan 3, 2024 4 min read

How to Install Zulip on Ubuntu 20.04

Install Zulip on Ubuntu 20.04 with our step-by-step tutorial. It is a team communication and collaboration tool designed to enhance productivity.

Install Zulip on Ubuntu 20.04
Install Zulip on Ubuntu 20.04
Table of Contents

Choose a different version or distribution


Before we begin talking about how to install Zulip on Ubuntu 20.04, let’s briefly understand – What is Zulip?

Zulip is a powerful team communication and collaboration tool designed to enhance productivity and streamline discussions. It offers a unique threading model that organizes conversations into topics, ensuring clarity and preventing information overload.

With features like real-time messaging, file sharing, and integrations with popular apps, Zulip helps teams stay connected and work efficiently. Whether you're a small business or a large enterprise, Zulip is the ideal solution to foster effective teamwork and foster project success.

In this tutorial, you’ll install Zulip on Ubuntu 20.04. Also, we will answer some FAQs regarding the Zulip installation.

Advantages of Zulip

  1. Threading model: Zulip's organized conversation threads ensure clarity and prevent information overload.
  2. Real-time messaging: Instant communication for rapid decision-making and enhanced collaboration.
  3. File sharing: Effortlessly exchange documents, images, and more within the platform.
  4. Integrations: Seamlessly connect with popular apps and streamline workflow.
  5. Productivity boost: Zulip's features promote efficient teamwork, making it a top choice for businesses of all sizes.

Prerequisites to Install Zulip on Ubuntu 20.04

  • Ubuntu 20.04 64-bit Operating System


Step 1 - Download the Current Release

Firstly, download the latest built server tarball and unpack it with the following commands:

cd $(mktemp -d)
wget https://www.zulip.org/dist/releases/zulip-server-latest.tar.gz
tar -xf zulip-server-latest.tar.gz

Step 2 - Install Zulip

After that, run the installer as follows to set up Zulip with the most familiar configuration.

sudo -s  # If not already root
./zulip-server-*/scripts/setup/install --certbot \
    --email=YOUR_EMAIL --hostname=YOUR_HOSTNAME

It might take a few minutes to install, as it also installs Zulip’s dependencies.

If faced an error due to certbot / letsencrypt then try to fix it with the following commands:

sudo apt update && sudo apt install --only-upgrade python3-acme
sudo certbot renew --dry-run

And re-run the zulip installer:

sudo -s  # If not already root
./zulip-server-*/scripts/setup/install --certbot \
    --email=YOUR_EMAIL --hostname=YOUR_HOSTNAME
If the problem still persists please check the logs using the following command cat /var/log/letsencrypt/letsencrypt.log

Step 3 - Create a Zulip Organization and Login

1) After a successful installation, the script prints a link. You have to stop here and return to data instructions if you are importing your data from HipChat, Slack, or another Zulip server.

Otherwise, log in after setting up your organization and your own user account as an administrator by opening a link in a browser. This link is a one-time-use link. By using the below command on the server you can generate a new link.

su zulip -c '/home/zulip/deployments/current/manage.py generate_realm_creation_link'

2) If you can't access your page, open  /etc/zulip/settings.py  and in ALLOWED_HOSTS just add your IP address and domain:


ALLOWED_HOSTS = ["zulip-alias.example.com", "", "your_public_ip", "your_domain.com"]


After making the changes just restart the zulip using the following command and generate a new link:

su zulip -c /home/zulip/deployments/current/scripts/restart-server

su zulip -c '/home/zulip/deployments/current/manage.py generate_realm_creation_link'

3) If still you can't access the page then it might be a domain issue, just change the EXTERNAL_HOST from your domain name to your public IP:


EXTERNAL_HOST = 'your_public_ip'


Restart the Zulip again after saving the changes and generate a new link:

su zulip -c /home/zulip/deployments/current/scripts/restart-server

su zulip -c '/home/zulip/deployments/current/manage.py generate_realm_creation_link'
Please check the server.log if getting issues rather than above mentioned using the command su zulip -c 'cat /var/log/zulip/server.log'

Step 4 - Configure and Use Zulip

Firstly, to unleash Zulip's potential, you have to start using it with your team.

1) Set up an outgoing email so that Zulip can confirm new users' email addresses and send notifications.

FAQs to Install Zulip on Ubuntu 20.04

Is Zulip compatible with Ubuntu 20.04?

Yes, Zulip supports Ubuntu 20.04, along with other major operating systems.

What are the system requirements for Zulip on Ubuntu 20.04?

Zulip requires a server with at least 4GB of RAM and 2 CPU cores for smooth performance on Ubuntu 20.04.

Can I install Zulip on a shared hosting server?

Zulip is not recommended for shared hosting due to resource requirements. A VPS or dedicated server is preferred.

Does Zulip installation on Ubuntu 20.04 include database setup?

Yes, Zulip installation includes configuring and setting up a PostgreSQL database.

Are there any security considerations during installation?

Yes, ensure to use a secure password for the Zulip database and consider enabling SSL for added security.

Can I integrate Zulip with other apps on Ubuntu 20.04?

Absolutely, Zulip offers integrations with various third-party apps to streamline workflow.

How do I access the Zulip web interface after installation?

Access the web interface by entering the server's IP or domain in your browser followed by the Zulip port number.


We hope this simple tutorial helped you understand how to install Zulip on your Ubuntu 20.04 machine. Click here to read more about Zulip.

If you have any queries, please leave a comment below, and we’ll be happy to respond to them for sure.

Great! You’ve successfully signed up.
Welcome back! You've successfully signed in.
You've successfully subscribed to DevOps Tutorials - VegaStack.
Your link has expired.
Success! Check your email for magic link to sign-in.
Success! Your billing info has been updated.
Your billing was not updated.