Skip to content
/ vps Public

Collection of universal bash scripts to install Chevereto in any VPS

License

Notifications You must be signed in to change notification settings

chevereto/vps

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

67 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Chevereto VPS

🔔 Subscribe to don't miss any update regarding Chevereto.

Chevereto

Chevereto Docs Chevereto Community Chevereto Discord Chevereto Demo

Collection of universal bash scripts to install Chevereto in any VPS (Virtual Private Server). We strongly recommend DigitalOcean, Vultr and Linode.

Instructions

  • Root login to your VPS
  • Run the following script(s)

Ubuntu

Note: Ubuntu LTS 24.04 is recommended. If you run other system you may need to alter the scripts. Feel free to contribute.

Prepare

The prepare.sh script install the system stack (PHP, Apache HTTP Web server, MySQL Server, Composer, FFmpeg and Certbot) on Ubuntu.

Reboot the VPS to make sure to apply any pending kernel updates:

systemctl reboot

Make sure to change 24.04 to match your Ubuntu LTS (available 20.04, 22.04 and 24.04).

bash <(curl -s https://raw.githubusercontent.com/chevereto/vps/4.1/ubuntu/24.04/prepare.sh)

This message will be shown on success:

[OK] Stack ready for Chevereto!

Common

  • The scripts at common/ will work under any unix-like system
  • Requires curl and unzip

New

The new.sh script downloads Chevereto and configures Apache HTTP Web server, MySQL and CRON. Its purpose is to prepare for Chevereto Installation.

This is intended to brand new installations and it should run after prepare as it assumes that the system stack is ready.

bash <(curl -s https://raw.githubusercontent.com/chevereto/vps/4.1/common/new.sh)

Notes

On the server:

  • The web root is located at /var/www/html
  • The MySQL root password is saved at /root/.mysql_password
  • Logs are at /var/log/apache2

IMPORTANT:

  • Secure your database by running mysql_secure_installation

Get

The get.sh script download and extracts Chevereto in the current working folder.

  • cd into the website project folder (for example /var/www/html)
  • Run the following command
bash <(curl -s https://raw.githubusercontent.com/chevereto/vps/4.1/common/get.sh)

Cloudflare remote IP

The cf-remoteip.sh script syncs the known IPs for CloudFlare remote IP. This must be used if you are using CloudFlare.

Warning: If you use CloudFlare and not complete this setup your Chevereto installation won't be able to retrieve real visitors IP.

bash <(curl -s https://raw.githubusercontent.com/chevereto/vps/4.1/common/cf-remoteip.sh)
  • To save the above script in your VPS:
curl -f -SOJL \
    --output-dir /etc/apache2 \
    https://raw.githubusercontent.com/chevereto/vps/4.1/common/cf-remoteip.sh
  • To add the above script to CRON (cron.d) to keep these IP ranges auto updated:
cat >/etc/cron.d/cf-remoteip <<EOM
30 3 * * * /etc/apache2/cf-remoteip.sh >/dev/null 2>&1
EOM

HTTPS setup

Run the following command to get automatic renewable HTTPS thanks to certbot. Mind to change example.com with the target domain(s).

certbot --apache -d example.com

If you are using www. subdomain you can add it like this:

certbot --apache -d example.com -d www.example.com

About

Collection of universal bash scripts to install Chevereto in any VPS

Topics

Resources

License

Stars

Watchers

Forks

Languages