Instalação e sincronização I-Diário Ubuntu 18.04

Instalação I-Diário Ubuntu 18.04

Instalação Postgresql

$ sudo apt update

$ sudo apt upgrade

$ sudo apt install postgresql libpq-dev -y

$ sudo vim /etc/postgresql/9.6/main/pg_hba.conf (vai depender da versão do postgres)

Altere as linhas 90 e 92
“local” is for Unix domain socket connections only

local all all peer

host all all 127.0.0.1/ md5 # Apenas localhost

Para:

“local” is for Unix domain socket connections only
local all all md5 # Altera a forma de envio de senha

IPv4 local connections:

host all all 0.0.0.0/0 md5 # liberar a conexão para qualquer IP

Salve e saia do arquivo.

$ sudo vim /etc/postgresql/9.6/main/postgresql.conf

Criar usuário do banco de dados:

$ sudo -u postgres createuser idiario

Acesse console do postegres:

$ sudo -u postgres psql # Caso precise altere a senha do postgres

alter user postgres with encrypted password ‘sua_senha’;

Mudar a senha do usuário ieducar:

alter user idiario with encrypted password ‘sua_senha’;

Concede permissões ao usuário de criar banco de dados e regras:

alter user idiario with SUPERUSER;

sair do console postgres:

\q

Reiniciar o serviço do banco de dados:

$ sudo service postgresql restart

Instala o Ruby usando o RVM

O RVM é a ferramenta para instalar, gerenciar e trabalhar com vários ambientes Ruby.

$ sudo apt install gnupg2

$ gpg2 --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3

7D2BAF1CF37B13E2069D6956105BD0E739499BDB

$ sudo apt install curl

$ \curl -sSL https://get.rvm.io | bash -s stable

$ source /home/usuario/.rvm/scripts/rvm

$ rvm install “ruby-2.3.7”

Verificar a versão

$ ruby --version

Instalação do i-Diário

Caso o git não esteja instalado use o comando

$sudo apt install git

Baixar o i-Diário:

$ git clone https://github.com/portabilis/i-diario.git

$ cd i-diario

Copiar o exemplo de configurações de banco de dados e configurar:

$ cp config/database.sample.yml config/database.yml

Adicionar um banco de dados no final do arquivo config/database.yml

$ vim config/database.yml

Altere as linhas 5 e 6 adicionando o usuário que foi criado nos passos anteriores:

username:idiario

password:sua_senha

Para o modo Produção, adicione no fim do arquivo o seguinte bloco, caso contrário ignore essa e salve o arquivo :

production:

<<: *default

database: educacao

Apenas para o Modo Produção

Altera as linhas do arquivo /config/enviroments/production.rb

$ /config/enviroments/production.rb

config.serve_static_files = true

config.assets.compile = true

Modo Develop

$ gem install bundler -v ‘1.17.3’

$ vim Gemfile

Insira as seguintes linhas:

na linha 23 - gem ‘dry-inflector’, ‘0.1.2’

na linha 63 gem ‘signet’, ‘0.11.0’

$ bundle install

Modo Produção

Executa os comandos:

$ gem install bundler -v ‘1.17.3’

$ export RAILS_ENV=production

$ vim Gemfile

Insira as seguintes linhas:

na linha 23 - gem ‘dry-inflector’, ‘0.1.2’

na linha 63 gem ‘signet’, ‘0.11.0’

$ bundle install

$ bundle install --deployment --without development test

Criar arquivo config/secrets.yml

$ vim config/secrets.yml

development::

secret_key_base: CHAVE_SECRETA

Para modo Produção

production:

secret_key_base: CHAVE_SECRETA

SMTP_ADDRESS: SMTP_ADDRESS

SMTP_PORT: SMTP_PORT

SMTP_DOMAIN: SMTP_DOMAIN

SMTP_USER_NAME: SMTP_USER_NAME

SMTP_PASSWORD: SMTP_PASSWORD

BUCKET_NAME: S3_BUCKET_NAME

usa o comando para gerar a senha:

$ bundle exec rake secret

Edite o arquivo config/secrets.yml e acione a senha gerada

$ vim config/secrets.yml

production:

secret_key_base: senha gerada

Criar e configurar o arquivo config/aws.yml conforme o exemplo:

$ vim config/aws.yml

development:

access_key_id: AWS_ACCESS_KEY_ID

secret_access_key: AWS_SECRET_ACCESS_KEY

Criar páginas de erro simples:

$ cp public/404.html.sample public/404.html

$ cp public/500.html.sample public/500.html

Para modo Develop rode os comandos do banco de dados :

$ bundle exec rake db:create

$ bundle exec rake db:migrate

Para modo Produção rode os comandos do banco de dados :

$ bundle exec rake db:create

$ bundle exec rake db:migrate

