Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Agendador
- =========
- O aplicativo Agendador foi desenvolvido para viabilizar a automatização do agendamento dos atendimentos com hora marcada em órgãos públicos, permitindo que uma prefeitura crie, por exemplo, horários de atendimento para médicos em postos de saúde.
- Informações
- -----------
- * Versão rails: 5.0.0
- * Versão ruby: 2.3.1
- * Versão PostgreSQL: 9.x
- ## 1) Docker
- Instale o [docker-ce](https://docs.docker.com/install/) e,caso necessário mude seu servidor DNS em `/etc/docker/daemon.json` para o devido IP, no caso no C3SL
- ```
- {
- "dns": [ "200.17.202.3"]
- }
- ```
- Instale o [docker-compose](https://docs.docker.com/compose/install/#install-compose)
- ```bash
- $ sudo curl -L https://github.com/docker/compose/releases/download/1.20.1/docker-compose-`uname -s`-`uname -m` -o /usr/local/bin/docker-compose
- $ sudo chmod +x /usr/local/bin/docker-compose
- ```
- ## 2) Nginx
- Instale o [Nginx](https://www.nginx.com/resources/wiki/start/topics/tutorials/install/#official-debian-ubuntu-packages) seguindo as recomendações do própio pacote.
- Baseado no arquivo `agendador.conf` configure o NGNIX.
- Colocando as configurações de proxy, sendo mais importante os campos de headers "proxy_set_headers"
- ```
- proxy_pass_request_headers on;
- proxy_pass http://127.0.0.1:3000;
- proxy_set_header access-token $http_access_token;
- proxy_set_header expiry $http_expiry;
- proxy_set_header uid $http_uid;
- proxy_set_header client $http_client;
- proxy_set_header X-Real-IP $remote_addr;
- proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
- proxy_set_header Host $host;
- ```
- ## 3) Repositório
- ```bash
- $ git clone --recurse-submodules git@gitlab.c3sl.ufpr.br:agendador/agendador-docker.git
- ```
- ## 4) Environment
- Crie um arquivo `.env` seguindo o exemplo `.env-example`
- ```
- AGENDADOR_SECRET_KEY_BASE= #Chave que o rails gera após rodar em produção a primeira vez
- AGENDADOR_API_DB_USER= #nome do usuário do banco
- AGENDADOR_API_DB_PASSWORD= #Senha do usuário do banco
- AGENDADOR_REDIS_PASSWORD= #Senha do redis
- AGENDADOR_RAILS_ENV= #Ambiente a qual está rodando "TEST" "PRODUCTION"
- AGENDADOR_apiHost=http://localhost
- AGENDADOR_apiPort=3000
- MAIL_USERNAME= #Usuário que irá mandar email
- MAIL_PASSWORD= #Senha do usuário que irá mandar email
- MX_SERVER= #Servidor de e-mail
- MX_PORT= #Porta a qual o servidor de e-mail está rodando
- MAIL_DOMAIN= #Dominio ao qual será enviado o email
- ```
- ## 4) Configuração
- Para a primeira execução o arquivo backend/Dockefile deve estar no modo criação:
- ```
- ....
- CMD ["CREATE"]
- ```
- -----------
- Para as execuções seguintes é necessário que o arquivo backend/Dockefile "PRODUCTION", para que o banco de dados não seja resetado:
- ```
- ....
- CMD ["PRODUCTION"]
- ```
- ## Execução
- Este comando inicializará o docker e poderá demorar entre 1 a 5 minutos, sendo que na primeira vez demorará entre 5 a 10 minutos dependendedo da sua conexão com a internet
- ```bash
- $ sudo docker-compose up
- ```
- Em caso de erro:
- ```bash
- $ sudo docker-compose stop
- $ sudo docker container prune
- ```
- E execute novamente
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement