https://github.com/codeedu/docker-wait-for-it
https://github.com/codeedu/docker-wait-for-it
Last synced: 9 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/codeedu/docker-wait-for-it
- Owner: codeedu
- Created: 2022-09-21T19:34:20.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-07-05T19:28:02.000Z (over 2 years ago)
- Last Synced: 2025-03-29T17:51:09.365Z (10 months ago)
- Language: JavaScript
- Size: 139 KB
- Stars: 64
- Watchers: 4
- Forks: 19
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Projeto Docker wait-for-it
Projeto criado com a finalidade de demonstrar o uso da ferramenta "wait-for-it" em uma aplicação Node + Mysql com Docker.
# Motivação
O wait-for-it é uma opção a ferramenta dockerize que o Wesley utiliza no curso de Docker, recebemos relatos de alunos que tentaram utilizar o dockerize em um MacBook M1 e receberam erro.
Por isso tivemos a ideia de apresentarmos o "wait-for-it" como opção e irei explicar a importância desta ferramenta em um ambiente de desenvolvimento.
## wait-for-it:
```wait-for``` foi projetado para realizar a sincronização entre serviços como containers docker.
Um script bash puro que tem como finalidade aguardar a disponibilidade de um host e uma porta TCP. Como se trata de um script bash puro, ele não possui dependências externas.
É totalmente compativel com sh e alpine.
Possui atualizações constantes pela comunidade, o link para conferir a documentação e código fonte é: wait-for-it.
# Instalação
```
# Clone o repositório
git clone https://github.com/codeedu/docker-wait-for-it.git
# Acesse a pasta do projeto
cd docker-wait-for-it
# Rode o docker-compose.yaml
docker compose up
# Acesse a aplicação pelo navegador na porta 8080
localhost:8080
```
Ao executar o projeto com o comando ``` docker compose up ``` repare no log do terminal a ordem em que os services do docker-compose iniciam.
Nesta aplicação o "wait-for-it" faz com que o NODE(app) inicie apenas quando o MYSQL(banco de dados) estiver pronto.