Instalação · 8 min read · Dec 08, 2025
Como Instalar a Documentação do Wiki BookStack no CentOS 7
BookStack é uma plataforma de código aberto para criar conteúdo de documentação/wiki para seu projeto. Foi escrita na linguagem de programação PHP e usa o framework web Laravel. Basicamente, a documentação/wiki do seu projeto será armazenada no BookStack como um ‘Livro’, seguido por ‘Capítulo’ e ‘Páginas’. Isso facilita a criação e leitura da documentação como um Livro, com base em Capítulos e Páginas.
Neste tutorial, vou mostrar passo a passo como instalar e configurar o BookStack no CentOS 7 sob a pilha LEMP (Linux, Nginx, PHP-FPM, MySQL/MariaDB). Este tutorial abordará tópicos incluindo a instalação do PHP Composer e a criação do banco de dados MySQL usando a linha de comando.
Pré-requisitos
- CentOS 7
- Privilégios de root
O que faremos
- Instalar o Repositório EPEL
- Instalar o Nginx
- Instalar e Configurar o PHP-FPM
- Instalar e Configurar o MySQL/MariaDB
- Instalar o PHP Composer
- Instalar o BookStack
- Configurar o Host Virtual Nginx do BookStack
- Testando
Passo 1 - Instalar o Repositório EPEL
Adicione o novo repositório de terceiros ao sistema. Precisamos adicionar o repositório EPEL (Pacotes Extras para Linux Empresarial) ao nosso sistema CentOS 7, para que possamos instalar o Nginx e outros pacotes.
Instale o repositório EPEL usando o comando yum abaixo.
sudo yum -y install epel-releasePasso 2 - Instalar o Nginx no CentOS 7
Neste tutorial, executaremos a plataforma ‘BookStack’ sob a pilha LEMP, e instalaremos o servidor web Nginx do repositório EPEL.
Instale o servidor web Nginx usando o comando yum abaixo.
sudo yum -y install nginxApós a instalação ser concluída, inicie o serviço e habilite-o para iniciar toda vez que o sistema for inicializado.
systemctl start nginx
systemctl enable nginxAgora verifique usando o comando netstat.
netstat -plntuCertifique-se de que a porta 80 esteja na lista e que esteja sendo usada pelo serviço Nginx.

