Instalação i-diário - Ubuntu 18.04

Instalação i-diário comunidade

Requisitos:

Instalação:

Execute os seguintes comandos para copiar o projeto para seu servidor:
cd ~/git clone https://github.com/portabilis/i-diario.gitcd i-diario

Banco de dados

Faça a cópia do arquivo configuração de banco de dados:
cp config/database.sample.yml config/database.yml

Edite o arquivos com as configurações de conexão. Lembre-se de utilizar um senha segura e usuário apenas com permissão a tabela do sistema. Meu arquivo ficou da seguinte forma, atentando:

default: &default
  adapter: postgresql
  encoding: utf8
  pool: 50
  username: 'camargo'
  password: 'NleP%6wGI04i'
  host: localhost

production:
  <<: *default
  database: idiario_production 

development:
  <<: *default
  database: idiario_development

test:
  <<: *default
  database: idiario_te

Instalação Ruby

Vou utilizar o rbenv como gerenciador de versão. Faça a instalação conforme documentação constante no projeto.

Para instalação da versão 2.3.7 é necessário instalar algumas dependências:
sudo apt install gcc make libssl1.0-dev libreadline-dev zlib1g-dev libpq-dev g++

O seguinte comando para instalação do ruby:
rbenv install 2.3.7

Após é definido a versão que será utilizado, como existe apenas esse projeto, faço da seguinte forma:
rbenv global 2.3.7

Então instalo o bundler, na versão específica para o projeto:
gem install bundler -v '1.17.3'

Instala as gems do projeto.
bundler install

Configurando

Crie o arquivo config/secrets.yml com o seguinte conteúdo, ajustando conforme seus parâmetros. É possível colocar mais ambientes além de development no mesmo arquivo.

development:
  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

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

O valor para secret_key_base pode ser criado com o comando

Crie o arquivo config/aws.yml com o seguinte conteúdo, ajustando para os seus parâmetro, também sendo possível adicionar outros ambientes além de development:

development:
  access_key_id: AWS_ACCESS_KEY_ID
  secret_access_key: AWS_SECRET_ACCESS_KEY

Crie a base de dados:

bundle exec rake db:create
bundle exec rake db:migrate

Gere seus arquivos de mensagem de erro personalizada:

cp public/404.html.sample public/404.html
cp public/500.html.sample public/500.html

Crie a entidade:

bundle exec rake entity:setup NAME=prefeitura2 DOMAIN=<dominio> DATABASE=prefeitura_diario

Então crio o usuário admin pelo console do rails, bundle exec rails console e insiro o conteúdo, ajustando para minhas necessidades, utilize exit para sair do console:

Entity.last.using_connection {
  User.create!(
    email: 'admin@portabilis.com.br',
    password: '123456789',
    password_confirmation: '123456789',
    status: 'active',
    kind: 'employee',
    admin:  true
  )
}

Então inicialize seu servidor rails.

bundle exec rails server

Você pode alterar o ambiente, por padrão é development, utilizando o RAILS_ENV. Note que há parâmetros também no rails server que permitem mudar porta e IP de escuta entre outros, por exemplo:

RAILS_ENV=production bundle exec rails server -b 0.0.0.0 -p 8080

Alguns dados seus privados estão públicos

@robson configuração do banco? Só exemplo.

esses dados ________

Tiago, excelente tutorial. Consegui instalar i-diario, porém na hora de logar com o usuário que criei não loga no sistema, percebi que tem dois bancos de dados diferentes, um com o nome idiario_development e o outro com o nome de prefeitura_diario.

Utilizando o Dbeaver consigo ver os usuários que criei no banco prefeitura_diario, porém sem acesso. Quando acesso o banco idiario_development não tem usuário criado, mesmo após várias tentativas de criar usuário.


No arquivo database.yml está com o banco idiario_development .

Agradeço desde já pela ajuda.

Tenta instalar o redis, na página do i-diario tem o caminho

Robson, muito obrigado. Deu certo. Realmente não tinha instalado o Redis.

1 curtida

Nobres, esse tutorial ainda esta funcional, pergunto porque não consigo utiliza-lo por conta da versão do ruby que não consigo instalar, há alguma outra forma de instalação usando uma versão mais atualizada do ruby?

Não @araujo. Utilize como informado no tutorial, algum gerenciador de versão como o rbenv ou rmv, ou ainda compile a versão a manualmente.

Ok, obrigado @tiago.camargo

Boa Tarde, esse tutorial pode ser usado no Ubuntu server 20.04?

Obrigado.

Pode sim @Suportepaulo . Só terás que ver a instalação do pacote libssl1.0-dev que não está mais disponível para essa versão do Ubuntu, mas é necessário para instalação do ruby.

1 curtida

Estou tentando instalar ( rbenv install 2.3.7 ) mas ubuntu 18.04 fala que não existe … aceita outra versão? Alguém pode me ajudar ???

Qual erro exatamente está apresentando?

que a versão não existe.

Provavelmente há algum problema na instalação do seu rbenv.
Recomendo que revise o processo.