English:
Hi everyone, today I will talk a little about how to use a docker container with Magento 2.
Docker is an important and very useful tool that allows you to create isolated environments.

Using docker you can create isolated containers with differents applications in you local machine or in a web server. I will explain how to create a docker container with a Magento latest version pre-installed.

First step download this docker script, this script is a docker script that will install the container with Nginx, Mysql server and Magento 2. I developed this script using as base this another docker script.

Unzip the script, navigate to the folder root and in the composer.env set your GitHub token and Magento keys. If you are using a Mac Osx in the global.env file set the option UPDATE_UID_GID to false. After execute the commands:
export MAGENTO_BASE_URL=http://127.0.0.1/ docker-compose run cli magento-installer

The MAGENTO_BASE_URL will be your Magento base url. The images will be downloaded and the docker containers created.

Wait to finish the process and when the process is finished execute the commands:

docker-compose up -d
docker-compose restart

These two commands will start the docker containers, to see if the container are created and initialized successfully execute the command “docker ps” to see what container are running.

Now you have to set the Magento base url with the correct Docker container port, when you run the docker ps command the containers are listed with their current ports, so you have to access the database and in the core_config_data table you have to set the “web/unsecure/base_url” to “http://127.0.0.1:port/”

Apply the change in database and now you can access your Magento 2 running in you docker container.

I hope this post can help you to use a Magento 2 installation in a docker container. Regards!

 

Português:

Olá pessoal, hoje irei falar brevemente sobre como usar uma container docker com uma instalação do Magento 2.
Docker é uma importante ferramenta para criação de ambientes isolados.

Usando o docker você pode criar containers isolados com diferentes aplicações em sua máquina local ou em um servidor web. Eu irei explicar como criar uma container docker com o Magento 2 em sua versão mais recente pré-instalada.

O primeiro passo é realizar neste this o download do script docker, este script irá criar as containers com o Nginx, MySQL server e o Magento 2. Eu desenvolvi esse script utilizando como base este outro script.

Desempacote o zip do script, navegue até a pasta do mesmo e no arquivo composer.env configure seu token do GitHub e as chaves do Magento Connect. Se você estiver utilizando um computador com o sistema Mac Osx configure no arquivo global.env a opção UPDATE_UID_GID como false. Depois disso execute os comandos:

export MAGENTO_BASE_URL=http://127.0.0.1/ docker-compose run cli magento-installer

MAGENTO_BASE_URL será sua URL base no Magento. As imagens serão baixadas e as containers criadas.

Aguarde o processo finalizar e quando finalizado execute os seguintes comandos:
docker-compose up -d
docker-compose restart

Estes dois comandos irão iniciar as containers, para visualizar se as containers foram criadas e se estão inicializadas execute o comando “docker ps” para visualizar quais containers estão sendo executadas.

Agora você deve configurar a url base do Magento com a porta que está sendo utilizada na container, quando você executar o comando docker ps as containers em execução são listadas com suas respectivas portas de uso, então acesse o banco de dados e na tabela core_config_data configure em “web/unsecure/base_url” a url “http://127.0.0.1:porta/”

Aplique as alterações no banco e agora você poderá acessar sua instalação do Magento 2 rodando na container docker.

Espero que esse rápido post tenha sido de grande ajuda e qualquer dúvidas fico à disposição, abraço!

How to use Magento 2 in a docker container

Igor Ludgero


PHP & Magento Developer from Brazil.


Post navigation


Leave a Reply

Your email address will not be published. Required fields are marked *

Pin It on Pinterest