$ bundle exec rake assets:precompile

Configuração da Aplicação

Criar uma entidade:

Com IP local ou público

bundle exec rake entity:setup NAME=prefeitura DOMAIN=192.168.0.50 DATABASE=prefeitura_diario

Com domínio

bundle exec rake entity:setup NAME=prefeitura DOMAIN=prefeitura.com.br DATABASE=prefeitura_diario2

Para a criação de mais de uma entidade, altere os campos Damain e Database.

Criar um usuário administrador:

Abra o rails console.

$ bundle exec rails console

Cole o seguinte bloco:

Entity.last.using_connection {

User.create!(

email: ‘admin@domain.com.br’,

password: ‘123456789’,

password_confirmation: ‘123456789’,

status: ‘active’,

kind: ‘employee’,

admin: true

)

}

Para sair do console digite exit ou Ctrl + C

Para iniciar o sistema:

$ bundle exec rails server -b 0.0.0.0 -p 3000

Para manter o console liberado use:

$ bundle exec rails server -b 0.0.0.0 -p 3000 -d

http://ip_do_servidor:3000

Modo Produção

Após reiniciar o servidor, executar o comando abaixo

$ RAILS_ENV=production bundle exec rails server -b 0.0.0.0 -p 3000

$ RAILS_ENV=production bundle exec rails server -b 0.0.0.0 -p 3000 -d

http://ip_do_servidor:3000

Configuração e Sincronização

Acesse o sistema e logue com usuário administrador

1 - acesse o menu Configurações -> Entidade

Preencha os dados da entidade e insira a logo do município

2 - Configurações -> Permissões

Crie os níveis de permissões para cada grupo de usuário, definido o que cada grupo pode fazer.

3 - No menu Administrativo -> Configurações gerais

Preencha os dados e o mais importante defina a permissão padrão para servidores, essa permissão foi criada no passo anterior.

Sincronização com i-Educar (no ambiente)

4 - No menu Configurações -> API de Integração

Preencha os dados solicitados, volte para o terminal e gere duas novas chaves secretas, usando o comando bundle exec rake secret, ou usar qualquer outro para gerar as chaves e clique em salvar para finalizar, porém não execute a sincronização, ainda falta as configurações do i-educar e do sidekiq.

5 - Acesse o terminal do I-educar e altere o arquivo .env

Na minha instalação em /var/www/html/ieducar/ adicione as chaves geradas

$ vim /var/www/html/ieducar/.env

API_ACCESS_KEY= sua_chave (Chave de acesso)

API_SECRET_KEY=sua_chave2 (Chave secreta)

Salve o arquivo e pode fechar o terminal

6 - Volte pro terminal do i-diario e rode o comando dentro do diretorio do i-diario.

$ bundle exec sidekiq

A tela abaixo deverá ser apresentada, mostrando o sidekiq rodando.

6 - Volte para a página do i-diario, no menu Configurações -> API de Integração e clique em sincronização completa.

Note que irá começar o processo de sincronização, como mostra a tela abaixo.

volte para o terminal e veja o processo sendo executado.

Tanto a página quanto a terminal não avisam o fim da atualização, espere cerca de 2min e atualize a página de sincronização, o tempo vai depender do tamanho da sua base de dados do i-educar e do hardware do servidor do i-diario, que podem variar com o tempo da sincronização, note que poderá apresenta o status atual da sincronização em porcentagem ou que já foi finalizado.

7 - No menu Configurações -> Unidades

Clique em Sincronizar

As unidades deverão aparecer, marque todas e clique em sincronizar, se tudo ocorreu bem, receberá um alerta de Unidades sincronizadas com sucesso e toda vez que criar uma nova escola, esse procedimento deverá ser refeito.

8 - No menu Calendário letivo, clique em Sincronizar.

Note que irá aparecer os calendário das escolas, marque todos e clique em sincronizar se tudo ocorreu bem, receberá um alerta de Calendários letivos sincronizados com sucesso, e os calendário das escolas saíram da tela e estão configurados.

9 - Volte para menu Configurações -> Unidades

Clique em Sincronização Completa, note que agora o sistema irá demorar um pouco mais para realizar a sincronização.

Sistema sincronizado e pronto para uso, segundo a manual do git,

Nota: Após esses primeiros passos, recomendamos que a sincronização rode pelo menos diariamente para manter o i-Diário atualizado com o i-Educar

Caso fique a formatação aqui no fórum não fique legal, deixe o link para baixar o arquivo em pdf.

Link do arquivo pdf

2 Curtidas

Blz FLAVIO… amanha irei tentar seguir seu tutorial pra tentar fazer a instalação em modo de produção. Porque em modo de desenvolvimento ja fiz a instalação com ajuda do video e sua. Falta apenas a parte de sincronização em ainda nao conseguir fazer. Valeu…