Objetivo

Criar um projeto básico usando 2 containers: Apache e MariaDB. Preciso apenas popular o banco de dados manualmente e mostrar os dados do banco no index.php.

Este projeto tem objetivo de mostrar passo a passo o que é feito para atingir o objetivo.

Passo a passo

1- Fui no chat-GPT e pedi o seguinte:

escreva um docker-compose básico com um container apache e outro para mariadb

ele me retornou:

version: '3'
services:
  apache:
    image: httpd:latest
    ports:
      - '80:80'
    volumes:
      - ./html:/usr/local/apache2/htdocs

  mariadb:
    image: mariadb:latest
    environment:
      MYSQL_ROOT_PASSWORD: example_password
      MYSQL_DATABASE: example_db
      MYSQL_USER: example_user
      MYSQL_PASSWORD: example_password
    volumes:
      - ./db:/var/lib/mysql

Ví que a imagem para o PHP foi httpd:latest. Mas não costumo usa-la. Escrevi outro prompt no chat-GPT: ”escreva um docker-compose básico com um container usando a imagem: php:7.2-apache e outro para o mariadb”

version: '3'
services:
  apache:
    image: php:7.2-apache
    ports:
      - '80:80'
    volumes:
      - ./html:/var/www/html

  mariadb:
    image: mariadb:latest
    environment:
      MYSQL_ROOT_PASSWORD: example_password
      MYSQL_DATABASE: example_db
      MYSQL_USER: example_user
      MYSQL_PASSWORD: example_password
    volumes:
      - ./db:/var/lib/mysql

Coisas que notei de cara:

2- Copiei o código YAML e coloquei na raiz do meu projeto, com nome: docker-compose.yaml:

3- Fui no terminal, entrei na pasta do projeto e rodei o comando: $docker-compose up

Abri outro terminal para ver se estava tudo certo. Rodei o comando: $docker ps Notei que os containers subiram: