How VPS - How to use/setup VPS
  • Home
  • Management guides
    • Web servers software
      • Directadmin
      • Hocvps Script
      • Centmin Mod
      • CWP
      • Kloxo-MR
      • Plesk
    • Control Panels
    • Securing VPS/Servers
      • SSL Certificates
      • Upgrading
      • Authentication
  • Operating System
    • CentOS
    • Fedora
    • Debian
    • Linux
    • Arch
    • BSD
    • CoreOS
  • Reviews
  • Coupon
    • Domain Coupon
    • Hosting Coupon
No Result
View All Result
  • Home
  • Management guides
    • Web servers software
      • Directadmin
      • Hocvps Script
      • Centmin Mod
      • CWP
      • Kloxo-MR
      • Plesk
    • Control Panels
    • Securing VPS/Servers
      • SSL Certificates
      • Upgrading
      • Authentication
  • Operating System
    • CentOS
    • Fedora
    • Debian
    • Linux
    • Arch
    • BSD
    • CoreOS
  • Reviews
  • Coupon
    • Domain Coupon
    • Hosting Coupon
No Result
View All Result
How VPS - How to use/setup VPS
No Result
View All Result
Home Operating System BSD

How to Install Cachet on FreeBSD 11

How VPS by How VPS
September 1, 2019
in BSD
0
0
SHARES
11
VIEWS
Share on FacebookShare on Twitter

Contents

  1. Using a Different System?
  2. Requirements
  3. Before you begin
  4. Install PHP
  5. Install MariaDB
  6. Install and configure Nginx
  7. Install Composer
  8. Install Cachet
  9. Want to contribute?

Using a Different System?

  • How to Install Cachet on Ubuntu 16.04 LTS

  • How to Install Cachet on CentOS 7

  • How to Install Cachet on Fedora 28

  • How to Install Cachet on Debian 10

Are we missing a guide for your target system? Request one, or submit your own!


Cachet is an open source status page system written in PHP. The source code for Cachet is hosted on GitHub. In this guide, you will learn how to install Cachet on a fresh FreeBSD 11 Vultr server instance.

Requirements

  • PHP version 7.1 or greater.
  • PHP extensions gd, simplexml, mcrypt, xml, mbstring, tokenizer, APCu, redis, mysql, sqlite3, pgsql.
  • HTTP server with PHP support (eg: Apache, Nginx, Caddy). This guide will use Nginx.
  • A supported database: MySQL/MariaDB, PostgreSQL or SQLite. This guide will use MariaDB.
  • Git
  • Composer

Before you begin

Check the FreeBSD version.

uname -ro
# FreeBSD 11.2-RELEASE

Ensure that your FreeBSD system is up to date.

freebsd-update fetch install
pkg update && pkg upgrade -y

Install sudo, vim, unzip, wget, bash and git packages if they are not present on your system.

pkg install -y sudo vim unzip wget bash git

Create a new user account with your preferred username (we will use johndoe).

adduser

# Username: johndoe
# Full name: John Doe
# Uid (Leave empty for default): <Enter>
# Login group [johndoe]: <Enter>
# Login group is johndoe. Invite johndoe into other groups? []: wheel
# Login class [default]: <Enter>
# Shell (sh csh tcsh nologin) [sh]: bash
# Home directory [/home/johndoe]: <Enter>
# Home directory permissions (Leave empty for default): <Enter>
# Use password-based authentication? [yes]: <Enter>
# Use an empty password? (yes/no) [no]: <Enter>
# Use a random password? (yes/no) [no]: <Enter>
# Enter password: your_secure_password
# Enter password again: your_secure_password
# Lock out the account after creation? [no]: <Enter>
# OK? (yes/no): yes
# Add another user? (yes/no): no
# Goodbye!

Run the visudo command and uncomment the %wheel ALL=(ALL) ALL line, to allow members of the wheel group to execute any command.

visudo

# Uncomment by removing hash (#) sign
# %wheel ALL=(ALL) ALL

Now, switch to your newly created user with the su command.

su - johndoe

NOTE: Replace johndoe with your username.

Set the timezone.

sudo tzsetup

Install PHP

Install PHP and the necessary PHP extensions.

sudo pkg install -y php72 php72-ctype php72-curl php72-dom php72-hash php72-iconv php72-gd php72-json php72-mbstring php72-openssl php72-session php72-simplexml php72-xml php72-zip php72-zlib php72-pdo php72-pdo_mysql php72-mysqli php72-pgsql php72-sqlite3 php72-filter php72-ftp php72-tokenizer php72-calendar php72-pecl-APCu php72-opcache php72-pecl-redis php72-phar php72-fileinfo

Check the version.

php --version
# PHP 7.2.10 (cli) (built: Oct  2 2018 01:30:18) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies
#     with Zend OPcache v7.2.10, Copyright (c) 1999-2018, by Zend Technologies

Soft-link php.ini-production to php.ini.

sudo ln -s /usr/local/etc/php.ini-production /usr/local/etc/php.ini

Enable and start PHP-FPM.

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

Install MariaDB

Download and install MariaDB.

sudo pkg install -y mariadb102-client mariadb102-server

Check the version.

mysql --version
# mysql  Ver 15.1 Distrib 10.2.17-MariaDB, for FreeBSD11.2 (amd64) using readline 5.1

Enable and start MariaDB.

sudo sysrc mysql_enable="yes" 
sudo service mysql-server start

Run the mysql_secure_installation script to improve the security of your MariaDB installation.

sudo mysql_secure_installation

Log into MariaDB as the root user.

sudo mysql -u root -p
# Enter password:

Create a new MariaDB database and user, and remember the credentials.

CREATE DATABASE dbname;
GRANT ALL ON dbname.* TO 'username' IDENTIFIED BY 'password';
FLUSH PRIVILEGES;

Exit MariaDB.

exit

Install and configure Nginx

Install Nginx.

sudo pkg install -y nginx

Check the version.

nginx -v
# nginx version: nginx/1.14.0

Enable and start Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Run sudo vim /usr/local/etc/nginx/cachet.conf to configure Nginx for Cachet. Paste in the following text.

upstream php {
  server 127.0.0.1:9000;
}

server {

  listen [::]:80;
  listen 80;

  server_name status.example.com;

  root /usr/local/www/cachet/public;
  index index.php;

  location / {
    try_files $uri /index.php$is_args$args;
  }

  location ~ /.php$ {
    include fastcgi_params;
    fastcgi_pass php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_index index.php;
    fastcgi_keep_conn on;
  }
}

Save the file and exit with :+W+Q.

Now we need to include cachet.conf file to the main nginx.conf file.

Run sudo vim /usr/local/etc/nginx/nginx.conf and add the following line to the http {} block.

include cachet.conf;

Test our Nginx configuration changes.

sudo nginx -t

Reload Nginx.

sudo service nginx reload

Install Composer

Install Composer globally by running the following script in your terminal.

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '93b54496392c062774670ac18b134c3b3a95e5a5e5c8f1a9f115f203b75bf9a129d5daa8ba6a13e2cc8a1da0806388a8') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer

NOTE: In the command block listed above, the hash will change with every version of the installer. Visit https://getcomposer.org/download/ for the latest Composer installation commands.

Check the version.

composer --version
# Composer version 1.7.2 2018-08-16 16:57:12

Install Cachet

Create a document root directory.

sudo mkdir -p /usr/local/www/cachet

Change ownership of the /usr/local/www/cachet directory to johndoe.

sudo chown -R johndoe:johndoe /usr/local/www/cachet

Navigate to the document root directory.

cd /usr/local/www/cachet

Download the Cachet source code with Git.

git clone -b 2.4 --single-branch https://github.com/cachethq/Cachet.git .

Copy .env.example to .env and configure both database and APP_URL settings in the .env file.

cp .env.example .env
vim .env

Install dependencies with Composer.

composer install --no-dev -o

Set the application key.

php artisan key:generate

Install Cachet.

php artisan cachet:install

Change ownership of the /usr/local/www/cachet directory to www.

sudo chown -R www:www /usr/local/www/cachet

Open your website in a web browser and follow the on-screen instructions to finish the Cachet installation.

If you get a 500 error when visiting your status page, you may need to run chmod -R 777 storage for it to work, or rm -rf bootstrap/cache/*.

To access the Cachet dashboard, append /dashboard to the URL of your website.

Want to contribute?

You could earn up to $300 by adding new articles

Submit your article
Suggest an update
Request an article
How VPS

How VPS

Related Posts

BSD

Installing Bolt CMS on FreeBSD 12

September 1, 2019
BSD

How to Install Flarum Forum on FreeBSD 12

September 1, 2019
BSD

Choosing an OS: CentOS, Ubuntu, Debian, FreeBSD, CoreOS, or Windows Server

September 1, 2019
Next Post

How to Resize a Disk in FreeBSD

Installing MongoDB on FreeBSD 10

How to Install Selfoss RSS Reader on a FreeBSD 11 FAMP VPS

Leave a Reply Cancel reply

Your email address will not be published. Required fields are marked *

Follow Us

  • 121 Followers
  • 87.2k Followers

Recommended

How To Install GDB on CentOS 6

3 years ago

3 Ways to List All Installed Packages in RHEL, CentOS and Fedora

4 years ago

Install eSpeak on FreeBSD 12

3 years ago

procinfo – Shows System Statistics from /proc Filesystem

4 years ago

Instagram

    Please install/update and activate JNews Instagram plugin.

Categories

  • Arch
  • Authentication
  • Backups
  • BSD
  • Centmin Mod
  • CentOS
  • Control Panels
  • CoreOS
  • CWP
  • Debian
  • Directadmin
  • Encryption
  • Fedora
  • Firewalls
  • Hocvps Script
  • Hosting providers
  • Kloxo-MR
  • Linux
  • Mitigations
  • Operating System
  • Plesk
  • Reviews
  • Securing VPS/Servers
  • Security Patches
  • SSL Certificates
  • Uncategorized
  • Upgrading
  • VPS/Servers management guides
  • Vulnerability Detection
  • Web servers software
  • Webhosting Control Panel

Topics

Apache Web Server Bluehost Review 2019 Bluehost Review 2020 Bluehost Review 2021 Centmin Mod CentminMod centos install htop fsck htop install HTTP DoS attack Install Snort on an Ubuntu install Zabbix on CentOS install Zabbix on CentOS 7 Linux Commands linux guide linux install htop linux vps setup guide MariaDB MariaDB Error Mysql mysqld error optimize MariaDB optimize Mysql snort Ubuntu
No Result
View All Result

Highlights

Top Free Web Hosting Control Panels To Manage VPS/Dedicated Servers

Webmin Reviews

Virtualmin Reviews

CentOS Web Panel Reviews

Ajenti Reviews

ISPConfig Reviews

Trending

Failed to download metadata for repo 'appstream' on Centos 8
CentOS

How to fix error: Failed to download metadata for repo ‘appstream’ on Centos 8

by How VPS
February 25, 2022
0

I tried to update some extensions by use yum on centOs which I specified in Dockerfile. After...

How to Fix MySQL Error "Plugin 'InnoDB' registration as a STORAGE ENGINE failed"?

How to Fix MySQL Error “Plugin ‘InnoDB’ registration as a STORAGE ENGINE failed”?

November 17, 2020
How to optimize Mysql or MariaDB

How to optimize Mysql or MariaDB

November 3, 2020
Top Free Web Hosting Control Panels To Manage VPS/Dedicated Servers

Top Free Web Hosting Control Panels To Manage VPS/Dedicated Servers

February 17, 2020
Webmin Reviews

Webmin Reviews

February 17, 2020
How VPS – How to use/setup VPS

We bring you the best Premium WordPress Themes that perfect for news, magazine, personal blog, etc. Visit our landing page to see all features & demos.
LEARN MORE »

Recent News

  • How to fix error: Failed to download metadata for repo ‘appstream’ on Centos 8 February 25, 2022
  • How to Fix MySQL Error “Plugin ‘InnoDB’ registration as a STORAGE ENGINE failed”? November 17, 2020
  • How to optimize Mysql or MariaDB November 3, 2020

Categories

  • Arch
  • Authentication
  • Backups
  • BSD
  • Centmin Mod
  • CentOS
  • Control Panels
  • CoreOS
  • CWP
  • Debian
  • Directadmin
  • Encryption
  • Fedora
  • Firewalls
  • Hocvps Script
  • Hosting providers
  • Kloxo-MR
  • Linux
  • Mitigations
  • Operating System
  • Plesk
  • Reviews
  • Securing VPS/Servers
  • Security Patches
  • SSL Certificates
  • Uncategorized
  • Upgrading
  • VPS/Servers management guides
  • Vulnerability Detection
  • Web servers software
  • Webhosting Control Panel

[mc4wp_form]

© 2018 JNews - City News Magazine WordPress theme. All rights belong to their respective owners.
JNews is a top selling 2018 WordPress News, Blog, Newspaper & Magazine Theme.

No Result
View All Result
  • Home

© 2023 JNews - Premium WordPress news & magazine theme by Jegtheme.