Pesquisa de site

Como instalar o sistema de página de status do cache no CentOS 7


Nesta página

  1. Requisitos
  2. Pré-requisitos
  3. Etapa 1 - Instalar o PHP
  4. Etapa 2 - Instale MariaDB e crie um banco de dados para Cachet
  5. Etapa 3 - Instale o cliente Acme.sh e obtenha o certificado Lets Encrypt (opcional)
  6. Etapa 4 - Instalar e configurar NGINX
  7. Etapa 5 - Instalar o Composer
  8. Etapa 6 - Instalar cache
  9. Etapa 7 - Conclua a configuração do cache
  10. Links

Cachet é um belo e poderoso sistema de página de status de código aberto escrito em PHP que permite que você comunique melhor o tempo de inatividade e as falhas do sistema para seus clientes, equipes e acionistas. O aplicativo oferece muitos recursos, sendo os mais importantes: uma poderosa API JSON, relatórios de eventos, métricas, suporte de transcrição para mensagens de eventos, notificações de assinantes via e-mail, autenticação de dois fatores. Neste tutorial, instalaremos o sistema de página de status Cachet usando PHP, Nginx, MySQL e Composer no sistema CentOS 7.

Requisitos

Para executar o Cachet no seu sistema CentOS 7, você precisará de algumas coisas:

  • versão do PHP 7.1 ou superior
  • Servidor HTTP com suporte PHP (por exemplo: Nginx, Apache, Caddy)
  • Compositor
  • Um banco de dados compatível: MySQL, PostgreSQL ou SQLite
  • Git

Pré-requisitos

  • Um sistema operacional CentOS 7.
  • Um usuário não root com privilégios sudo.

Etapas iniciais

Verifique sua versão do CentOS:

cat /etc/centos-release

Configure o fuso horário:

timedatectl list-timezones
sudo timedatectl set-timezone 'Region/City'

Atualize seus pacotes de sistema operacional (software). Este é um primeiro passo importante porque garante que você tenha as atualizações e correções de segurança mais recentes para os pacotes de software padrão do seu sistema operacional:

sudo yum upgdate -y

Instale alguns pacotes essenciais que são necessários para a administração básica do sistema operacional CentOS:

sudo yum install -y curl wget vim git unzip socat bash-completion

Passo 1 - Instale o PHP

Configure o repositório Webtatic YUM:

sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

Instale o PHP, bem como as extensões PHP necessárias:

sudo yum install -y php72w-cli php72w-fpm php72w-common php72w-xml php72w-gd php72w-zip php72w-mbstring php72w-mysqlnd php72w-pgsql php72w-sqlite3 php72w-opcache php72w-apcu php72w-json

Para mostrar o PHP compilado em módulos, você pode executar:

php -m

ctype
curl
exif
fileinfo
. . .
. . .

Verifique a versão do PHP:

php --version

Inicie e habilite o serviço PHP-FPM:

sudo systemctl start php-fpm.service
sudo systemctl enable php-fpm.service

Podemos passar para a próxima etapa, que é a instalação e configuração do banco de dados.

Passo 2 - Instale MariaDB e crie um banco de dados para Cachet

Cachet suporta bancos de dados MySQL, MariaDB, PostgreSQL e SQLite. Neste tutorial, usaremos MariaDB como o servidor de banco de dados.

Crie o repositório MariaDB 10.2 YUM para CentOS:

sudo vim /etc/yum.repos.d/MariaDB.repo

Copie e cole o seguinte texto nele:

# MariaDB 10.2 CentOS repository list - created 2017-12-11 23:19 UTC
# http://downloads.mariadb.org/mariadb/repositories/
[mariadb]
name=MariaDB
baseurl=https://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1

Depois que o arquivo estiver no lugar, instale o MariaDB executando:

sudo yum install -y MariaDB-server MariaDB-client

Verifique a versão do MariaDB:

mysql --version
# mysql  Ver 15.1 Distrib 10.2.21-MariaDB, for Linux (x86_64) using readline 5.1

Inicie e habilite o serviço MariaDB:

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Execute o script de instalação mysql_secure para melhorar a segurança do MariaDB e defina a senha para o usuário root do MariaDB:

sudo mysql_secure_installation

Responda a cada uma das perguntas:

Would you like to setup VALIDATE PASSWORD plugin? N
New password: your_secure_password
Re-enter new password: your_secure_password
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] Y
Remove test database and access to it? [Y/n] Y
Reload privilege tables now? [Y/n] Y

Conecte-se ao shell MariaDB como usuário root:

sudo mysql -u root -p
# Enter password

Crie um banco de dados MariaDB e um usuário vazios para Cachet e lembre-se das credenciais:

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

Sair do MariaDB:

MariaDB> exit

Substitua dbnameusername e password pelos seus próprios nomes.

Passo 3 - Instale o cliente Acme.sh e obtenha o certificado Lets Encrypt (opcional)

Proteger seu site com HTTPS não é necessário, mas é uma boa prática proteger o tráfego do site. Para obter um certificado TLS da Lets Encrypt, usaremos o cliente acme.sh. Acme.sh é um software de shell UNIX puro para obter certificados TLS da Lets Encrypt com zero dependências.

Baixe e instale acme.sh:

sudo su - root
git clone https://github.com/Neilpang/acme.sh.git
cd acme.sh 
./acme.sh --install --accountemail 
source ~/.bashrc
cd ~

Verifique a versão do acme.sh:

acme.sh --version
# v2.8.0

Obtenha os certificados RSA e ECC/ECDSA para seu domínio/nome de host:<br>

