Como instalar o Redmine no CentOS 7

O Redmine é uma ferramenta de gerenciamento de projetos gratuita e de código aberto baseada na Web. Está escrito em Ruby on Rails e suporta vários servidores de banco de dados para armazenar o banco de dados. É um aplicativo rico em recursos que suporta vários projetos, ACL baseado em funções e sistema de rastreamento de problemas. Ele também possui suporte a gráficos e calendário de Gantt, gerenciamento de arquivos, por wiki e fórum do projeto, além de muitos outros recursos. Ele suporta sistemas de controle de versão como Git, SVN ou CVS. Também é multilíngue, suportando até 49 idiomas.

Este guia foi escrito para o Redmine 3.4.4, mas também pode se aplicar a versões mais recentes.

Pré-requisitos

  • Uma instância do servidor Vultr CentOS 7.
  • Um usuário sudo .
  • Um nome de domínio apontado para o servidor.

Neste tutorial, usaremos 192.168.1.1como endereço IP público e redmine.example.comcomo nome de domínio apontado para a instância do Vultr. Certifique-se de substituir todas as ocorrências do exemplo de nome de domínio e endereço IP pelo nome 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 das dependências.

Instale o Apache

O Redmine é escrito em Ruby on Rails, portanto, exigiremos que o Phusion Passenger se integre ao servidor da web Apache para atender ao aplicativo. Instale o Apache.

sudo yum -y install httpd httpd-devel libcurl-devel

Para criar o aplicativo Redmine, precisaremos de algumas ferramentas de desenvolvimento também. Instale as ferramentas necessárias.

sudo yum -y install ImageMagick ImageMagick-devel git libxml2-devel libxslt-devel gcc bzip2 openssl-devel zlib-devel gdbm-devel ncurses-devel autoconf automake bison gcc-c++ libffi-devel libtool patch readline-devel sqlite-devel glibc-headers glibc-devel libyaml-devel libicu-devel libidn-devel

Instale o PostgreSQL

O Redmine suporta vários tipos de servidores de banco de dados, como MySQL, PostgreSQL e MSSQL. Neste tutorial, usaremos o PostgreSQL para hospedar o servidor de banco de dados Redmine.

O PostgreSQL é um sistema de banco de dados objeto-relacional. O yumrepositório padrão contém uma versão antiga do PostgreSQL; portanto, adicione o repositório PostgreSQL ao sistema.

sudo yum -y install https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-1.noarch.rpm

Instale o servidor de banco de dados PostgreSQL.

sudo yum -y install postgresql10-server postgresql10-contrib postgresql10 

Inicialize o banco de dados.

sudo /usr/pgsql-10/bin/postgresql-10-setup initdb

Inicie o servidor PostgreSQL e ative-o automaticamente no momento da inicialização.

sudo systemctl start postgresql-10
sudo systemctl enable postgresql-10

Mude a senha do usuário padrão do PostgreSQL.

sudo passwd postgres

Efetue login como usuário do PostgreSQL.

sudo su - postgres

Crie um novo usuário do PostgreSQL para o Redmine.

createuser redmine

Você tem permissão para usar qualquer nome de usuário em vez de redmine. O PostgreSQL fornece o psqlshell para executar consultas no banco de dados. Mude para o shell do PostgreSQL.

psql

Defina uma senha para o usuário recém-criado para o banco de dados Redmine.

ALTER USER redmine WITH ENCRYPTED password 'DBPassword';

Substitua DBPasswordpor uma senha segura. Crie um novo banco de dados para a instalação do Redmine.

CREATE DATABASE redmine WITH ENCODING='UTF8' OWNER=redmine;

Saia do psqlshell.

\q

Mude para o sudousuário.

exit

Edite o pg_hba.confarquivo para habilitar a autenticação baseada em MD5.

sudo nano /var/lib/pgsql/10/data/pg_hba.conf

Encontre as seguintes linhas e altere os valores peere identna METHODcoluna para truste md5, respectivamente.

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
host    all             all             127.0.0.1/32            ident
# IPv6 local connections:
host    all             all             ::1/128                 ident

Uma vez atualizada, a configuração deve ficar assim.

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

Reinicie o PostgreSQL para que as alterações entrem em vigor.

sudo systemctl restart postgresql-10

Instale mais algumas dependências necessárias do PostgreSQL.

sudo yum -y install libpqxx-devel protobuf-devel

Instale o Ruby

