Este guia fornecerá instruções passo a passo para criar e executar um contêiner Docker para subir um banco de dados PostgreSQL usando o Docker Compose.
Certifique-se de ter o Docker e o Docker Compose instalados em sua máquina. Você pode instalá-los seguindo as instruções oficiais em Docker e Docker Compose.
-
Clone este repositório:
git clone https://github.com/Adptare/DockerFile.git
-
Navegue até o diretório do projeto:
cd adaptare/api/db
-
Modifique o arquivo
env_file.env
para configurar as variáveis de ambiente:nano env_file.env
Edite o arquivo
.env
conforme necessário para definir variáveis como senha do banco de dados, porta, etc. -
Inicie o contêiner do Docker Compose:
docker-compose up --build -d
Isso irá criar e iniciar o contêiner Docker para o banco de dados PostgreSQL. O parâmetro
-d
é opcional e significa "detached", o que faz com que o contêiner seja executado em segundo plano. -
Verifique se o contêiner está em execução:
docker ps
Você deverá ver o contêiner PostgreSQL em execução na lista.
-
Acesse o banco de dados via cliente PostgreSQL:
psql -h localhost -p 5432 -U postgres
Você será solicitado a inserir a senha definida no arquivo
.env
. -
Execute as operações desejadas no banco de dados.
-
Para parar o contêiner Docker:
docker-compose down
Isso irá parar e remover o contêiner do Docker.
- Certifique-se de substituir as variáveis de ambiente e configurações conforme necessário no arquivo
.env
. - Este exemplo usa a porta padrão 5432 para PostgreSQL. Se você precisar alterá-la, atualize-a no arquivo
docker-compose.yml
. - Lembre-se de que os dados do banco de dados serão persistidos no volume Docker, a menos que você os exclua explicitamente.
- Certifique-se de revisar e ajustar as configurações de segurança e acesso conforme necessário para o seu ambiente específico.
- Para que a comunicação entre o banco de dados, o front-end e o back-end funcione corretamente, certifique-se de que todos os contêineres estejam na mesma rede Docker. Você pode configurar isso no arquivo docker-compose.yml usando a configuração de rede adequada.