Configure sua própria rede privada com o OpenVPN
O Vultr oferece uma incrível conectividade de rede privada para servidores executando no mesmo local. Mas às vezes você quer dois servidores em países diferentes
O ERP ou Enterprise Resource Planning é um conjunto de aplicativos corporativos usado para gerenciar os principais processos de negócios. O ERPNext é um aplicativo ERP auto-hospedado de código aberto e gratuito, escrito em Python. Ele usa o Node.js para o front end e o MariaDB para armazenar seus dados. O ERPNext fornece uma interface da web fácil de usar que permite que as empresas gerenciem as tarefas do dia a dia. Ele contém módulos para contabilidade, CRM, GRH, manufatura, PDV, gerenciamento de projetos, compras, gerenciamento de vendas, gerenciamento de armazéns e muito mais. O ERPNext pode ser usado para gerenciar diferentes setores, como prestadores de serviços, manufatura, varejo e escolas.
Neste tutorial, instalaremos o ERPNext no CentOS 7.
Neste tutorial, usaremos erp.example.com
como o nome de domínio apontado para o servidor. Substitua todas as ocorrências erp.example.com
por seu nome de domínio real.
Atualize seu sistema básico usando o guia " Como atualizar o CentOS 7 ". Depois que seu sistema for atualizado, continue com a instalação do Python.
O ERPNext precisa do Python versão 2.7 para funcionar. O Python 2.7 é instalado por padrão em todas as instâncias do servidor CentOS. Você pode verificar se a versão instalada do Python executando:
python -V
Você deve obter uma saída semelhante.
[user@vultr ~]$ python -V
Python 2.7.5
Embora a versão instalada do Python não seja a mais recente, ela funciona sem problemas. Alterar a versão padrão do Python pode interromper o YUM.
Instale os pacotes no Development tools
grupo necessários para compilar os arquivos do instalador.
sudo yum groupinstall -y "Development tools"
Instale mais algumas dependências:
sudo yum install -y redhat-lsb-core git python-setuptools python-devel openssl-devel libffi-devel
Instale a pip
ferramenta do Python . Pip é o gerenciador de dependências dos pacotes Python.
wget https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py
O comando acima instalará o Pip no seu sistema. Para garantir que você tenha a versão mais recente pip
e setuptools
execute:
sudo pip install --upgrade pip setuptools
Instale o Ansible usando o Pip. O Ansible automatiza o provisionamento de software, o gerenciamento de configurações e a implantação de aplicativos.
sudo pip install ansible
MariaDB é um fork do servidor de banco de dados MySQL. Instale o MariaDB executando.
sudo yum -y install mariadb mariadb-server mysql-devel
O mecanismo de armazenamento Barracuda é necessário para a criação de bancos de dados ERPNext, portanto, você precisará configurar o MariaDB para usar o mecanismo de armazenamento Barracuda. Edite o arquivo de configuração padrão do MariaDB my.cnf
.
sudo nano /etc/my.cnf
Adicione as seguintes linhas abaixo da symbolic-links=0
linha.
innodb-file-format=barracuda
innodb-file-per-table=1
innodb-large-prefix=1
character-set-client-handshake = FALSE
character-set-server = utf8mb4
collation-server = utf8mb4_unicode_ci
[mysql]
default-character-set = utf8mb4
Inicie o MariaDB e ative-o automaticamente no momento da inicialização.
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
Antes de configurar o banco de dados, você precisará proteger o MariaDB. Você pode protegê-lo executando o mysql_secure_installation
script:
sudo mysql_secure_installation
Você será solicitado a senha de root atual do MariaDB. Por padrão, não há senha de root definida no MariaDB. Pressione a tecla "Enter" para continuar. Defina uma senha forte para o usuário root do seu servidor MariaDB e responda "Y" a todas as outras perguntas feitas. As perguntas feitas são auto-explicativas.
Como o repositório EPEL é instalado por padrão em todas as instâncias do Vultr CentOS 7, você pode instalar diretamente o Redis e o Nginx. Mas, para instalar a versão mais recente do Node.js., você precisará adicionar o repositório Nodesource ao seu sistema.
Adicione o repositório Nodesource para o Node.js 8.x.
sudo curl --silent --location https://rpm.nodesource.com/setup_8.x | sudo bash -
Instale Nginx, Nodejs e Redis:
sudo yum -y install nginx nodejs redis
Inicie o Nginx e ative-o no momento da inicialização executando:
sudo systemctl start nginx
sudo systemctl enable nginx
Inicie o Redis e ative-o no momento da inicialização executando:
sudo systemctl start redis
sudo systemctl enable redis
O wkhtmltopdf
programa é uma ferramenta de linha de comando que converte HTML em PDF usando o mecanismo de renderização QT Webkit. Instale as dependências necessárias:
sudo yum -y install libXrender libXext xorg-x11-fonts-75dpi xorg-x11-fonts-Type1
Baixe a versão mais recente do wkhtmltopdf
.
wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.4/wkhtmltox-0.12.4_linux-generic-amd64.tar.xz
Extraia o archive executando:
sudo tar -xf wkhtmltox-0.12.4_linux-generic-amd64.tar.xz -C /opt
O comando acima irá extrair o arquivo para /opt/wkhtmltox
. Criar um link simbólico para que wkhtmltopdf
e wkhtmltoimage
pode ser executado em todo o mundo como um comando.
sudo ln -s /opt/wkhtmltox/bin/wkhtmltopdf /usr/bin/wkhtmltopdf
sudo ln -s /opt/wkhtmltox/bin/wkhtmltoimage /usr/bin/wkhtmltoimage
Agora você pode executar o wkhtmltopdf -V
comando para verificar se está funcionando. Você verá:
[user@vultr ~]$ wkhtmltopdf -V
wkhtmltopdf 0.12.4 (with patched qt)
Neste ponto, temos todas as dependências necessárias instaladas. Agora você pode prosseguir com a instalação do Bench.
Bench
é um utilitário de linha de comando fornecido pela Frappe para instalar e gerenciar o aplicativo ERPNext em um sistema baseado em Unix para fins de desenvolvimento e produção. O Bench também pode criar e gerenciar o Nginx e a configuração do supervisor.
Crie um novo usuário para executar processos de bancada no ambiente isolado.
sudo adduser bench -d /opt/bench
Mude a senha do usuário.
sudo passwd bench
Forneça sudo
permissões ao bench
usuário.
sudo usermod -aG wheel bench
Efetue login como o bench
usuário recém-criado :
sudo su - bench
Clone o repositório do Bench em /opt/bench
:
cd /opt/bench
git clone https://github.com/frappe/bench bench-repo
Instale o Bench usando pip
.
sudo pip install -e bench-repo
Depois que o Bench estiver instalado, continue com a instalação do ERPNext usando o Bench.
Inicialize um diretório de bancada com a estrutura frappe instalada. Para manter tudo arrumado, trabalharemos no /opt/bench
diretório O Bench também configurará backups regulares e atualizações automáticas uma vez por dia.
cd /opt/bench
bench init erpnext && cd erpnext
Crie um novo site Frappe:
bench new-site erp.example.com
O comando acima solicitará a senha raiz do MySQL. Forneça a senha que você definiu para o usuário root do MySQL anteriormente. Também solicitará que você defina uma nova senha para a conta de administrador. Você precisará dessa senha posteriormente para efetuar login no painel do administrador.
Faça o download dos arquivos de instalação do ERPNext do repositório git remoto usando o Bench.
bench get-app erpnext https://github.com/frappe/erpnext
Instale o ERPNext no seu site recém-criado:
bench --site erp.example.com install-app erpnext
O ERPNext está instalado no seu servidor. Você pode iniciar o aplicativo imediatamente para verificar se o aplicativo foi iniciado com êxito:
bench start
No entanto, você deve interromper a execução e prosseguir para configurar o aplicativo para uso em produção.
Por padrão, o aplicativo ERPNext atende na porta 8000, e não na porta HTTP padrão 80. Além disso, a execução do servidor da Web incorporado para uso em produção não é recomendada, pois estaremos expondo o servidor ao mundo. Portanto, você deve usar um servidor Web de produção como proxy reverso, como Apache ou Nginx. Neste tutorial, usaremos o Nginx como um proxy reverso, pois ele pode ser configurado automaticamente usando o Bench. O Bench pode gerar e instalar automaticamente a configuração de acordo com a configuração do ERPNext.
Embora possamos iniciar o aplicativo usando o comando acima, a execução do ERPNext será interrompida assim que você fechar o terminal. Para superar esse problema, recomendo usar o Supervisor, que é muito útil para executar o aplicativo continuamente em um ambiente de produção. Supervisor é um sistema de controle de processo que permite monitorar e controlar vários processos nos sistemas operacionais Linux. Uma vez configurado, o Supervisor inicia automaticamente o aplicativo no momento da inicialização e nas falhas. O Bench pode configurar automaticamente o Supervisor para o aplicativo ERPNext.
Supervisor de instalação:
sudo yum -y install supervisor
Inicie o Supervisor e ative-o automaticamente no momento da inicialização:
sudo systemctl start supervisord
sudo systemctl enable supervisord
Banco de instalação para uso em produção:
sudo bench setup production bench
O comando acima pode solicitar que você substitua o arquivo de configuração padrão existente do Supervisor por um novo. Escolha y
continuar. O Bench adiciona vários processos ao arquivo de configuração do Supervisor. O comando acima também perguntará se você deseja substituir a configuração atual do Nginx por uma nova. Entre y
para continuar. Depois que o Bench concluir a instalação da configuração, forneça outros usuários para executar os arquivos no diretório inicial do usuário do Bench.
chmod o+x /opt/bench/
Se você estiver executando um firewall em seu servidor, precisará configurá-lo para definir uma exceção para o serviço HTTP. Permita que o proxy reverso do Nginx se conecte de fora da rede.
sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --reload
Agora você pode acessar o site em http://erp.example.com
.
Você pode verificar o status dos processos executando:
sudo supervisorctl status all
Você deve ver a seguinte saída:
[bench@vultr ~]$ sudo supervisorctl status all
erpnext-redis:erpnext-redis-cache RUNNING pid 2554, uptime 1:06:58
erpnext-redis:erpnext-redis-queue RUNNING pid 2553, uptime 1:06:58
erpnext-redis:erpnext-redis-socketio RUNNING pid 2555, uptime 1:06:58
erpnext-web:erpnext-frappe-web RUNNING pid 2559, uptime 1:06:58
erpnext-web:erpnext-node-socketio RUNNING pid 2556, uptime 1:06:58
erpnext-workers:erpnext-frappe-default-worker-0 RUNNING pid 2549, uptime 1:06:58
erpnext-workers:erpnext-frappe-long-worker-0 RUNNING pid 2551, uptime 1:06:58
erpnext-workers:erpnext-frappe-schedule RUNNING pid 2550, uptime 1:06:58
erpnext-workers:erpnext-frappe-short-worker-0 RUNNING pid 2552, uptime 1:06:58
Para parar todos os processos do ERPNext, use:
sudo supervisorctl stop all
Para iniciar todos os processos do ERPNext, use:
sudo supervisorctl start all
Let's Encrypt fornece certificados SSL gratuitos para os usuários. O SSL pode ser instalado manual ou automaticamente através do Bench. O Bench pode instalar automaticamente o cliente Let's Encrypt e obter os certificados. Além disso, ele atualiza automaticamente a configuração do Nginx para usar os certificados.
O nome do domínio que você está usando para obter os certificados da autoridade de certificação Let's Encrypt deve ser apontado para o servidor. O cliente verifica a autoridade do domínio antes de emitir os certificados.
Habilite a multilocação DNS para o aplicativo ERPNext.
bench config dns_multitenant on
Execute o Bench para configurar o Let's Encrypt no seu site:
sudo bench setup lets-encrypt erp.example.com
Durante a execução do script, o cliente Let's Encrypt solicitará que você pare temporariamente o servidor da web Nginx. Ele instalará automaticamente os pacotes necessários e o cliente Let's Encrypt. O cliente solicitará seu endereço de email. Você também precisará aceitar os termos e condições. Depois que os certificados forem gerados, o Bench também gerará a nova configuração do Nginx, que usa os certificados SSL. Você será solicitado antes de substituir a configuração existente. O Bench também cria uma crontab
entrada para renovar automaticamente os certificados todos os meses.
Por fim, ative o agendador para executar automaticamente os trabalhos agendados:
bench enable-scheduler
Você deveria ver:
[bench@vultr erpnext]$ bench enable-scheduler
Enabled for erp.example.com
Depois que o processo terminar, você poderá acessar seu aplicativo em https://erp.example.com
. Entre com o nome de usuário Administrator
e a senha que você definiu durante a instalação. Você será levado à mesa onde precisará fornecer informações para definir o ERPNext ERP de acordo com a sua empresa. Agora você pode usar o aplicativo para gerenciar sua empresa.
Parabéns, você tem um aplicativo ERPNext totalmente funcional instalado no seu servidor CentOS 7.
O Vultr oferece uma incrível conectividade de rede privada para servidores executando no mesmo local. Mas às vezes você quer dois servidores em países diferentes
Usando um sistema diferente? Introdução O CyberPanel é um dos primeiros painéis de controle do mercado, tanto de código aberto quanto de OpenLiteSpeed. What thi
Usando um sistema diferente? O ESpeak pode gerar arquivos de áudio de conversão de texto em fala (TTS). Isso pode ser útil por vários motivos, como criar seu próprio Turim
Usando um sistema diferente? O LibreNMS é um sistema de monitoramento de rede de código aberto completo. Ele usa o SNMP para obter os dados de diferentes dispositivos. Uma variedade
Usar um usuário sudo para acessar um servidor e executar comandos no nível raiz é uma prática muito comum entre o Linux e o Unix Systems Administrator. O uso de um sud
Usando um sistema diferente? O RabbitMQ é um intermediário de mensagens de código aberto amplamente usado, escrito na linguagem de programação Erlang. Como um middleware orientado a mensagens
Usando um sistema diferente? O RTMP é ótimo para veicular conteúdo ao vivo. Quando o RTMP é emparelhado com o FFmpeg, os fluxos podem ser convertidos em várias qualidades. Vultr i
Usando um sistema diferente? Gradle é um conjunto de ferramentas de automação de compilação de código aberto e gratuito baseado nos conceitos do Apache Ant e Apache Maven. Gradle fornece
Usando um sistema diferente? Neste guia, veremos como configurar um servidor FTP (ProFTPd) para transferir arquivos entre o seu PC e o seu servidor.
Usando um sistema diferente? O Netdata é uma estrela em ascensão no campo do monitoramento de métricas do sistema em tempo real. Comparado com outras ferramentas do mesmo tipo, o Netdata:
Usando um sistema diferente? O Apache Cassandra é um sistema de gerenciamento de banco de dados NoSQL gratuito e de código aberto, projetado para fornecer escalabilidade, alta
Neste tutorial, aprenda como configurar um servidor multiplayer Just Cause 2. Pré-requisitos Verifique se o sistema está totalmente atualizado antes de começarmos
Usando um sistema diferente? Neste tutorial, explicarei como configurar um servidor Starbound no CentOS 7. Pré-requisitos Você precisa ser o proprietário deste jogo
O ZNC é um segurança IRC gratuito e de código aberto que permanece permanentemente conectado a uma rede para que os clientes possam receber mensagens enviadas enquanto estiverem offline. Thi
O Django é uma estrutura Python popular para escrever aplicativos da web. Com o Django, você pode criar aplicativos mais rapidamente, sem reinventar a roda. Se você quiser você
Outubro é um sistema de gerenciamento de conteúdo de código aberto baseado no Laravel PHP Framework. Com uma interface elegante e uma arquitetura modular concisa
Após alterar a porta SSH, configurar a batida na porta e fazer outros ajustes para a segurança SSH, talvez haja mais uma maneira de protegê-lo
Introdução O MyCLI é um cliente de linha de comando para MySQL e MariaDB que permite concluir automaticamente e ajuda na sintaxe de seus comandos SQL. MyCL
Usando um sistema diferente? O Directus 6.4 CMS é um sistema de gerenciamento de conteúdo sem cabeça (CMS) poderoso e flexível, gratuito e de código aberto que fornece
Usando um sistema diferente? O Reader Self 3.5 é um leitor de RSS auto-hospedado, simples e flexível, gratuito e de código aberto, e uma alternativa ao Google Reader. Leitor Sel
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, 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.
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+
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.
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
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
À 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
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.