Chevereto is a powerful and customizable image sharing script that allows users to create their own image hosting website. In this tutorial, we'll cover how to install Chevereto on Alpine Linux.
Before starting, ensure that you have the latest system updates on your Alpine Linux instance by running the following command:
sudo apk update && sudo apk upgrade
Chevereto requires a few packages to run correctly. We'll use the following command to install them:
sudo apk add nginx mariadb mariadb-client php7 php7-fpm php7-phar php7-json php7-mysqlnd php7-gd php7-mbstring php7-zlib php7-openssl php7-curl php7-zip php7-iconv php7-zip php7-ctype php7-session php7-intl php7-dom supervisor unzip
Once installed, we need to configure the Nginx virtual host. To do that we need to create a new configuration file in the following directory: /etc/nginx/conf.d/
.
sudo vi /etc/nginx/conf.d/chevereto.conf
Then add the following content and save the file:
server {
listen 80;
server_name example.com; # replace this with your domain
root /var/www/html/chevereto/public;
index index.php index.html;
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
location ~ \.php$ {
fastcgi_pass unix:/run/php-fpm7.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
location ~ /\.ht {
deny all;
}
}
This configuration file will serve Chevereto on port 80 and direct requests to the Chevereto application files located in /var/www/html/chevereto/public
.
Chevereto requires a database to store user data. We'll host it on MariaDB. Install it with the following command:
sudo apk add mariadb mariadb-client
After installation, run the following command to secure the installation:
sudo mysql_secure_installation
Next, create a new MariaDB user and database by entering the following command:
mysql -u root -p
CREATE DATABASE chevereto;
CREATE USER 'chevereto_admin'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON chevereto.* TO 'chevereto_admin'@'localhost';
FLUSH PRIVILEGES;
exit
Make sure to replace password
with the actual password you have created for the chevereto_admin
user.
Download the latest release of Chevereto using the following command:
wget https://github.com/Chevereto/Chevereto-Free/archive/master.zip
Extract the contents of the zip file using the unzip
command.
unzip master.zip
Then move the extracted files to the /var/www/html/chevereto
directory.
sudo mv Chevereto-Free-master /var/www/html/chevereto/
Update the permissions of the directory by running the following command:
sudo chown -R nginx:nginx /var/www/html/chevereto/
Chevereto's main configuration file is located in /var/www/html/chevereto/app/settings.php
. Open it in your preferred text editor to modify the required settings.
For example, to update the database details, enter:
'db_driver' => 'mysql',
'db_host' => 'localhost',
'db_name' => 'chevereto',
'db_user' => 'chevereto_admin',
'db_password' => 'password'
Again, make sure to replace password
with the actual password you have created for the chevereto_admin
user.
Use the following commands to start the services:
sudo service php-fpm7 start
sudo service nginx start
sudo service mariadb start
You have now installed Chevereto on an Alpine Linux instance successfully. You can now navigate to the IP address or domain name of your server in a browser to access your Chevereto installation.
If you want to self-host in an easy, hands free way, need an external IP address, or simply want your data in your own hands, give IPv6.rs a try!
Alternatively, for the best virtual desktop, try Shells!