É recomendável usar um usuário sem privilégios para executar o aplicativo para mantê-lo isolado do restante do sistema. Crie um novo usuário para o Redmine e alterne para o usuário recém-criado.

sudo adduser redmine
sudo su - redmine

Instalaremos a versão mais recente do Ruby usando o Ruby Version Manager ou RVM. É usado para instalar e gerenciar várias versões do Ruby.

Adicione a chave GPG do RVM ao seu servidor.

gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB

Instale o RVM.

curl -sSL https://get.rvm.io | bash -s stable
source ~/.rvm/scripts/rvm

Busque a lista das versões disponíveis do Ruby.

rvm list known

Você verá uma longa lista de versões do Ruby.

[redmine@vultr ~]$ rvm list known
# MRI Rubies

[ruby-]1.8.6[-p420]
[ruby-]1.8.7[-head] # security released on head
[ruby-]1.9.1[-p431]
[ruby-]1.9.2[-p330]
[ruby-]1.9.3[-p551]
[ruby-]2.0.0[-p648]
[ruby-]2.1[.10]
[ruby-]2.2[.7]
[ruby-]2.3[.4]
[ruby-]2.4[.1]
ruby-head

...

Instale a versão mais recente do Ruby da lista.

rvm install 2.4

Use a versão instalada do Ruby.

rvm use 2.4

Você pode verificar sua versão.

ruby -v

Você verá uma saída semelhante.

[redmine@vultr ~]$ ruby -v
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]

Instale o empacotador, que é o gerenciador de dependências do aplicativo Ruby.

gem install bundler

Ruby agora está instalado. Antes de instalar o Redmine, precisaremos instalar o Phusion Passenger.

Instalar passageiro

Execute o seguinte comando para instalar o Passenger.

gem install passenger

Forneça permissão de execução ao diretório inicial do redmineusuário. O passageiro precisa executar os binários para atender ao aplicativo.

chmod o+x "/home/redmine"

Instale o módulo Apache para Passenger.

passenger-install-apache2-module

O script do instalador fará algumas perguntas. Primeiro, ele fornecerá informações sobre o processo de instalação. Em seguida, ele solicitará que você selecione o idioma que você usará. Como nosso aplicativo está escrito em Ruby on Rails, selecione Ruby no menu e pressione " Enter" para continuar.

Which languages are you interested in?

Use <space> to select.
If the menu doesn't display correctly, press '!'

 ‣ ⬢  Ruby
   ⬡  Python
   ⬡  Node.js
   ⬡  Meteor

O instalador agora verificará os requisitos. O instalador não encontrará dependências ausentes e prosseguirá automaticamente para compilar e instalar o módulo.

Depois que o módulo estiver instalado, você será solicitado a adicionar o módulo ao arquivo de configuração do Apache.

Almost there!

Please edit your Apache configuration file, and add these lines:

   LoadModule passenger_module /home/redmine/.rvm/gems/ruby-2.4.1/gems/passenger-5.1.12/buildout/apache2/mod_passenger.so
   <IfModule mod_passenger.c>
     PassengerRoot /home/redmine/.rvm/gems/ruby-2.4.1/gems/passenger-5.1.12
     PassengerDefaultRuby /home/redmine/.rvm/gems/ruby-2.4.1/wrappers/ruby
   </IfModule>

After you restart Apache, you are ready to deploy any number of web
applications on Apache, with a minimum amount of configuration!

Press ENTER when you are done editing.

Ignoraremos isso por enquanto e o concluiremos posteriormente no tutorial, pois o usuário com o qual estamos logados agora não tem sudopermissões. Pressione " Enter" para pular esta etapa.

Por fim, o script do instalador validará a instalação e você verá um aviso informando que o módulo Passenger não está especificado na configuração do Apache.

Validating installation...

 * Checking whether this Passenger install is in PATH... ✓
 * Checking whether there are no other Passenger installations... ✓
 * Checking whether Apache is installed... ✓
 * Checking whether the Passenger module is correctly configured in Apache... (!)

   You did not specify 'LoadModule passenger_module' in any of your Apache
   configuration files. Please paste the configuration snippet that this
   installer printed earlier, into one of your Apache configuration files, such
   as /etc/httpd/conf/httpd.conf.


Detected 0 error(s), 1 warning(s).
Press ENTER to continue.

Agora que instalamos o módulo Passenger para Apache, faça o download e instale o Redmine.

Instale o Redmine