O servidor web Nginx agora está instalado no sistema CentOS 7.
Adicional: Se você estiver executando o firewalld em seu sistema, adicione um novo serviço HTTP à configuração executando os comandos abaixo.
firewall-cmd --add-service=http --permanent
firewall-cmd --reloadPasso 3 - Instalar PHP e PHP-FPM
Neste passo, instalaremos e configuraremos o PHP-FPM 7.0. Instalaremos o PHP e o PHP-FPM do repositório ‘webtatic’ - instale o PHP com algumas extensões que são necessárias pela plataforma ‘BookStack’, incluindo PDO, Tokenizer, GD, Tidy, MBString e OpenSSL.
Antes de instalar o PHP e o PHP-FPM, adicione o novo repositório ‘webtatic’ ao sistema CentOS 7 usando o comando rpm abaixo.
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpmAgora instale o PHP e o PHP-FPM com todas as extensões necessárias usando o comando yum da seguinte maneira.
sudo yum -y install php70w-fpm php70w-mcrypt php70w-curl php70w-cli php70w-mysql php70w-gd php70w-xsl php70w-json php70w-intl php70w-pear php70w-devel php70w-common php70w-mbstring php70w-tidy php70w-zip php70w-soap curlApós a instalação ser concluída, precisamos editar o arquivo de configuração ‘php.ini’ e editar a configuração do pool php-fpm ‘www.conf’.
Edite o arquivo de configuração ‘php.ini’ usando o editor vim.
vim /etc/php.iniDescomente a linha ‘cgi.fix_pathinfo’ e altere o valor para ‘0’.
cgi.fix_pathinfo=0Salve e saia.
Em seguida, edite o arquivo de configuração do pool ‘www.conf’.
vim /etc/php-fpm.d/www.confAltere o usuário padrão para executar o serviço PHP-FPM para o usuário e grupo ‘nginx’.
user = nginx
group = nginxNa linha ‘listen’, altere o valor para o arquivo sock como abaixo. Estaremos executando o PHP-fpm sob o arquivo sock.
listen = /var/run/php-fpm/php-fpm.sockAgora para a configuração de permissão e proprietário do socket. Descomente essas linhas e altere o valor como abaixo.
listen.owner = nginx
listen.group = nginx
listen.mode = 0660Finalmente, descomente o ambiente PHP-FPM.
env[HOSTNAME] = $HOSTNAME
env[PATH] = /usr/local/bin:/usr/bin:/bin
env[TMP] = /tmp
env[TMPDIR] = /tmp
env[TEMP] = /tmpSalve e saia.
Se a configuração estiver completa, inicie o serviço PHP-FPM e habilite-o para iniciar toda vez que o sistema for inicializado.
systemctl start php-fpm
systemctl enable php-fpmAgora verifique usando o comando netstat.
netstat -pl | grep phpE certifique-se de que você obtenha o arquivo sock do PHP-FPM.
PHP e PHP-FPM 7.0 com todas as extensões necessárias para a plataforma ‘BookStack’ foram instalados no sistema CentOS 7.
Passo 4 - Instalar e Configurar MySQL/MariaDB
O BookStack suporta apenas o banco de dados MySQL, e ele funcionará apenas sob a versão MySQL >= 5.6. Para este tutorial, usaremos o MariaDB (última versão) que pode ser instalado a partir do repositório do Ubuntu.
Execute o comando yum abaixo para instalar o banco de dados MariaDB.
yum install -y mariadb mariadb-serverApós a instalação ser concluída, inicie o serviço e habilite-o para iniciar toda vez que o sistema for inicializado.
systemctl start mariadb
systemctl enable mariadbAgora precisamos configurar a senha ‘root’ para o banco de dados.
Execute o comando abaixo para configurar a senha do banco de dados ‘root’.
mysql_secure_installation
E você será solicitado a inserir a nova senha root do MySQL - digite sua senha para o usuário root e pressione Enter. Para os outros, basta digitar ‘Y’ para sim e pressionar Enter novamente.
Definir senha root? [Y/n] Y
Remover usuários anônimos? [Y/n] Y
Proibir login remoto do root? [Y/n] Y
Remover banco de dados de teste e acesso a ele? [Y/n] Y
Recarregar tabelas de privilégios agora? [Y/n] YA senha root do MySQL agora foi configurada.
Em seguida, precisamos criar um novo banco de dados MySQL para a instalação do BookStack. Criaremos um novo banco de dados chamado ‘bookstackdb’ com o usuário ‘bookstack’ e a senha ‘bookstack@’.
Faça login no shell do MySQL com o usuário root.
mysql -u root -pExecute todas as consultas MySQL abaixo no shell.
create database bookstackdb;
create user bookstack@localhost identified by 'bookstack@';
grant all privileges on bookstackdb.* to bookstack@localhost identified by 'bookstack@';
flush privileges;
exit;
O MySQL/MariaDB foi instalado no sistema CentOS 7, e o banco de dados para a instalação do ‘BookStack’ foi criado.
Passo 5 - Instalar o PHP Composer no CentOS 7
O composer é um gerenciador de dependências para PHP. Ele permite que você gerencie as dependências PHP que você precisa para seu projeto. Neste passo, instalaremos o Composer usando o script de instalador. O Composer será usado para baixar todas as bibliotecas PHP necessárias para o ‘BookStack’.
Vá para o diretório home e baixe o instalador usando curl.
cd ~/
curl -sS https://getcomposer.org/installer | phpE você obterá o arquivo ‘composer.phar’ no seu diretório home. Mova o arquivo para o diretório ‘/usr/bin’ e tente o comando ‘composer’ como mostrado abaixo.
mv composer.phar /usr/bin/composer
composer -vE você obterá a versão do composer que está instalada no seu sistema.

O PHP Composer agora está instalado no sistema CentOS 7.
Passo 6 - Instalar o BookStack no CentOS 7
Neste passo, instalaremos o BookStack no diretório ‘/var/www’ - esse diretório será o diretório raiz da aplicação.
Antes de instalar o ‘BookStack’, instale o git no seu sistema.
yum -y install gitAgora crie um novo diretório ‘/var/www’.
mkdir -p /var/wwwVá para esse diretório e clone o código-fonte do BookStack usando o comando git.
cd /var/www
git clone https://github.com/BookStackApp/BookStack.git --branch release --single-branchVá para o diretório ‘BookStack/‘ e instale todas as dependências PHP necessárias usando o comando composer como mostrado abaixo.
cd BookStack/
composer installCertifique-se de que não haja erro e quando estiver completo. Você verá o resultado como abaixo.

Agora copie o arquivo de configuração do ambiente ‘.env.example’ e edite-o usando vim.
cp .env.example .env
vim .envNa linha dos detalhes do banco de dados, altere tudo com as informações do seu banco de dados como mostrado abaixo.
# Detalhes do banco de dados
DB_HOST=localhost
DB_DATABASE=bookstackdb
DB_USERNAME=bookstack
DB_PASSWORD=bookstack@Salve e saia.
E altere as permissões de propriedade do diretório ‘BookStack’ para o usuário e grupo ‘nginx’.
chown -R nginx:nginx /var/www/BookStackEm seguida, precisamos gerar a chave única da aplicação para o BookStack e atualizar o esquema do banco de dados usando os comandos PHP artisan.
No diretório raiz da aplicação ‘/var/www/BookStack’, execute os seguintes comandos.
php artisan key:generate
php artisan migrateVocê será solicitado a confirmar, digite ‘yes’ e pressione Enter.

Aguarde até que a migração da tabela seja bem-sucedida.
A aplicação BookStack foi instalada, com a chave única secreta da aplicação gerada e o esquema do banco de dados para o BookStack atualizado.
Passo 7 - Configurar o Host Virtual Nginx para o BookStack
Neste passo, configuraremos o host virtual nginx para o BookStack. Usaremos ‘book.hakase-labs.co’ como um nome de domínio para nossa URL do BookStack.
Vá para o diretório ‘/etc/nginx’ e crie um novo arquivo de host virtual ‘bookstack.conf’ no diretório ‘conf.d/‘ usando o editor vim.
cd /etc/nginx
vim conf.d/bookstack.confCole a configuração abaixo.
server {
listen 80;
server_name book.hakase-labs.co;
root /var/www/BookStack/public;
access_log /var/log/nginx/bookstack_access.log;
error_log /var/log/nginx/bookstack_error.log;
client_max_body_size 1G;
fastcgi_buffers 64 4K;
index index.php;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ ^/(?:\.htaccess|data|config|db_structure\.xml|README) {
deny all;
}
location ~ \.php(?:$|/) {
fastcgi_split_path_info ^(.+\.php)(/.+)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
}
location ~* \.(?:jpg|jpeg|gif|bmp|ico|png|css|js|swf)$ {
expires 30d;
access_log off;
}
}Salve e saia.
Agora teste a configuração do nginx e certifique-se de que não haja erro, em seguida reinicie o serviço nginx.
nginx -t
systemctl restart nginxO host virtual Nginx para a aplicação BookStack foi criado e ativado.

Passo 8 - Testando
Abra seu navegador web e digite a URL do BookStack na barra de endereços, a minha é: http://book.hakase-labs.co/
E você será redirecionado para a página ‘login/‘ como abaixo.

Digite o usuário admin padrão ‘ [email protected] ‘ com a senha ‘password’, e então pressione o botão ‘Login’.
Você deve obter o Painel do Usuário do BookStack.

Clique no menu ‘Configurações’ e você verá a página de configurações.

Agora clique em ‘Usuários’ e depois clique no usuário ‘Admin’. Altere o e-mail padrão pelo seu endereço de e-mail e a senha pela sua própria senha secreta.

Em seguida, clique no botão ‘Salvar’.
A instalação do BookStack com a pilha LEMP (Linux, Nginx, MariaDB e PHP-FPM) no CentOS 7 foi concluída com sucesso.
Referência
Receba novas postagens na sua caixa de entrada
Sem spam. Cancele a assinatura a qualquer momento.