Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/fosouzadev-public/postgresql-container

Estudo para criar um container do postgresql já com uma estrutura inicial.
https://github.com/fosouzadev-public/postgresql-container

docker github-actions github-packages postgresql

Last synced: 23 days ago
JSON representation

Estudo para criar um container do postgresql já com uma estrutura inicial.

Awesome Lists containing this project

README

        

# PostgreSQL
Esse repositório permite criar um banco postgreSQL em container, já com uma estrutura e dados definidos anteriormente.

Possui um fluxo no github actions que publica a imagem no github packages.
[![Publish package to github packages](https://github.com/fosouzadev/postgresql-container/actions/workflows/github-images.yml/badge.svg)](https://github.com/fosouzadev/postgresql-container/actions/workflows/github-images.yml)

Possui duas formas abaixo para criar o container.
* Docker Compose
* Docker Build

## Estrutura
Os arquivos da pasta `sql` serão lidos, ordenados pelo nome, e executados no banco de dados.

Toda a estrutura do banco e até alguns dados mais estáticos, podem ser criados apenas adicionando um novo arquivo `{número}_{nome_arquivo}.sql` no diretório `sql`. Lembre-se de nomear o arquivo seguindo a sequência numérica.

## Criar container usando docker compose
```
docker-compose up -d
```

## Criar container usando docker build
```
docker build . -t postgresql-test
docker run -d --name postgresql-docker-build -p 5432:5432 -v pgdata:/var/lib/postgresql/data postgresql-test
```

## Criar imagem usando make
No fluxo do github actions o arquivo `makefile` é utilizado, para que após adicionar novos scripts ao repositório seja definida também a nova tag da imagem.
```
make build DB_PASSWORD={senha} GITHUB_USER={usuário do github}
```

## Baixar imagem do Github Packages
```
echo {token} | docker login ghcr.io -u {usuário do github} --password-stdin
docker pull ghcr.io/{usuário do github}/{imagem}:{tag}
```