How to install Magento 2 on Ubuntu 18 04 Complete Guide
Índice:
- Pré-requisitos
- Criando banco de dados MySQL
- Criando usuário do sistema
- Instalando e configurando o PHP
- Instalando o Composer
- Instalando o Magento
- Criando o Magento crontab
- Configurando o Nginx
- Verificando a instalação
- Conclusão
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:
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:-
JohnDoecomo nome e sobrenome.[email protected]como email.johncomo nome de usuário ej0hnP4ssvv0rDcomo senha.
magento, nome de usuáriomagento,change-with-strong-passwordsenhachange-with-strong-passworde 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 deUSDcomo moeda padrão.America/Chicagocomo um fuso horário. -
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:
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ônicoAs ofertas de software como serviço têm se tornado cada vez mais populares entre as empresas, pois libera os administradores de instalar atualizações de software e executar outras tarefas de manutenção que eles teriam que fazer internamente. Os assinantes da MessageLabs entregam o gerenciamento da segurança de tráfego de e-mail e da Web para a empresa e não precisam instalar equipamentos no local.
[Outras leituras: Como remover malwares do PC com Windows]
Instalar o Windows no Mac usando o Guia Passo a Passo do Assistente do Boot Camp sobre como instalar o Windows 10/8/7 no seu Mac usando o software BootCamp. BootCamp permite que você execute o Microsoft Windows em um computador Mac.
Existem muitos usuários de Mac que podem querer instalar o sistema operacional Windows em seus computadores Mac, para obter o melhor dos dois mundos. Bem, usando o
Como instalar e configurar o magento 2 no centos 7
Nesta série, você apresentará as etapas necessárias para instalar o Magento 2 em um servidor CentOS com Nginx, MariaDB e PHP 7.1.