Faça o download da versão mais recente do Redmine na página oficial de download do Redmine .

cd ~
wget http://www.redmine.org/releases/redmine-3.4.4.tar.gz

Extraia o arquivo morto e renomeie o diretório por conveniência.

tar -xf redmine-*.tar.gz
mv redmine-*/ redmine/

Copie os arquivos de configuração de exemplo para seu local de produção.

cd redmine
cp config/configuration.yml.example config/configuration.yml
cp config/database.yml.example config/database.yml

Abra o arquivo de configuração do banco de dados que acabamos de copiar para inserir os detalhes do banco de dados.

nano config/database.yml

Por padrão, o arquivo de banco de dados está configurado para o MySQL. Encontre as configurações para produção e desenvolvimento, e teste que usa o adaptador MySQL. Comente todas essas linhas.

#production:
#  adapter: mysql2
#  database: redmine
#  host: localhost
#  username: root
#  password: ""
#  encoding: utf8

#development:
#  adapter: mysql2
#  database: redmine_development
#  host: localhost
#  username: root
#  password: ""
#  encoding: utf8

#test:
#  adapter: mysql2
#  database: redmine_test
#  host: localhost
#  username: root
#  password: ""
#  encoding: utf8

Furthur, encontre as linhas comentadas, com productionconfiguração para o postgresqladaptador. Remova o comentário dessas linhas e atualize o nome do banco de dados e as credenciais do usuário. Certifique-se de usar o recuo correto, que é dois espaços.

production:
  adapter: postgresql
  database: redmine
  host: localhost
  username: redmine
  password: "DBPassword"

Configure o aplicativo para usar a configuração do PostgreSQL.

bundle config build.pg --with-pg-config=/usr/pgsql-10/bin/pg_config

Instale as dependências do aplicativo exigidas pelo aplicativo.

bundle install --without development test

Você verá a seguinte mensagem no final da instalação.

Installing roadie-rails 1.1.1
Bundle complete! 31 Gemfile dependencies, 55 gems now installed.
Gems in the groups development and test were not installed.
Use `bundle info [gemname]` to see where a bundled gem is installed.

O comando a seguir gera tokens secretos usados ​​para codificar os dados da sessão.

bundle exec rake generate_secret_token

Escreva o banco de dados PostgreSQL.

RAILS_ENV=production bundle exec rake db:migrate

Execute o seguinte comando, que grava os dados padrão no banco de dados PostgreSQL.

RAILS_ENV=production bundle exec rake redmine:load_default_data

O comando acima solicitará que você escolha o idioma padrão a ser usado com o aplicativo. A opção padrão é inglês; escolha de acordo com sua preferência.

[redmine@vultr redmine]$ RAILS_ENV=production bundle exec rake redmine:load_default_data

Select language: ar, az, bg, bs, ca, cs, da, de, el, en, en-GB, es, es-PA, et, eu, fa, fi, fr, gl, he, hr, hu, id, it, ja, ko, lt, lv, mk, mn, nl, no, pl, pt, pt-BR, ro, ru, sk, sl, sq, sr, sr-YU, sv, th, tr, uk, vi, zh, zh-TW [en]
====================================
Default configuration data loaded.

A instalação do aplicativo Redmine está concluída. Altere a propriedade e as permissões dos diretórios e arquivos.

mkdir -p tmp tmp/pdf public/plugin_assets
chown -R redmine:redmine files log tmp public/plugin_assets
chmod -R 755 files log tmp public/plugin_assets

Configuramos tudo o que precisamos do usuário não privilegiado. Volte para o sudousuário executando su - <username>.

Configurar Apache

Adicione o módulo Passenger para Apache ao arquivo de configuração do Apache. Isso carregará automaticamente o módulo Passenger.

echo "LoadModule passenger_module /home/redmine/.rvm/gems/ruby-2.4.1/gems/passenger-5.1.12/buildout/apache2/mod_passenger.so" | sudo tee -a /etc/httpd/conf.modules.d/00-base.conf

Crie um novo arquivo de host virtual para o seu aplicativo Redmine.

sudo nano /etc/httpd/conf.d/redmine.conf

Preencha o arquivo com o seguinte conteúdo.

<VirtualHost *:80>
    ServerName redmine.example.com

    DocumentRoot /home/redmine/redmine/public

    PassengerRoot /home/redmine/.rvm/gems/ruby-2.4.1/gems/passenger-5.1.12
    PassengerRuby /home/redmine/.rvm/gems/ruby-2.4.1/wrappers/ruby
    PassengerUser redmine

    <Directory /home/redmine/redmine/public>
      Allow from all
      Options -MultiViews
      Require all granted
    </Directory>
</VirtualHost>

Certifique-se de substituir redmine.example.compelo seu nome de domínio real. Além disso, verifique se o caminho para PassengerRoote PassengerRubyestá correto. O caminho para os binários pode mudar quando houver uma nova versão do Ruby ou do Passenger. Para encontrar esses caminhos, execute o seguinte comando.

sudo su redmine -c "passenger-config about ruby-command"

Você receberá a seguinte saída.

[user@vultr ~]$ sudo su redmine -c "passenger-config about ruby-command"
passenger-config was invoked through the following Ruby interpreter:
  Command: /home/redmine/.rvm/gems/ruby-2.4.1/wrappers/ruby
  Version: ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]
  To use in Apache: PassengerRuby /home/redmine/.rvm/gems/ruby-2.4.1/wrappers/ruby
  To use in Nginx : passenger_ruby /home/redmine/.rvm/gems/ruby-2.4.1/wrappers/ruby
  To use with Standalone: /home/redmine/.rvm/gems/ruby-2.4.1/wrappers/ruby /home/redmine/.rvm/gems/ruby-2.4.1/gems/passenger-5.1.12/bin/passenger start

Depois que o arquivo do host virtual for criado, reinicie o servidor da web Apache.

sudo systemctl restart httpd

Modifique a configuração do firewall para permitir a porta 80através do firewall.

sudo firewall-cmd --zone=public --add-service=http --permanent
sudo firewall-cmd --reload

Agora você pode acessar sua interface do Redmine http://redmine.example.com. Entre com nome de usuário admine senha admin. No seu primeiro login, o Redmine solicitará que você atualize a senha.

Protegendo o Apache com Let's Encrypt SSL

Como nossa instalação do Redmine está em um servidor público, é recomendável usar o SSL para garantir a troca de dados do servidor.

Instale o Certbot, que é o aplicativo cliente do Let's Encrypt CA.

sudo yum -y install epel-release
sudo yum -y install certbot mod_ssl

Antes de solicitar os certificados, você precisará permitir a porta 80e / 443ou serviços HTTPe padrão HTTPSatravés do firewall. Como já permitimos a porta 80anteriormente, vamos permitir a porta 443.

sudo firewall-cmd --zone=public --add-service=https --permanent
sudo firewall-cmd --reload

Nota: Para obter certificados da Let's Encrypt CA, o domínio para o qual os certificados devem ser gerados deve estar apontado para o servidor. Caso contrário, faça as alterações necessárias nos registros DNS do domínio e aguarde a propagação do DNS antes de fazer a solicitação de certificado novamente. O Certbot verifica a autoridade do domínio antes de fornecer os certificados.

Gere os certificados SSL.

sudo certbot certonly --webroot -w /home/redmine/redmine/public -d redmine.example.com

É provável que os certificados gerados sejam armazenados /etc/letsencrypt/live/redmine.example.com/. O certificado SSL será armazenado como cert.peme a chave privada será armazenada como privkey.pem.

Os certificados Let's Encrypt expiram em 90 dias, portanto, é recomendável configurar a renovação automática dos certificados usando trabalhos Cron.

Abra o arquivo de trabalho Cron para o rootusuário.

sudo crontab -e

Adicione a seguinte linha no final do arquivo.

30 5 * * * /usr/bin/certbot renew --quiet

O trabalho acima de Cron será executado todos os dias às 5:30 da manhã. Se o certificado estiver vencido, ele será renovado automaticamente.

Edite o arquivo do host virtual que criamos anteriormente para o Redmine.

sudo nano /etc/httpd/conf.d/redmine.conf

Modifique o arquivo host virtual para parecer com o seguinte.

<VirtualHost *:80>
    Redirect permanent / https://www.example.com/
    ServerName redmine.example.com
</VirtualHost>

<VirtualHost *:443>
    ServerAdmin [email protected]
    ServerName redmine.example.com
    DocumentRoot "/home/redmine/redmine/public"
    <Directory "/home/redmine/redmine/public">
        Options None
        Require all granted
    </Directory>
    PassengerAppEnv production
    PassengerRoot /home/redmine/.rvm/gems/ruby-2.4.1/gems/passenger-5.1.12
    PassengerRuby /home/redmine/.rvm/gems/ruby-2.4.1/wrappers/ruby
    PassengerUser redmine
    PassengerHighPerformance on

    SSLEngine on
    SSLCertificateFile      /etc/letsencrypt/live/redmine.example.com/cert.pem
    SSLCertificateKeyFile   /etc/letsencrypt/live/redmine.example.com/privkey.pem
    SSLCertificateChainFile /etc/letsencrypt/live/redmine.example.com/chain.pem

    SSLProtocol             all -SSLv2 -SSLv3
    SSLHonorCipherOrder     on
    SSLCipherSuite          ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:ECDHE-ECDSA-DES-CBC3-SHA:ECDHE-RSA-DES-CBC3-SHA:EDH-RSA-DES-CBC3-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:DES-CBC3-SHA:!DSS

    <IfModule headers_module>
        Header always edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure
        Header always set Strict-Transport-Security "max-age=15768000; includeSubDomains"
    </IfModule>
</VirtualHost>

Salve o arquivo e saia do editor.

Reinicie o Apache para que as alterações tenham efeito.

sudo systemctl restart httpd

Agora você pode acessar Redmine mais HTTPSsobre https://redmine.example.com.

Parabéns, você instalou o Redmine com êxito na sua instância do CentOS 7. Comece a desenvolver seu projeto, criando ou importando seu projeto.



Leave a Comment

Configure sua própria rede privada com o OpenVPN

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

Como instalar e configurar o CyberPanel no servidor CentOS 7

Como instalar e configurar o CyberPanel no servidor CentOS 7

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

Instale o eSpeak no CentOS 7

Instale o eSpeak no CentOS 7

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

Monitore seus dispositivos usando o LibreNMS no CentOS 7

Monitore seus dispositivos usando o LibreNMS no CentOS 7

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

Como usar o Sudo no Debian, CentOS e FreeBSD

Como usar o Sudo no Debian, CentOS e FreeBSD

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

Como instalar o RabbitMQ no CentOS 7

Como instalar o RabbitMQ no CentOS 7

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

Configurar o Nginx-RTMP no CentOS 7

Configurar o Nginx-RTMP no CentOS 7

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

Como instalar o Gradle no CentOS 7

Como instalar o Gradle no CentOS 7

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

Instale um servidor FTP com ProFTPd no CentOS 6 ou CentOS 7

Instale um servidor FTP com ProFTPd no CentOS 6 ou CentOS 7

Usando um sistema diferente? Neste guia, veremos como configurar um servidor FTP (ProFTPd) para transferir arquivos entre o seu PC e o seu servidor.

Instalando o Netdata no CentOS 7

Instalando o Netdata no CentOS 7

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:

Como instalar o Apache Cassandra 3.11.x no CentOS 7

Como instalar o Apache Cassandra 3.11.x no CentOS 7

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

Como instalar um servidor Just Cause 2 (JC2-MP) no CentOS 7

Como instalar um servidor Just Cause 2 (JC2-MP) no CentOS 7

Neste tutorial, aprenda como configurar um servidor multiplayer Just Cause 2. Pré-requisitos Verifique se o sistema está totalmente atualizado antes de começarmos

Como instalar o servidor Starbound no CentOS 7

Como instalar o servidor Starbound no CentOS 7

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

Instalando e configurando o ZNC no CentOS 7

Instalando e configurando o ZNC no CentOS 7

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

Como instalar o Django no CentOS 7

Como instalar o Django no CentOS 7

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ê

Como instalar o CMS de outubro no CentOS 7

Como instalar o CMS de outubro no CentOS 7

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

Como configurar a autenticação de dois fatores (2FA) para SSH no CentOS 6 usando o Google Authenticator

Como configurar a autenticação de dois fatores (2FA) para SSH no CentOS 6 usando o Google Authenticator

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

Como instalar o MyCLI no Linux (CentOS, Debian, Fedora e Ubuntu)

Como instalar o MyCLI no Linux (CentOS, Debian, Fedora e Ubuntu)

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

Como instalar o Directus 6.4 CMS em um CentOS 7 LAMP VPS

Como instalar o Directus 6.4 CMS em um CentOS 7 LAMP VPS

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

Como instalar o Reader Self 3.5 RSS Reader em um CentOS 7 LAMP VPS

Como instalar o Reader Self 3.5 RSS Reader em um CentOS 7 LAMP VPS

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

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.