Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Criar um container com apache e php

Boa tarde, eu estou com dificuldades de achar uma imagem que rode apache e php, tentei fazer alguns testes com o docker-compose porém não estou conseguindo configurar o apache para que interprete o php.

5 respostas

Olá Samuel, tudo bem? Nesse caso, você quer encontrar uma só imagem que já tenha o apache e o PHP juntos é isso? Bem, você vai precisar do MySQL também ou não? Nesse caso, se não precisar do MySQL você poderia usar o seguinte docker-compose.yml:

version: '3'

services:
  apache:
    image: 'php:7.4-apache'
    container_name: php
    restart: always
    ports:
      - '80:80'
    volumes:
      - ./html:/var/www/html

Nesse caso você está usando a imagem php:7.4-apache, que já vem com o PHP e o Apache, e nesse ponto basta apenas indicar o volume, para que você possa colocar as aplicações.

Espero ter ajudado!

Boa tarde Jonilson, muito obrigado! Me ajudou muito.

Só tenho uma dúvida quanto a essa imagem, ela se comporta como fosse feita a instalação do apache e php separados? Eu consigo ativar o FPM usando essa imagem?

Não vou precisar do MySQL pois vou utilizar o serviço da Google para banco de dados.

Você recomenda o uso dessa imagem para servidor em produção ou apenas para desenvolvimento?

Desde já agradeço sua ajuda.

solução!

Samuel, não vejo problema nenhum em utilizar essa imagem em produção, já que você vai precisar do MySQL, você poderia utilizar o arquivo docker-compose.yml da seguinte forma:

version: '3'

services:
  apache:
    image: 'php:7.4-apache'
    container_name: php
    restart: always
    ports:
      - '80:80'
    volumes:
      - ./html:/var/www/html
    depends_on:
      - db
    links:
      - db

db:
    container_name: mysql
    image: mysql:5.7
    restart: always
    ports:
      - '3306:3306'
    environment:
      - MYSQL_ROOT_PASSWORD=root
      - MYSQL_DATABASE=banco_de_dados

Espero ter ajudado!

Muito obrigado. Ajudou muito!

Fico feliz por ajudar! Assim, você poderia marcar esse tópico como solucionado, dessa forma se alguém tiver a mesma dúvida que você vai conseguir encontrar a resposta aqui!