UnluckyTECH

CloudPanel & Digital Ocean



In this guide, we’ll walk through the process of installing and configuring CloudPanel on DigitalOcean. With CloudPanel, you can efficiently manage multiple websites using a single interface equipped with essential day-to-day maintenance tools.

Required Services

The Plan

Flowchart

We’ll start by purchasing a domain from PorkBun and direct it to Cloudflare for DNS management. Then, we’ll create a droplet on DigitalOcean and point our domain from Cloudflare to this droplet. CloudPanel will be installed on the droplet to manage everything, including websites, NGINX, Let’s Encrypt certificates, and more. Essentially, all user traffic will be routed through Cloudflare to the droplet, where NGINX will handle redirection to the requested websites.


Purchase Domain

Create a new account on PorkBun and search for the domain you are interested in purchasing.

On Cloudflare select “Add a site” and follow the prompts to connect your new domain.

Once Cloudflare provides the NameServers return back to PorkBun and replace whats shown with the ones from Cloudflare.

Usually this takes 1-2 hours to update and at the most takes 24 hours. Once completed you will then use CloudFlare for DNS.


Create a Droplet

When deploying a CloudPanel Droplet, you have two options. You can either launch a droplet with CloudPanel preinstalled or manually install it yourself. I initially attempted to use the marketplace version, but encountered issues when needing to restart the server. Hence, in this tutorial, we’ll opt for manual installation to avoid such interruptions.

NOTE: You can either continue following the guide or refer to the official documentation here for the most up to date information.

Launch a Droplet

  1. Login to your Digital Ocean account.
  2. In the left navigation, click on Droplets and then on Create Droplet.

Choose Region

Select the region closest to you for the lowest latency.

Choose an Image

Select Ubuntu 22.04 (LTS) x64.

Choose Plan

Pick the plan you prefer. You can increase or decrease the CPU and RAM at anytime but Storage can ONLY be increased.

Authentication Method

Either create a new password or create and add an SSH Key.

Launch Droplet

Enter a hostname and select Create Droplet.


Assign a Reserved IP

A Reserved IP (static ip) is recommended to have the same IP after changing the size of your Droplet. From your droplet…

  1. Select “Enable now” next to Reserved IP.
  2. Click Assign Reserved IP.

Install CloudPanel

Login via SSH to the Droplet

ssh root@IpAddress

Update & install prerequisites

apt update && apt -y upgrade && apt -y install curl wget sudo

Reboot your Droplet

reboot

Log back into the Droplet

ssh root@IpAddress

Run the installer

curl -sS https://installer.cloudpanel.io/ce/v2/install.sh -o install.sh; \
echo "85762db0edc00ce19a2cd5496d1627903e6198ad850bbbdefb2ceaa46bd20cbd install.sh" | \
sha256sum -c && sudo CLOUD=do bash install.sh

We are using MySQL for our websites. If you require an alternative then refer here.


Configure Cloudflare DNS

While CloudPanel installs lets return back to CloudFlare and add a few DNS records that will point to our droplet.

  1. From the left sidebar select DNS -> Records
  2. Select Add record and input these three records.
  • Type – A | Name – cloud | Target – IpAddress
  • Type – A | Name – @ | Target – IpAddress
  • Type – CNAME | Name – www | Target – DOMAIN

Make sure you set SSL/TLS encryption mode to FULL. If you do not then you will not be able to access your website.


Access CloudPanel

Access CloudPanel as fast as possible to create the admin user. There is a small time window where bots can create the user.

You can now access CloudPanel via Browser: https://yourIpAddress:8443

Ignore the self-signed certificate warning and click on Advanced and Proceed to continue to CloudPanel.


Create Admin

Follow prompts to create the admin for CloudPanel. Note the admin is not a user created on the system it is only for CloudPanel.

Add a WordPress Website

Once logged into CloudPanel

  1. select +ADD SITE -> Create a WordPress Site
  2. Enter the necessary credentials.

Site User – The user where all of wordpress files will be delegated to. You can use this user to ssh into the droplet and access these files.

Admin User – The user you will use to access and configure wordpress.

Multisite – WordPress has the ability to manage multiple websites. Change this if you wish to do such.

Once created save the credentials for the wordpress site.

Lets Encrypt

CloudPanel makes it simple to issue Let’s Encrypt certificates. Select your website and head over to the SSL/TLS tab. From there select Actions -> New Let’s Encrypt Certificate.


Set CloudPanel Domain

Last thing we will do is make CloudPanel accessible from our domain. Since we already defined cloud within our DNS records we are going to use that to access cloud panel. From the panel…

Admin Area -> Settings -> CloudPanel Custom Domain

Now you can access CloudPanel from your domain. https://cloud.domain.com

Conclusion

Now you have CloudPanel installed and configured on a Droplet.

References