Olá pessoal, este é um simples tutorial de como rodar aplicações Phalcon usando Docker em ambiente de desenvolvimento.
Verifique se você possui os requisitos abaixo instalados no seu computador.
Passo 1: Criando a pasta do projeto ¶
Abra o seu terminal e crie sua pasta para o projeto.
mkdir phalcon_sample && cd phalcon_sample
Passo 2: Configurando o Docker ¶
O Dockerfile é necessário para que o Docker crie um contêiner com base em uma imagem PHP e faça a instalação do Phalcon.
Crie um arquivo chamado docker-compose.yml
com o código fonte abaixo.
version: '3'
services:
app:
container_name: app
build: .
working_dir: /var/www/html
volumes:
- ./:/var/www/html
ports:
- '8080:80'
expose:
- '8080'
depends_on:
- mysql
links:
- mysql
mysql:
container_name: mysql
image: mysql:8
environment:
MYSQL_DATABASE: phalcon_app
MYSQL_ROOT_PASSWORD: root
SERVICE_TAGS: dev
SERVICE_NAME: mysql
ports:
- '3306:3306'
Crie um arquivo chamado Dockerfile
com o código fonte abaixo.
FROM webdevops/php-nginx:7.4
ARG PSR_VERSION=0.7.0
ARG PHALCON_VERSION=4.0.2
ARG PHALCON_EXT_PATH=php7/64bits
RUN set -xe && \
# Download PSR, see https://github.com/jbboehr/php-psr
curl -LO https://github.com/jbboehr/php-psr/archive/v${PSR_VERSION}.tar.gz && \
tar xzf ${PWD}/v${PSR_VERSION}.tar.gz && \
# Download Phalcon
curl -LO https://github.com/phalcon/cphalcon/archive/v${PHALCON_VERSION}.tar.gz && \
tar xzf ${PWD}/v${PHALCON_VERSION}.tar.gz && \
docker-php-ext-install -j $(getconf _NPROCESSORS_ONLN) \
${PWD}/php-psr-${PSR_VERSION} \
${PWD}/cphalcon-${PHALCON_VERSION}/build/${PHALCON_EXT_PATH} \
&& \
# Remove all temp files
rm -r \
${PWD}/v${PSR_VERSION}.tar.gz \
${PWD}/php-psr-${PSR_VERSION} \
${PWD}/v${PHALCON_VERSION}.tar.gz \
${PWD}/cphalcon-${PHALCON_VERSION} \
&& \
php -m
ENV WEB_DOCUMENT_ROOT=/var/www/html/application/public
Passo 3: Rodando o contêiner Docker ¶
Execute o seguinte comando para rodar o contêiner Docker.
docker-compose up -d
Passo 4: Criando a aplicação Phalcon ¶
Nós usaremos o Phalcon developer tools para criar um projeto padrão do Phalcon. Rode o comando abaixo para inicializar o composer.
docker-compose exec app composer init
Você pode inicializar o composer usando seus dados personalizados.
Após a criação do composer.json
, você precisa instalar o Phalcon developer tools e criar a aplicação.
docker-compose exec app composer require --dev phalcon/devtools
docker-compose exec app ./vendor/bin/phalcon project application simple
Passo 5: Acessando a aplicação ¶
Se você concluiu os passos anteriores sem erros, você pode acessar o projeto pelo seu browser, o projeto está rodando em http://localhost:8080
Espero que este pequeno tutorial tenha ajudado.