Android

Como instalar o magento 2 no ubuntu 18.04

How to install Magento 2 on Ubuntu 18 04 Complete Guide

How to install Magento 2 on Ubuntu 18 04 Complete Guide

Índice:

Anonim

O Magento é a plataforma líder de comércio eletrônico de classe empresarial, construída com tecnologia de código aberto, combinando recursos poderosos com flexibilidade e interface amigável.

Com recursos como experiências de compras envolventes, arquitetura modular flexível e escalabilidade e desempenho de nível empresarial, o Magento é uma plataforma de escolha para a maioria dos comerciantes on-line.

Neste tutorial, mostraremos como instalar o Magento 2.3 em uma máquina Ubuntu 18.04. Usaremos o Nginx como servidor da Web, o mais recente PHP 7.2 e o MySQL / MariaDB como servidor de banco de dados.

Pré-requisitos

Verifique se você atendeu aos seguintes pré-requisitos antes de continuar com este tutorial:

  • Tenha um nome de domínio apontando para o IP do servidor público. Usaremos example.com .Nginx é instalado no servidor Ubuntu seguindo estas instruções.Um certificado SSL instalado para o seu domínio para criptografar as informações do usuário. Você pode instalar um certificado SSL Let's Encrypt criptografado gratuitamente, seguindo estas instruções.

Para poder acessar o repositório de código Magento 2, você precisará gerar chaves de autenticação. Se você não possui uma conta no Magento Marketplace, pode criar uma aqui. Depois de criar a conta, verifique estas instruções sobre como gerar um novo conjunto de chaves de autenticação.

Atualize os pacotes do sistema para as versões mais recentes e instale o utilitário descompactar:

sudo apt update && sudo apt upgrade sudo apt install unzip

Criando banco de dados MySQL

Se você possui o MySQL ou o MariaDB instalado no servidor, pode pular esta etapa; caso contrário, pode instalar o pacote do servidor MySQL 5.7 a partir dos repositórios padrão do Ubuntu, digitando:

sudo apt install mysql-server mysql-client Para instalações recentes do MySQL, é recomendável executar o comando mysql_secure_installation para melhorar a segurança do seu servidor MySQL.

Entre no shell do MySQL usando o seguinte comando:

sudo mysql

No shell do MySQL, execute a seguinte instrução SQL para criar um novo banco de dados chamado magento :

CREATE DATABASE magento;

Em seguida, crie uma conta de usuário MySQL chamada magento e conceda as permissões necessárias ao usuário executando o seguinte comando:

GRANT ALL ON magento.* TO 'magento'@'localhost' IDENTIFIED BY 'change-with-strong-password'; Certifique-se de alterar a change-with-strong-password forte.

Quando terminar, saia do console do MySQL digitando:

EXIT;

Criando usuário do sistema

Crie um novo usuário e grupo, que será o proprietário do sistema de arquivos Magento, para simplificar, magento o usuário magento :

sudo useradd -m -U -r -d /opt/magento magento

Adicione o usuário www-data ao grupo magento e altere as permissões do diretório /opt/magento para que o Nginx possa acessar a instalação do Magento:

sudo usermod -a -G magento www-data sudo chmod 750 /opt/magento

Instalando e configurando o PHP

O PHP 7.2, que é a versão padrão do PHP no Ubuntu 18.04, é totalmente suportado e recomendado para o Magento 2.3. Como usaremos o Nginx como servidor da Web, também instalaremos o pacote PHP-FPM.

Execute o seguinte comando para instalar o PHP e todos os módulos PHP necessários:

sudo apt install php7.2-common php7.2-cli php7.2-fpm php7.2-opcache php7.2-gd php7.2-mysql php7.2-curl php7.2-intl php7.2-xsl php7.2-mbstring php7.2-zip php7.2-bcmath php7.2-soap

O serviço PHP-FPM será iniciado automaticamente após a conclusão do processo de instalação. Você pode verificá-lo imprimindo o status do serviço:

sudo systemctl status php7.2-fpm

A saída deve indicar que o serviço fpm está ativo e em execução.

