Pesquisa de site

Como instalar Magento no Rocky Linux e AlmaLinux


Escrito em PHP, Magento é uma plataforma popular de comércio eletrônico versátil e de código aberto que fornece às empresas um carrinho de compras online. Ele aproveita vários frameworks PHP, como Symfony e Laminas, para aprimorar sua funcionalidade e usabilidade.

Magento fornece um painel de controle de administrador que ajuda você a criar sua loja online, gerenciar catálogo de produtos, monitorar transações e faturas e acompanhar o comportamento de compra dos clientes, entre muitas outras tarefas.

Sem mais delongas, vamos começar a instalar o Magento no Rocky Linux e no AlmaLinux.

Pré-requisitos

Para instalar o Magento com sucesso, primeiro é necessário ter uma pilha LAMP instalada em:

  • Como instalar o LAMP Stack no Rocky Linux
  • Como instalar a pilha LAMP no AlmaLinux

Além disso, certifique-se de ter um nome de domínio totalmente qualificado (FQDN) apontando para o endereço IP público do servidor. Neste guia, usaremos o domínio linuxtechgeek.info.

Por último, certifique-se de ter acesso SSH com um usuário sudo configurado.

Etapa 1: instalar módulos PHP adicionais e outras dependências

Começaremos com a instalação dos módulos php que são um requisito para a instalação do Magento.

sudo dnf install php-mysqlnd php-xml php-cli php-soap php-pd php-opcache php-iconv php-bcmath php-gd o  php-intl php-mbstring php-json  php-zip unzip wget -y

Depois de instalado, acesse e edite o arquivo de configuração php.ini.

sudo vim /etc/php.ini

Certifique-se de que os valores fornecidos abaixo refletem o que você possui. Claro, defina seu valor date.timezone de acordo com seu fuso horário.

memory_limit = 1024M
upload_max_filesize = 256M
zlib.output_compression = on
max_execution_time = 18000
date.timezone = Europe/London

Salve as alterações e saia.

Em seguida, você precisa instalar a extensão PHP sódio – libsodium. Este é um módulo que oferece funcionalidades de criptografia de forma fácil e eficaz. Para instalar o módulo, precisamos instalar o repositório EPEL que fornece pacotes e dependências adicionais para suportar sua instalação.

Para instalar o EPEL, execute o comando:

sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm

Em seguida, instale dependências adicionais.

sudo dnf install php-cli libsodium php-pear php-devel libsodium-devel make

Com todos os pacotes e dependências instalados, instale o módulo PHP libsodium executando os seguintes comandos nesta ordem.

sudo pecl channel-update pecl.php.net
sudo pecl install libsodium

Volte para o arquivo php.ini.

sudo vim /etc/php.ini 

Anexe a seguinte linha.

extension=sodium.so

Salvar e sair.

Para verificar se o PHP sódio foi instalado execute o comando:

php -i | grep sodium

Ótimo! Agora prossiga para a próxima etapa.

Passo 2: Criar banco de dados para Magento

A próxima etapa envolve a criação de um banco de dados e de um usuário de banco de dados para Magento. Portanto, faça login no servidor de banco de dados MariaDB:

sudo mysql -u root -p

Crie um banco de dados e um usuário de banco de dados executando as consultas SQL a seguir.

CREATE DATABASE magento_db;
CREATE USER 'magento_user'@'localhost' IDENTIFIED BY 'password';

A seguir, conceda privilégios ao usuário do banco de dados no banco de dados Magento.

GRANT ALL ON magento_db.* TO 'magento_user'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;

Por fim, permita que as alterações entrem em vigor recarregando as tabelas de concessões.

FLUSH PRIVILEGES;
EXIT;

Abaixo está um resumo das consultas SQL.

Etapa 3: instalar e configurar o Elasticsearch no Linux

A próxima etapa é instalar o Elasticsearch. Este é um mecanismo de pesquisa e análise distribuído de código aberto baseado no Apache Lucene. Ele é usado para pesquisar, armazenar e analisar grandes volumes de dados de forma rápida e conveniente.

Elasticsearch é escrito em Java e, como pré-requisito, precisamos instalar o Java primeiro. Vamos instalar o OpenJDK 11, que é a versão estável mais recente do OpenJDK.

sudo dnf install openjdk-11-jdk -y

Assim que a instalação do OpenJDK for concluída, verifique a versão do Java instalada.

java -version

Em seguida, importe a chave Elasticsearch GPG.

sudo rpm --import https://artifacts.elastic.co/GPG-KEY-elasticsearch

Feito isso, crie um repositório para o Elasticsearch.

sudo vim /etc/yum.repos.d/elasticsearch.repo

Cole o seguinte conteúdo.

[elasticsearch-7.x]
name=Elasticsearch repository for 7.x packages
baseurl=https://artifacts.elastic.co/packages/7.x/yum
gpgcheck=1
gpgkey=https://artifacts.elastic.co/GPG-KEY-elasticsearch
enabled=1
autorefresh=1
type=rpm-md

Salve as alterações e saia do arquivo do repositório Elasticsearch.

Agora use o gerenciador de pacotes DNF para instalar o elasticsearch.

sudo dnf install elasticsearch

Algumas configurações adicionais são necessárias para o Elasticsearch. Portanto, edite o arquivo elasticsearch.yml.

sudo vim etc/elasticsearch/elasticsearch.yml

Remova o comentário das linhas abaixo e certifique-se de que a diretiva network.host esteja definida como 127.0.0.1.

cluster.name: my-application
     node.name: node-1
     path.data: /var/lib/elasticsearch
     network.host: 127.0.0.1

Salve as alterações e saia do arquivo.

Agora, habilite o serviço Elasticsearch para iniciar no momento da inicialização e inicie o serviço usando os seguintes comandos.

sudo systemctl enable elasticsearch
sudo systemctl start elasticsearch

Em seguida, verifique o status de execução do Elasticsearch.

sudo systemctl status elasticsearch

Além disso, você pode testar o Elasticsearch enviando uma solicitação GET usando o comando curl conforme mostrado.

curl -X GET ‘localhost:9200’

Você deve obter a seguinte saída no formato JSON.

Esta é uma confirmação de que o Elasticsearch foi instalado com sucesso.

Etapa 4: Baixe e instale o Composer no Linux

O próximo passo é instalar o composer que é um gerenciador de pacotes PHP. Então, primeiro, baixe o arquivo do instalador.

sudo curl -sS https://getcomposer.org/installer | php

Em seguida, mova o arquivo para o caminho /usr/local/bin/.

sudo mv composer.phar /usr/local/bin/composer

Para confirmar a instalação, execute o comando:

composer -V

Etapa 5: Baixe e instale Magento no Linux

O próximo passo é baixar o arquivo zip Magento. Atualmente, a versão mais recente é o Magento 2.4.2. Usando o utilitário de linha de comando wget, baixe o arquivo de instalação da seguinte maneira.

wget https://github.com/magento/magento2/archive/refs/tags/2.4.2.zip

Depois de baixado, extraia o conteúdo do arquivo compactado.

unzip 2.4.2.zip

Em seguida, mova o diretório descompactado para o diretório raiz do documento e renomeie-o para magento2 para simplificar.

sudo mv magento2-* /var/www/html/magento2

Em seguida, navegue até o diretório magento

cd /var/www/html/magento2

E use o compositor para instalar todas as dependências do PHP.

sudo /usr/local/bin/composer install

NOTA: Você certamente receberá um erro ao usar o sudo para executar o compositor. Isto é apenas um aviso, pois executar o compositor como root pode ser arriscado dependendo do que está sendo instalado. Portanto, prossiga e execute-o mesmo assim.

Depois que todas as dependências estiverem instaladas, defina as seguintes permissões para o diretório magento2.

sudo chown -R apache:apache /var/www/html/magento2
sudo chmod 755 /var/www/html/magento2

Ainda no diretório magento2, invoque as seguintes permissões adicionais.

sudo find var generated vendor pub/static pub/media app/etc -type f -exec chmod g+w {} +
sudo find var generated vendor pub/static pub/media app/etc -type d -exec 
sudo chown -R apache:apache .
sudo chmod u+x bin/magento

Concluímos a configuração das permissões agora. Vamos prosseguir e configurar o Apache para Magento.

Etapa 6: Crie um host virtual Apache para Magento

A seguir, configuraremos um arquivo host virtual Apache para instalação do Magento.

sudo vim /etc/httpd/conf.d/magento.conf

Cole o seguinte arquivo de configuração.

<VirtualHost *:80>
ServerAdmin [email 
ServerName example.com
DocumentRoot /var/www/html/magento2/
DirectoryIndex index.php

<Directory /var/www/html/magento2/>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>

ErrorLog /var/log/httpd/magento_error.log
CustomLog /var/log/httpd/magento_access.log combined
</VirtualHost>

Salve as alterações e saia do arquivo.

Em seguida, reinicie o servidor Apache HTTP

sudo systemctl restart httpd

Etapa 7: Instale o Magento e configure Magento Cron Jobs

Para instalar o Magento, execute o seguinte comando que configura um novo usuário, um usuário administrador e várias outras variáveis importantes.

sudo -u apache bin/magento setup:install --admin-firstname="james" --admin-lastname="kiarie" --admin-email="[email " --admin-user="admin" --admin-password="Secure@123" --db-name="magento_db" --db-host="localhost" --db-user="magento_user" --db-password="P@ssword@321" --language=en_US --currency=USD --timezone=Europe/London  --cleanup-database --base-url=http://"linuxtechgeek.info"

No final, você obterá a seguinte saída fornecendo o caminho da página de administração.

Antes de acessar o Magento pelo navegador, configure as políticas do SELinux conforme mostrado.

sudo restorecon -R /var/www/magento
sudo setsebool -P httpd_unified 1

Em seguida, abra o navegador e digite o URL completo conforme mostrado.

http://linuxtechgeek.info/admin_yquaor

Você será redirecionado para a seguinte página de login. Faça login usando as credenciais de administrador especificadas anteriormente e clique em ‘Entrar‘.

Isso leva você ao painel do Magento.

A partir daqui, você pode criar sua loja online, gerenciar preços de itens, faturas e acompanhar a atividade do cliente, entre muitas outras tarefas. Instalamos o Magento com sucesso no Rocky Linux e no AlmaLinux.