Com docker podemos executar um container de diversas maneiras, podemos baixar imagens prontas com os programas que queremos, bem como podemos construir nossas próprias imagens a partir de um Dockerfile.
Como estou estudando docker, criei uma imagem que monta um ambiente de desenvolvimento para PHP com as bibliotecas do banco de dados Oracle instaladas.
Estarei disponibilizando tanto a imagem, como o Dockerfile com os passos caso você queira montar a sua própria imagem ou modificar a mesma de acordo com as suas necessidades.
Opção 1 – Executando a partir de uma image previamente criada.
Para executar a partir da imagem previamente montada, após instalar o docker na sua máquina, com os comandos abaixo, iremos criar uma pasta na pasta home para ser a pasta onde os seus arquivos php irão fica e criar um arquivo info.php para depois verificarmos no navegador as informações do PHP, e depois basta executar o container:
mkdir ~/html_dev printf "<?php \nphpinfo();" > ~/html_dev/info.php sudo docker run -d -p 8080:80 -v ~/html_dev:/var/www/html:rw rosembergmcz/php7_pdo_oci_oracle11:v2
Com o comando acima o docker, irá baixar a imagem caso não exista na sua máquina pode demorar um pouco, após baixar ele irá levantar o container e associar a porta do apache na porta 8080, após isso basta ir no navegador e acessar o endereço: https:/localhost:8080/info.php. Pronto você já tem um container configurado com PHP7 e PDO OCI e Oci8 pronto para usar. Onde a pasta que você irá usar para trabalhar e colocar seus arquivos PHP é: ~/html_dev/
Opção 2 – Criando a imagem a partir de um Dockerfile
Vamos agora para a segunda opção que é construir a imagem docker a partir do Dockerfile, eu disponibilizei no GitHub um projeto contendo o Dockerfile e os arquivos necessários para construir a imagem,
Vamos iniciar baixando o projeto usando o git e após isso acessamos a pasta criada com os comandos abaixos:
mkdir ~/projeto_docker_php git clone https://github.com/rosemberg-al/docker-php7-pdo_oci-oci8.git ~/projeto_docker_php cd ~/projeto_docker_php
Agora você pode revisar o arquivos, principalmente o Dockerfile que fica na raiz do projeto. Para que o docker construa uma imagem/container conforme as instruções do Dockerfile digite:
sudo docker build -t nome_que_voce_deseja_usar .
Importante ressaltar que você deve mante o ponto ( . ) após o nome da imagem, esse ponto indica que o comando deve usar o conteúdo do diretório corrente. Após o processo de criação, caso tenha ocorrido com sucesso a mensagem final será parecida com:
Successfully built cbc16b8517e3 Successfully tagged nome_que_voce_deseja_usar
Agora basta executar um container com a imagem criada com o comando abaixo que parece um pouco com o comando que usamos no primeiro comando só iremos mudar agora o nome da imagem a ser utilizada para criar o container.
mkdir ~/html_dev printf "<?php \nphpinfo();" > ~/html_dev/info.php sudo docker run -d -p 8080:80 -v ~/html_dev:/var/www/html:rw nome_que_voce_deseja_usar
Após isso basta ir no navegador e acessar o endereço: https:/localhost:8080/info.php. Pronto você já tem um container configurado com Apache, PHP7 e PDO OCI e Oci8 pronto para usar
Caso você não queira usar um container e instalar no seu servidor sem o uso do docker, você também pode consulta este outro post que publiquei anteriormente sobre o assunto.
Tem o link do Github?
Tem, faltou deixar claro no post, mals ae.
https://github.com/rosemberg-al/docker-php7-pdo_oci-oci8