How to Install OpenCloud on Rocky Linux 8 Using Docker
OpenCloud is a modern self-hosted cloud platform that allows you to store, sync, and manage files securely through a web interface. It is designed to be lightweight, container-based, and easy to deploy using Docker. Many users install OpenCloud on VPS servers to create their own private cloud storage similar to popular online drive services.
This guide explains how to install OpenCloud on Rocky Linux 8 using Docker Compose with a simple and stable setup.
Prerequisites
-
Fresh Rocky Linux 8 server
-
Root or sudo access
-
Domain pointed to your server IP (example: opencloud.domainhere.info)
- Minimum 2 GB RAM recommended
Update the Server
Before installing anything, update all system packages to the latest versions and install the basic tools required for downloading and editing files.
dnf update -y
dnf install curl git nano -y
Install Docker
OpenCloud runs inside containers, so we first install Docker CE from the official Docker repository instead of the default AlmaLinux packages.
Add Docker CE repository,
dnf config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo
Install Docker engine along with Docker Compose v2 plugin which is required for OpenCloud deployment,
dnf install docker-ce docker-ce-cli containerd.io docker-compose-plugin -y
Enable and start the Docker service so containers can run automatically,
systemctl enable --now docker
Verify that Docker and Docker Compose are installed correctly.
docker --version
docker compose version
Output:
[root@vps opencloud-compose]# docker --version
Docker version 29.2.1, build a5c7197
[root@vps opencloud-compose]# docker compose version
Docker Compose version v5.0.2
[root@vps opencloud-compose]#
Clone OpenCloud Compose Repository
Next, download the official OpenCloud deployment files from GitHub. These files contain all container configurations required to run the platform.
cd /root
git clone https://github.com/opencloud-eu/opencloud-compose.git
cd opencloud-compose
Output:
[root@vps ~]# cd /root
git clone https://github.com/opencloud-eu/opencloud-compose.git
Cloning into 'opencloud-compose'...
remote: Enumerating objects: 867, done.
remote: Counting objects: 100% (408/408), done.
remote: Compressing objects: 100% (223/223), done.
remote: Total 867 (delta 353), reused 185 (delta 185), pack-reused 459 (from 1)
Receiving objects: 100% (867/867), 420.17 KiB | 4.38 MiB/s, done.
Resolving deltas: 100% (447/447), done.
Configure Environment Variables.
OpenCloud uses an environment file to define the domain name and admin credentials. Create the configuration file from the example template.
cp .env.example .env
nano .env
Modify only the following values according to your setup.
OC_DOMAIN=opencloud.domainhere.info
INITIAL_ADMIN_PASSWORD=StrongPassword123!
Note: Replace opencloud.domainhere.info and password with actual Domain and Strong Password
Configure Firewall
AlmaLinux uses firewalld by default which blocks web traffic. Allow HTTP and HTTPS so your OpenCloud site can be accessed from a browser.
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --reload
Deploy OpenCloud Containers
Start all OpenCloud services in the background using Docker Compose. This will automatically pull images and create containers.
docker compose -f docker-compose.yml -f traefik/opencloud.yml up -d
Check whether containers are running successfully.
docker ps
Output:
[root@vps opencloud-compose]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
5adcc892081d traefik:v3.6.7 "/bin/sh /opt/traefi…" 2 hours ago Up 2 hours 0.0.0.0:80->80/tcp, [::]:80->80/tcp, 0.0.0.0:443->443/tcp, [::]:443->443/tcp opencloud-compose-traefik-1
f6b19dd7fa5f opencloudeu/opencloud-rolling:latest "/bin/sh -c 'openclo…" 2 hours ago Up 2 hours 9200/tcp opencloud-compose-opencloud-1
[root@vps opencloud-compose]#
Access OpenCloud Web Interface
Once deployment completes, open your browser and navigate to your configured domain.
http://opencloud.domainhere.info
Note: Replace opencloud.domainhere.info with actual domain name
Login Details
Username: admin
Password: Value set in .env

After login, you will first see the login page and then a redirect to the OpenCloud dashboard once initialization finishes.

You'll see the Dashboard as below.

Conclusion
You have successfully installed OpenCloud on Rocky Linux 8 using Docker Compose. Your private cloud platform should now be accessible securely via your configured domain.
CrownCloud - Get a SSD powered KVM VPS at $4.5/month!
Use the code WELCOME for 10% off!
1 GB RAM / 25 GB SSD / 1 CPU Core / 1 TB Bandwidth per month
Available Locations: LAX | MIA | ATL | FRA | AMS