● php7.2-fpm.service - The PHP 7.2 FastCGI Process Manager Loaded: loaded (/lib/systemd/system/php7.2-fpm.service; enabled; vendor preset: enabled) Active: active (running) since Wed 2018-12-12 15:47:16 UTC; 5s ago Docs: man:php-fpm7.2(8) Main PID: 16814 (php-fpm7.2) Status: "Ready to handle connections" Tasks: 3 (limit: 505) CGroup: /system.slice/php7.2-fpm.service

Defina as opções necessárias e recomendadas do PHP editando o arquivo php.ini com o sed ::

sudo sed -i "s/memory_limit =.*/memory_limit = 1024M/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/upload_max_filesize =.*/upload_max_filesize = 256M/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/zlib.output_compression =.*/zlib.output_compression = on/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/max_execution_time =.*/max_execution_time = 18000/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/;date.timezone.*/date.timezone = UTC/" /etc/php/7.2/fpm/php.ini sudo sed -i "s/;opcache.save_comments.*/opcache.save_comments = 1/" /etc/php/7.2/fpm/php.ini

Em seguida, precisamos criar um pool de FPM para o usuário magento .

Abra seu editor de texto e crie o seguinte arquivo:

sudo nano /etc/php/7.2/fpm/pool.d/magento.conf /etc/php/7.2/fpm/pool.d/magento.conf

user = magento group = www-data listen.owner = magento listen.group = www-data listen = /var/run/php/php7.2-fpm-magento.sock pm = ondemand pm.max_children = 50 pm.process_idle_timeout = 10s pm.max_requests = 500 chdir = /

Reinicie o serviço PHP-FPM para que as alterações entrem em vigor:

systemctl restart php7.2-fpm

Verifique se o soquete do PHP foi criado com êxito executando o seguinte comando ls:

ls -al /var/run/php/php7.2-fpm-magento.sock

A saída deve ser algo como isto:

srw-rw---- 1 magento www-data 0 Dec 12 16:07 /var/run/php/php7.2-fpm-magento.sock=

Instalando o Composer

O Composer é um gerenciador de dependências para PHP e o usaremos para baixar o núcleo do Magento e instalar todos os componentes necessários do Magento.

Para instalar o compositor globalmente, faça o download do instalador do Composer com curl e mova o arquivo para o /usr/local/bin :

curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer

Verifique a instalação imprimindo a versão do compositor:

composer --version

A saída deve ser algo como isto:

Composer version 1.8.0 2018-12-03 10:31:16

Instalando o Magento

Existem várias maneiras de instalar o Magento 2. Evite instalar o Magento a partir do repositório Github, porque essa versão é destinada ao desenvolvimento e não a instalações de produção.

No momento da redação deste artigo, a versão estável mais recente do Magento é a versão 2.3.0 . Neste tutorial, instalaremos o Magento a partir de seus repositórios usando o compositor.

Alterne para o usuário magento digitando:

sudo su - magento

Inicie a instalação baixando arquivos magento para o diretório / opt / magento / public_html:

composer create-project --repository-url=https://repo.magento.com/ magento/project-community-edition /opt/magento/public_html

Você será solicitado a inserir as chaves de acesso, copiar as chaves da sua conta do mercado Magento e armazená-las no arquivo auth.json ; portanto, mais tarde, ao atualizar sua instalação, você não precisará adicionar as mesmas chaves novamente.

Authentication required (repo.magento.com): Username: e758ec1745d190320ca246e4e832e12c Password: Do you want to store credentials for repo.magento.com in /opt/magento/.config/composer/auth.json ? Y

O comando acima buscará todos os pacotes PHP necessários. O processo pode levar alguns minutos e, se for bem-sucedido, o final da saída deve se parecer com o seguinte:

Writing lock file Generating autoload files

Uma vez criado o projeto, podemos iniciar a instalação do Magento. Podemos instalar o Magento a partir da linha de comando ou usando o Assistente de Configuração da Web. Neste tutorial, instalaremos o Magento usando a linha de comando.

Usaremos as seguintes opções para instalar a loja Magento:

  • Os URLs base e base seguros estão definidos como https://example.com , altere-o com o domínio. Administrador do Magento:
    • John Doe como nome e sobrenome. [email protected] como email. john como nome de usuário e j0hnP4ssvv0rD como senha.
    Nome do banco de dados magento , nome de usuário magento , change-with-strong-password senha change-with-strong-password e o servidor de banco de dados está no mesmo host que o servidor web. en_US , inglês dos EUA como idioma padrão. Dólares de USD como moeda padrão. America/Chicago como um fuso horário.
Você pode encontrar todas as opções de instalação aqui.

Mude para o diretório Magento ~/public_html :

cd ~/public_html

Execute o seguinte comando para iniciar a instalação:

php bin/magento setup:install --base-url=https://example.com/ \ --base-url-secure=https://example.com/ \ --admin-firstname="John" \ --admin-lastname="Doe" \ --admin-email="[email protected]" \ --admin-user="john" \ --admin-password="j0hnP4ssvv0rD" \ --db-name="magento" \ --db-host="localhost" \ --db-user="magento" \ --currency=USD \ --timezone=America/Chicago \ --use-rewrites=1 \ --db-password="change-with-strong-password" Não se esqueça de alterar a senha ( j0hnP4ssvv0rD ) para algo mais seguro.

O processo pode levar alguns minutos e, uma vez concluído, você receberá uma mensagem que contém o URI para o painel de administração do Magento.

: Magento installation complete.: Magento Admin URI: /admin_13nv5k Nothing to import.

Criando o Magento crontab

O Magento usa tarefas cron para agendar tarefas como reindexação, notificações, mapas de site, emails e muito mais.

Para criar o Magento crontab, execute o seguinte comando como usuário magento :

php ~/public_html/bin/magento cron:install

Crontab has been generated and saved

Verifique se o crontab está instalado, digitando:

crontab -l

#~ MAGENTO START adc062915d7b30804a2b340095af072d * * * * * /usr/bin/php7.2 /opt/magento/public_html/bin/magento cron:run 2>&1 | grep -v "Ran jobs by schedule" >> /opt/magento/public_html/var/log/magento.cron.log * * * * * /usr/bin/php7.2 /opt/magento/public_html/update/cron.php >> /opt/magento/public_html/var/log/update.cron.log * * * * * /usr/bin/php7.2 /opt/magento/public_html/bin/magento setup:cron:run >> /opt/magento/public_html/var/log/setup.cron.log #~ MAGENTO END adc062915d7b30804a2b340095af072d

Configurando o Nginx

Até agora, você já deve ter o Nginx com certificado SSL instalado no servidor Ubuntu, caso contrário, verifique os pré-requisitos para este tutorial.

Vamos incluir a configuração padrão do Nginx enviada com o Magento.

Alterne para o usuário sudo, abra o editor de texto e crie o seguinte arquivo:

sudo nano /etc/nginx/sites-available/example.com /etc/nginx/sites-available/example.com

upstream fastcgi_backend { server unix:/var/run/php/php7.2-fpm-magento.sock; } server { listen 80; server_name example.com www.example.com; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name www.example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; include snippets/letsencrypt.conf; return 301 https://example.com$request_uri; } server { listen 443 ssl http2; server_name example.com; ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/example.com/chain.pem; include snippets/ssl.conf; include snippets/letsencrypt.conf; set $MAGE_ROOT /opt/magento/public_html; set $MAGE_MODE developer; # or production access_log /var/log/nginx/example.com-access.log; error_log /var/log/nginx/example.com-error.log; include /opt/magento/public_html/nginx.conf.sample; } Não se esqueça de substituir example.com pelo seu domínio Magento e defina o caminho correto para os arquivos de certificado SSL. Os trechos usados ​​nesta configuração são criados neste guia.

Antes de reiniciar o serviço Nginx, faça um teste para garantir que não haja erros de sintaxe:

sudo nginx -t

Se não houver erros, a saída deve ser assim:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful

Por fim, reinicie o serviço Nginx digitando:

sudo systemctl restart nginx

Verificando a instalação

Abra seu navegador, digite seu domínio e, assumindo que a instalação foi bem-sucedida, uma tela semelhante à seguinte será exibida:

Agora você pode acessar o URI do Magento Admin, fazer login como usuário administrador e começar a personalizar sua nova instalação do Magento.

Conclusão

Parabéns, você instalou o Magento 2.3 com sucesso no seu servidor Ubuntu 18.04. Agora você pode começar a personalizar sua loja.

A documentação do desenvolvedor do Magento 2.3 é um bom ponto de partida para aprender mais sobre como gerenciar sua instalação do Magento.

ubuntu magento mysql mariadb php nginx compositor comércio eletrônico