Reading the repo
Opening the box…
Reading the repo
Opening the box…
Assembly instructions
Lançando o maior software livre de educação do Brasil!
GitHub didn't answer, so this is the saved copy from 1 days ago
Will it work on macOS?
Heads-upBuilding it yourself? It also needs PostgreSQL, Redis and 3 settings in .env (1 secret).
The maintainers included bin/setup. Open it to see how it's meant to be run: bin/setup on GitHub.
INSTALL.mdVocê pode instalar o i-Diário utilizando Docker ou diretamente no seu servidor web.
Para executar o projeto é necessário a utilização de alguns softwares.
Para instalar o projeto execute todos os passos abaixo:
ATENÇÃO: Essa forma de instalação tem o objetivo de facilitar demonstrações e o desenvolvimento. Não é recomendado para ambientes de produção!
git clone https://github.com/portabilis/i-diario.git && cd i-diario
Faça o build das imagens Docker utilizadas no projeto e inicie os containers da aplicação (pode levar alguns minutos):
docker-compose up --build
Aguarde a instalação finalizar até algo similar aparecer na tela:
idiario-puma | * Puma version: 6.5.0 ("Sky's Version")
idiario-puma | * Ruby version: ruby 2.6.6p146 (2020-03-31 revision 67876) [x86_64-linux]
idiario-puma | * Min threads: 0
idiario-puma | * Max threads: 5
idiario-puma | * Environment: development
idiario-puma | * PID: 1
idiario-puma | * Listening on http://0.0.0.0:3000
idiario-puma | Use Ctrl-C to stop
Você pode criar um arquivo docker-compose.override.yml para personalizar sua instalação do i-Diário.
Para instalar o projeto execute todos os passos abaixo conectado em seu servidor web:
Este passo a passo serve para um servidor Ubuntu 22.04 LTS e não tem configurações mínimas de segurança
Configure o bash para evitar interatividade e erros colaterais:
echo 'export DEBIAN_FRONTEND=noninteractive' >> ~/.bashrc
echo 'export SSL_CERT_FILE=/etc/ssl/certs/ca-certificates.crt' >> ~/.bashrc
source ~/.bashrc
# Fix: https://gist.github.com/devisaah/1489d2f3137e231d3cd82153e7e6bfe0
echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p
Instale as dependências:
apt update
apt install -y curl wget git build-essential libpq-dev shared-mime-info imagemagick rbenv postgresql postgresql-contrib redis
Instale e configure o OpenSSL, é necessária uma configuração especial devido a versão do Ruby:
mkdir ~/openssl
cd ~/openssl
wget https://www.openssl.org/source/openssl-1.1.1w.tar.gz
tar -xzvf openssl-1.1.1w.tar.gz
cd openssl-1.1.1w
./config --prefix=/opt/openssl-1.1 --openssldir=/opt/openssl-1.1
make -j$(nproc)
make install
cd ~/
Configure o rbenv:
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bashrc
echo 'eval "$(rbenv init -)"' >> ~/.bashrc
source ~/.bashrc
Instale e configure o Ruby, garanta que a versão exibida ao final é a 2.6.6:
RUBY_CONFIGURE_OPTS="--with-openssl-dir=/opt/openssl-1.1" rbenv install 2.6.6
rbenv global 2.6.6
source ~/.bashrc
ruby -v
Defina a versão do Bundler:
gem update --system 3.3.22
gem install bundler -v 2.4.22
Inicialize o banco de dados:
systemctl enable postgresql
systemctl start postgresql
cd /tmp
sudo -u postgres createuser idiario --superuser
sudo -u postgres psql -U postgres -c "ALTER USER idiario WITH PASSWORD 'idiario';"
cd ~
Instale o Node.js 22 LTS, NPM e Yarn:
curl -fsSL https://deb.nodesource.com/setup_22.x | bash -
apt install -y nodejs
npm install -g yarn
Clone o repositório do i-Diário:
git clone https://github.com/portabilis/i-diario.git
cd i-diario
Instale o i-Diário:
bundle install
yarn install
Configure e copie os arquivos necessários:
cp config/database.sample.yml config/database.yml
cp public/404.html.sample public/404.html
cp public/500.html.sample public/500.html
echo -e "
development:
secret_key_base: `bundle exec rails secret`
REDIS_URL: 'redis://localhost'
" > config/secrets.yml
Finalize a instalação:
bundle exec rails db:create
bundle exec rails db:migrate
echo "bundle exec rails entity:setup NAME=idiario DOMAIN=$(hostname -I | awk '{print $1}') DATABASE=idiario" | bash
bundle exec rails entity:admin:create NAME=idiario ADMIN_PASSWORD=A123456789$
Após os passos acima, o i-Diário estará completamente instalado e é preciso subir os serviços necessários para o funcionamento completo do software.
Para executar o software, é preciso executar em 3 abas distintas do servidor cada um dos comandos abaixo:
Ativar o Puma para responder na porta 80.
bundle exec rails server -b 0.0.0.0 -p 80
Ativar o Sidekiq para processar a fila de sincronização.
bundle exec sidekiq -q synchronizer_enqueue_next_job -c 1 --logfile log/sidekiq.log
Ativar o Sidekiq para processar as demais filas.
bundle exec sidekiq -c 10 --logfile log/sidekiq.log
Acesse http://localhost:3000 ou o IP do seu servidor para fazer o seu primeiro acesso.
O usuário padrão é: admin / A senha padrão é: A123456789$.
Assim que realizar seu primeiro acesso não se esqueça de alterar a senha padrão.
Para fazer a sincronização entre i-Educar e i-Diário é necessário configurar os dados do ambiente do i-Educar em
Configurações > API de Integração.
Após configurada a integração, será exibido dois botões:
Sincronizar: ao clicar neste botão, será somente sincronizado os dados inseridos/atualizados/deletados após a
última data de sincronização.Sincronização completa: ao clicar nesse botão, será feita uma sincronização de todos os dados dos últimos 2 anos.
Este botão apenas é exibido para o usuário admin.Nota: é recomendada que a sincronização seja executada diariamente para manter o i-Diário atualizado com o i-Educar
O brasão enviado em Configurações > Entidade é gravado em WebP, limitado a 400 px no maior lado, com uma versão PNG do mesmo tamanho para os relatórios em PDF.
Brasões enviados antes dessa otimização continuam funcionando com o arquivo original; para convertê-los, rode:
bundle exec rake entity_logo:optimize # todas as entidades
bundle exec rake entity_logo:optimize TENANT=nome # só a entidade com esse nome
Then run bash setup.sh. It stops at the first error and is safe to run again. Servers and tests aren't started; it lists them at the end. Read it first.
Needs Git: xcode-select --install
git clone https://github.com/portabilis/i-diario.git cd i-diario
Node.js 22.13.1, Ruby 2.7.8
# needs nvm: brew install nvm (or https://github.com/nvm-sh/nvm) nvm install 22 brew install rbenv ruby-build rbenv install --skip-existing
Fill in secrets: E2E_USER_PASSWORD
cp .env.e2e.example .env
Needs: PostgreSQL, Redis
brew install --cask docker # Docker Desktop docker compose -f docker-compose.yml up -d
corepack enable yarn install bundle install
bin/rails db:prepare
bin/rails server
yarn test bin/rails test
No reports for macOS yet.
GitManual AI Agent reads the 11 key files and writes a step-by-step guide for macOS. Once written, it's saved for everyone.