Advertisement
Guest User

Untitled

a guest
Jul 10th, 2018
197
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.11 KB | None | 0 0
  1. Agendador
  2. =========
  3.  
  4. 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.
  5.  
  6. Informações
  7. -----------
  8.  
  9. * Versão rails: 5.0.0
  10. * Versão ruby: 2.3.1
  11. * Versão PostgreSQL: 9.x
  12.  
  13. ## 1) Docker
  14. 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
  15. ```
  16. {
  17. "dns": [ "200.17.202.3"]
  18. }
  19. ```
  20.  
  21. Instale o [docker-compose](https://docs.docker.com/compose/install/#install-compose)
  22.  
  23.  
  24. ```bash
  25. $ 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
  26. $ sudo chmod +x /usr/local/bin/docker-compose
  27. ```
  28. ## 2) Nginx
  29. 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.
  30.  
  31. Baseado no arquivo `agendador.conf` configure o NGNIX.
  32. Colocando as configurações de proxy, sendo mais importante os campos de headers "proxy_set_headers"
  33. ```
  34. proxy_pass_request_headers on;
  35. proxy_pass http://127.0.0.1:3000;
  36.  
  37. proxy_set_header access-token $http_access_token;
  38. proxy_set_header expiry $http_expiry;
  39. proxy_set_header uid $http_uid;
  40. proxy_set_header client $http_client;
  41. proxy_set_header X-Real-IP $remote_addr;
  42. proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  43. proxy_set_header Host $host;
  44. ```
  45.  
  46. ## 3) Repositório
  47.  
  48. ```bash
  49. $ git clone --recurse-submodules git@gitlab.c3sl.ufpr.br:agendador/agendador-docker.git
  50. ```
  51. ## 4) Environment
  52. Crie um arquivo `.env` seguindo o exemplo `.env-example`
  53. ```
  54. AGENDADOR_SECRET_KEY_BASE= #Chave que o rails gera após rodar em produção a primeira vez
  55. AGENDADOR_API_DB_USER= #nome do usuário do banco
  56. AGENDADOR_API_DB_PASSWORD= #Senha do usuário do banco
  57. AGENDADOR_REDIS_PASSWORD= #Senha do redis
  58. AGENDADOR_RAILS_ENV= #Ambiente a qual está rodando "TEST" "PRODUCTION"
  59. AGENDADOR_apiHost=http://localhost
  60. AGENDADOR_apiPort=3000
  61. MAIL_USERNAME= #Usuário que irá mandar email
  62. MAIL_PASSWORD= #Senha do usuário que irá mandar email
  63. MX_SERVER= #Servidor de e-mail
  64. MX_PORT= #Porta a qual o servidor de e-mail está rodando
  65. MAIL_DOMAIN= #Dominio ao qual será enviado o email
  66.  
  67.  
  68. ```
  69. ## 4) Configuração
  70. Para a primeira execução o arquivo backend/Dockefile deve estar no modo criação:
  71.  
  72. ```
  73. ....
  74. CMD ["CREATE"]
  75. ```
  76. -----------
  77.  
  78. Para as execuções seguintes é necessário que o arquivo backend/Dockefile "PRODUCTION", para que o banco de dados não seja resetado:
  79.  
  80. ```
  81. ....
  82. CMD ["PRODUCTION"]
  83. ```
  84.  
  85.  
  86. ## Execução
  87. 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
  88. ```bash
  89. $ sudo docker-compose up
  90. ```
  91.  
  92. Em caso de erro:
  93. ```bash
  94. $ sudo docker-compose stop
  95. $ sudo docker container prune
  96. ```
  97. E execute novamente
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement