Como instalar o BookStack no FreeBSD 12

Introdução

O BookStack é uma plataforma simples e auto-hospedada e fácil de usar para organizar e armazenar informações. O BookStack é totalmente gratuito e aberto, além de licenciado pelo MIT. A fonte está disponível no GitHub . Neste tutorial, instalaremos o BookStack em uma nova instância do FreeBSD 12 Vultr.

Exigências

  • PHP versão 7.0.0 ou superior com as seguintes extensões:
    • OpenSSL
    • PDO
    • MBString
    • Tokenizer
    • GD
    • MySQLND
    • Tidy
    • SimpleXML
    • DOM
  • MySQL / MariaDB versão 5.6 ou superior
  • Git (não é estritamente necessário, mas ajuda a gerenciar atualizações)
  • Compositor

Antes de você começar

Verifique a versão do FreeBSD.

uname -ro
# FreeBSD 12.0-RELEASE

Verifique se o seu sistema FreeBSD está atualizado.

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

Instale os pacotes necessários.

pkg install -y sudo vim unzip curl wget bash socat git

Crie uma nova conta de usuário com seu nome de usuário preferido, que usaremos 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!

Execute o visudocomando e remova o comentário da %wheel ALL=(ALL) ALLlinha para permitir que os membros do wheelgrupo executem qualquer comando.

visudo

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

Agora, mude para o usuário recém-criado com su.

su - johndoe

NOTA: Substitua johndoepelo seu nome de usuário.

Configure o fuso horário.

sudo tzsetup

Instale o PHP

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

sudo pkg install -y php72 php72-mbstring php72-tokenizer php72-pdo php72-pdo_mysql php72-openssl php72-hash php72-json php72-phar php72-filter php72-zlib php72-dom php72-xml php72-xmlwriter php72-xmlreader php72-pecl-imagick php72-curl php72-session php72-ctype php72-iconv php72-gd php72-simplexml php72-zip php72-filter php72-tokenizer php72-calendar php72-fileinfo php72-intl php72-mysqli php72-phar php72-opcache php72-tidy

Verifique a versão.

php --version
# PHP 7.2.18 (cli) (built: May  9 2019 01:13:31) ( NTS )
# Copyright (c) 1997-2018 The PHP Group
# Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

Soft-link php.ini-productionpara php.ini.

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

Ative e inicie o PHP-FPM.

sudo sysrc php_fpm_enable=yes
sudo service php-fpm start

Instale o MariaDB

Instale o MariaDB.

sudo pkg install -y mariadb102-client mariadb102-server

Verifique a versão.

mysql --version
# mysql  Ver 15.1 Distrib 10.2.24-MariaDB, for FreeBSD12.0 (amd64) using readline 5.1

Inicie e ative o MariaDB.

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

Execute o mysql_secure_installationscript para melhorar a segurança da sua instalação.

sudo mysql_secure_installation

Efetue login no MariaDB como o usuário root.

mysql -u root -p
# Enter password:

Crie um novo banco de dados e usuário. Lembre-se das credenciais para este novo usuário.

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

Instale o Nginx

Instale o Nginx.

sudo pkg install -y nginx

Verifique a versão.

nginx -v
# nginx version: nginx/1.14.2

Habilite e inicie o Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Execute sudo vim /usr/local/etc/nginx/bookstack.confe configure o Nginx para BookStack.

server {
  listen 80;
  listen [::]:80;
  server_name example.com;
  root /usr/local/www/bookstack/public;

  index index.php index.html;

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

  location ~ \.php$ {
    try_files $uri =404;
    include fastcgi_params;
    fastcgi_index index.php;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    fastcgi_pass 127.0.0.1:9000;
  }
}

Salve o arquivo e saia com :+ W+ Q.

Agora precisamos incluir bookstack.confno nginx.confarquivo principal .

Execute sudo vim /usr/local/etc/nginx/nginx.confe adicione a seguinte linha ao http {}bloco.

include bookstack.conf;

Teste nossas alterações na configuração do Nginx.

sudo nginx -t

Recarregue o Nginx.

sudo service nginx reload

Instalar o Composer

Instale o Composer globalmente executando o seguinte script no seu terminal.

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