# RSA 2048
acme.sh --issue --standalone -d example.com --keylength 2048
# ECDSA
acme.sh --issue --standalone -d example.com --keylength ec-256

Se você deseja certificados falsos para teste, pode adicionar o sinalizador --staging aos comandos acima.

Depois de executar os comandos acima, seus certificados e chaves estarão em:

  • Para RSA: /home/username/example.com diretório.
  • Para ECC/ECDSA: /home/username/example.com_ecc diretório.

Para listar seus certificados emitidos, você pode executar:

acme.sh --list

Crie um diretório para armazenar seus certificados. Usaremos o diretório /etc/letsencrypt .

mkdir -p /etc/letsecnrypt/example.com
sudo mkdir -p /etc/letsencrypt/example.com_ecc

Instale/copie os certificados para o diretório /etc/letsencrypt.

# RSA
acme.sh --install-cert -d example.com --cert-file /etc/letsencrypt/example.com/cert.pem --key-file /etc/letsencrypt/example.com/private.key --fullchain-file /etc/letsencrypt/example.com/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"
# ECC/ECDSA
acme.sh --install-cert -d example.com --ecc --cert-file /etc/letsencrypt/example.com_ecc/cert.pem --key-file /etc/letsencrypt/example.com_ecc/private.key --fullchain-file /etc/letsencrypt/example.com_ecc/fullchain.pem --reloadcmd "sudo systemctl reload nginx.service"

Todos os certificados serão renovados automaticamente a cada 60 dias.

Depois de obter os certificados, saia do usuário root e retorne ao usuário sudo normal:

exit

Etapa 4 - Instalar e configurar NGINX

O cache pode funcionar bem com muitos servidores da web. Neste tutorial, selecionamos NGINX. Se você preferir o servidor web Apache ao invés do NGINX, visite https://docs.cachethq.io/docs/installing-cachet#section-running-cachet-on-apache para saber mais.

Instale NGINX:

sudo yum install -y nginx

Verifique a versão do NGINX:

sudo nginx -v

Inicie e ative o serviço NGINX:

sudo systemctl start nginx.service
sudo systemctl enable nginx.service

Configure NGINX para Cachet executando:

sudo vim /etc/nginx/conf.d/cachet.conf

E preencha o arquivo com a seguinte configuração:

server {

  listen 80;
  listen [::]:80;
listen 443 ssl;
listen [::]:443 ssl;

  server_name status.example.com;

  root /var/www/cachet/public;

  index index.php;

  ssl_certificate /etc/letsencrypt/status.example.com/fullchain.cer;
  ssl_certificate_key /etc/letsencrypt/status.example.com/status.example.com.key;
  ssl_certificate /etc/letsencrypt/status.example.com_ecc/fullchain.cer;
  ssl_certificate_key /etc/letsencrypt/status.example.com_ecc/status.example.com.key;

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

  location ~ \.php$ {
    include fastcgi_params;
    fastcgi_pass 127.0.0.1:9000;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_index index.php;
    fastcgi_keep_conn on;
  }

}

Teste a configuração do NGINX:

sudo nginx -t

Recarregue NGINX:

sudo systemctl reload nginx.service

Etapa 5 - Instalar o Composer

Instale o Composer, o gerenciador de dependências do PHP globalmente:

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"

php -r "if (hash_file('sha384', 'composer-setup.php') === '48e3236262b34d30969dca3c37281b3b4bbe3221bda826ac6a9a62d6444cdb0dcd0615698a5cbe587c3f0fe57a54d8f5') { 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

Verifique a versão do Composer:

composer --version
# Composer version 1.8.4 2019-02-11 10:52:10

Passo 6 - Instalar Cache

Crie um diretório raiz de documentos onde o Cachet deve residir:

sudo mkdir -p /var/www/cachet

Altere a propriedade do diretório /var/www/cachet para {jour_user}:

sudo chown -R {your_user}:{your_user} /var/www/cachet

OBSERVAÇÃO: Substitua {jour_user} pelo seu nome de usuário não raiz criado inicialmente.

Navegue até o diretório raiz do documento:

cd /var/www/cachet

Baixe o código-fonte do Cachet com o Git:

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

Copie .env.example para o arquivo .env e configure o banco de dados e APP_URL configurações no arquivo .env :

cp .env.example .env
vim .env

Instale as dependências do Cachet com o Composer:

composer install --no-dev -o

Configure a chave do aplicativo executando:

php artisan key:generate

Instalar Cache:

php artisan cachet:install

Forneça a propriedade apropriada:

sudo chown -R nginx:nginx /var/www/cachet

Execute sudo vim /etc/php-fpm.d/www.conf e defina o usuário e o grupo como nginx. Inicialmente, eles serão definidos como apache:

sudo vim /etc/php-fpm.d/www.conf
# user = nginx
# group = nginx

Abra seu site em um navegador da Web e siga as instruções na tela para concluir a instalação do Cachet.

Etapa 7 - Conclua a configuração do cache

Selecione o cache e os drivers de sessão e configure as opções de e-mail:

Defina as configurações gerais do site, como nome do site, domínio do site, fuso horário e idioma:

Crie uma conta de usuário administrativo:

Depois disso, você deve receber uma mensagem informando que o Cachet foi configurado com sucesso. Você pode abrir o painel Cachet pressionando o botão \Ir para o painel\:

A instalação e configuração do cache foram concluídas.

Para acessar o painel Cachet, anexe /dashboard ao URL do seu site.

links

  • https://github.com/CachetHQ/Cachet

Artigos relacionados: