Como instalar o InvoicePlane no FreeBSD 12

O InvoicePlane é um aplicativo de faturamento gratuito e de código aberto. Seu código-fonte pode ser encontrado neste repositório do Github . Este guia mostra como instalar o InvoicePlane em uma nova instância do FreeBSD 12 Vultr.

Exigências

  • Nginx
  • MySQL versão 5.5 ou superior ou equivalente a MariaDB
  • PHP versão 7.0 ou superior
  • As seguintes extensões PHP devem ser instaladas e ativadas:
    • php-gd
    • php-hash
    • php-json
    • php-mbstring
    • php-mcrypt
    • php-mysqli
    • php-openssl
    • php-recode
    • php-xmlrpc
    • php-zlib

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. Nós vamos usar 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 e as extensões PHP necessárias

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-phar php72-soap php72-xmlrpc php72-opcache php72-mysqli php72-bcmath php72-gmp

Verifique a versão.

php --version

# PHP 7.2.19 (cli) (built: Jun 20 2019 01:25:01) ( 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 do MariaDB.

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 do MariaDB. 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.16.0

Habilite e inicie o Nginx.

sudo sysrc nginx_enable=yes
sudo service nginx start

Execute sudo vim /usr/local/etc/nginx/invoiceplane.confe configure o Nginx para o InvoicePlane.

server {
  listen 80;
  listen [::]:80;

  server_name example.com;

  root /usr/local/www/invoiceplane;

  index index.php index.html;

  location / {
    try_files $uri $uri/ /index.php?$query_string;
  }

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

Salve o arquivo e saia.

Agora precisamos incluir invoiceplane.confno nginx.confarquivo principal .

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

include invoiceplane.conf;

Teste a configuração.

sudo nginx -t

Recarregue o Nginx.

sudo service nginx reload

Instalar o InvoicePlane

Baixe a versão estável mais recente do InvoicePlane e extraia o arquivo morto.

cd /usr/local/www/
sudo curl -O -J -L https://invoiceplane.com/download/v1.5.9
sudo unzip v1.5.9.zip
sudo rm v1.5.9.zip
sudo mv ip invoiceplane

Navegue para a /usr/local/www/invoiceplanepasta

cd /usr/local/www/invoiceplane

Faça uma cópia do ipconfig.php.examplearquivo e renomeie a cópia ipconfig.php.

sudo cp ipconfig.php.example ipconfig.php

Abra o ipconfig.phparquivo e adicione seu URL.

sudo vim ipconfig.php
# Something like this
IP_URL=http://example.com

NOTA: Não se esqueça de substituir o http://example.comURL por seu próprio URL.

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

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

Execute o instalador do InvoicePlane no seu navegador da Web e siga as instruções.

http://your-domain.com/index.php/setup

Após a conclusão da instalação, você poderá efetuar login no InvoicePlane usando o endereço de e-mail e a senha escolhidos durante a instalação.

Se você deseja proteger sua instalação, desabilite a instalação. Para fazer isso, substituir a linha DISABLE_SETUP=falsecom DISABLE_SETUP=truea sua ipconfig.phparquivo.



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.