NOTA: No bloco de comando listado acima, o hash será alterado a cada versão do instalador. Visite https://getcomposer.org/download para obter os comandos de instalação mais recentes do Composer.

Verifique a versão.

composer --version
# Composer version 1.8.5 2019-04-09 17:46:47

Instale o BookStack

Crie uma pasta raiz do documento.

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

Altere a propriedade do /usr/local/www/bookstackdiretório para johndoe.

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

Clone a ramificação de liberação do repositório do BookStack GitHub na pasta raiz do documento.

cd /usr/local/www/bookstack
git clone https://github.com/BookStackApp/BookStack.git --branch release --single-branch .

Execute o comando de instalação do compositor a partir do /usr/local/www/bookstackdiretório

composer install

Copie o .env.examplearquivo .enve preencha-o com seu próprio banco de dados e detalhes de email.

cp .env.example .env

Certifique-se de que os storage, bootstrap/cachee public/uploadspastas são escrito pelo servidor web.

Na raiz do aplicativo, execute o seguinte comando.

php artisan key:generate

Isso irá gerar uma chave de aplicativo exclusiva.

Execute php artisan migratepara atualizar o banco de dados.

Altere a propriedade do /usr/local/www/bookstackdiretório para www.

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

Agora você pode fazer login usando os detalhes padrão do administrador [email protected]com uma senha de password. É recomendável alterar esses detalhes diretamente após o seu primeiro login.



Leave a Comment

A IA pode lutar contra o aumento do número de ataques de ransomware

A IA pode lutar contra o aumento do número de ataques de ransomware

Os ataques de ransomware estão aumentando, mas a IA pode ajudar a lidar com os vírus de computador mais recentes? AI é a resposta? Leia aqui para saber se é AI boone ou bane

ReactOS: Este é o futuro do Windows?

ReactOS: Este é o futuro do Windows?

ReactOS, um sistema operacional de código aberto e gratuito está aqui com a versão mais recente. Será que ela pode atender às necessidades dos usuários modernos do Windows e derrubar a Microsoft? Vamos descobrir mais sobre esse estilo antigo, mas uma experiência de sistema operacional mais recente.

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

Fique conectado por meio do aplicativo WhatsApp Desktop 24 * 7

O Whatsapp finalmente lançou o aplicativo Desktop para usuários de Mac e Windows. Agora você pode acessar o Whatsapp do Windows ou Mac facilmente. Disponível para Windows 8+ e Mac OS 10.9+

Como a IA pode levar a automação de processos ao próximo nível?

Como a IA pode levar a automação de processos ao próximo nível?

Leia isto para saber como a Inteligência Artificial está se tornando popular entre as empresas de pequena escala e como está aumentando as probabilidades de fazê-las crescer e dar vantagem a seus concorrentes.

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

A atualização do suplemento do macOS Catalina 10.15.4 está causando mais problemas do que resolvendo

Recentemente, a Apple lançou o macOS Catalina 10.15.4, uma atualização suplementar para corrigir problemas, mas parece que a atualização está causando mais problemas, levando ao bloqueio de máquinas mac. Leia este artigo para saber mais

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

13 Ferramentas de Extração de Dados Comerciais de Big Data

O que é um sistema de arquivos de registro no diário e como ele funciona?

O que é um sistema de arquivos de registro no diário e como ele funciona?

Nosso computador armazena todos os dados de uma maneira organizada conhecida como sistema de arquivos Journaling. É um método eficiente que permite ao computador pesquisar e exibir arquivos assim que você clicar em search.https: //wethegeek.com/? P = 94116 & preview = true

Singularidade tecnológica: um futuro distante da civilização humana?

Singularidade tecnológica: um futuro distante da civilização humana?

À medida que a ciência evolui em um ritmo rápido, assumindo muitos de nossos esforços, os riscos de nos sujeitarmos a uma singularidade inexplicável também aumentam. Leia, o que a singularidade pode significar para nós.

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

Uma visão sobre 26 técnicas analíticas de Big Data: Parte 1

O impacto da inteligência artificial na saúde 2021

O impacto da inteligência artificial na saúde 2021

A IA na área da saúde deu grandes saltos nas últimas décadas. Portanto, o futuro da IA ​​na área da saúde ainda está crescendo dia a dia.