Snippet Box is a simple, flexible, and open-source PHP script that allows you to manage and store your code snippets in one place. This tutorial covers the installation of Snippet Box on Debian Latest.
Before we begin, make sure you have the following:
The first step is to install Git, which is a popular version control system. To install Git on Debian, run the following command:
sudo apt update
sudo apt install git
After installing Git, we need to clone the Snippet Box repository. To do so, navigate to the directory where you want to store the Snippet Box files and run the following command:
cd /var/www/html
sudo git clone https://github.com/pawelmalak/snippet-box.git
Now we need to configure Apache to serve the Snippet Box application. Create a new Apache configuration file using the following command:
sudo nano /etc/apache2/sites-available/snippet-box.conf
Add the following contents to the file:
<VirtualHost *:80>
ServerName your_domain.com
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/snippet-box/public
<Directory /var/www/html/snippet-box/public/> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all Require all granted </Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
Make sure to replace the ServerName with your domain name.
To enable the Snippet Box site we just created, run the following command:
sudo a2ensite snippet-box.conf
After making changes to the Apache configuration, we need to restart Apache to apply the changes. To do so, run the following command:
sudo systemctl restart apache2
We need to create a new database for Snippet Box. To do so, log in to your MariaDB server by running the following command:
sudo mariadb -u root -p
After logging in, create a new database and user with the following commands:
CREATE DATABASE snippet_box_db;
CREATE USER 'snippet_box_user'@'localhost' IDENTIFIED BY 'password_here';
GRANT ALL PRIVILEGES ON snippet_box_db.* TO 'snippet_box_user'@'localhost';
FLUSH PRIVILEGES;
Make sure to replace the password_here
with your desired password.
Now we need to configure Snippet Box. Navigate to the snippet-box
directory and copy the .env.example
file to a new .env
file by running the following command:
cd /var/www/html/snippet-box
sudo cp .env.example .env
Open the newly created .env
file and set the database details according to the database you created:
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=snippet_box_db
DB_USERNAME=snippet_box_user
DB_PASSWORD=password_here
Save and close the file.
To install Snippet Box dependencies, navigate to the snippet-box
directory and run the following command:
sudo composer install
After installing the dependencies, run the following command to generate a new application key:
sudo php artisan key:generate
We need to run the Snippet Box migration to create the necessary database tables. To do so, run the following command:
sudo php artisan migrate
After completing the previous steps, open your web browser and navigate to your domain name or IP address. You should see the Snippet Box login page.
Enter your desired username and password to create an account and start using Snippet Box.
Congratulations! You have successfully installed Snippet Box on Debian Latest.
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!