MissionKontrol é um painel de administração que permite aos usuários fazer CRUD de dados em um ou mais bancos de dados. O aplicativo possui seu próprio banco de dados que é usado para armazenar configurações e comentários. Os bancos de dados aos quais você se conecta são atualizados diretamente.
A gem de rails de relé missionkontrol separada melhora as validações de gravação/atualização/exclusão. Estamos pensando em adicionar a capacidade de atualização via webhook/API.
Tabelas CRUD com pesquisa no servidor
Visualizações de arrastar e soltar
Filas de tarefas automatizadas
Sistema de permissões RBAC
Tabelas CRUD com pesquisa no servidor
Gerenciamento de permissões
A documentação completa pode ser encontrada aqui: https://www.missionkontrol.io
Para colocar seu ambiente de desenvolvimento em funcionamento, basta seguir estas etapas.
Instale o Docker
Inicialize o docker com make start
Entre no docker com make bash
Instale dependências do Rails com bundle install
Configure o banco de dados com bundle exec rails db:setup
Teste se funciona executando o bundle exec rails s
Abaixo está um guia para tarefas comuns de desenvolvimento que você provavelmente precisará enquanto trabalha neste aplicativo.
Antes de executar qualquer um desses comandos, você precisa ter certeza de que o Docker está sendo executado com o seguinte:
começar
Se o Docker estiver em execução, mas parece não estar funcionando, você pode seguir os conselhos abaixo.
fazer festa agrupar exec rails s
Para executar todos os testes, você pode fazer o seguinte:
fazer festa pacote executivo rspec
Se você deseja executar um teste específico:
fazer festa pacote exec rspec spec/caminho/to_my_spec.rb
Criando uma migração e executando-a:
fazer festa bundle exec rails g migração CreateProducts nome:string pacote exec rails db:migrate
Recriando o banco de dados:
fazer festa pacote exec rails db:reset
Para configurar o Docker pela primeira vez, use o comando start. É seguro executar várias vezes.
começar
Se quiser parar seus contêineres para economizar bateria ou CPU, você pode executar o seguinte comando stop.
fazer parar
Se você quiser fazer uma reinicialização não destrutiva, apenas para chutar um pouco os pneus, você pode usar o comando restart.
fazer reiniciar
Quando as coisas dão errado ou você para de trabalhar neste aplicativo, você pode querer desmontar a configuração do Docker. Você pode usar este comando:
fazer limpo
Se algo der errado e você quiser começar do zero, reinicie toda a configuração:
fazer limpo começar fazer festa instalação de pacote pacote exec rails db:setup
Existem diversas variáveis de ambiente que podem ser utilizadas para modificar o funcionamento da aplicação e de seus containers.
KUWINDA_DATABASE_HOST
- especifica o endereço do servidor de banco de dados;
KUWINDA_DATABASE_PORT
- especifica a porta do servidor de banco de dados (valor padrão: 5432
);
KUWINDA_DATABASE_USER
- especifica o nome do usuário do banco de dados;
KUWINDA_DATABASE_PASSWORD
- especifica a senha do usuário do banco de dados;
KUWINDA_DATABASE_TIMEOUT
- configura o tempo máximo de espera para o servidor de banco de dados ficar disponível (valor padrão: 42s
);
KUWINDA_DATABASE_SETUP
- indica se o banco de dados será criado do zero (valor padrão: true
);
PORT
- especifica a porta do servidor de aplicação (valor padrão: 3000
);
WEB_CONCURRENCY
- especifica o número de workers
(processos de servidor web bifurcados) para inicializar no modo clusterizado.
RAILS_MAX_THREADS
- especifica o número de threads
que cada um dos trabalhadores usará nos bastidores (valor padrão: 5
);
RAILS_ENV
- especifica o environment
da aplicação (valor padrão: development
);
RAILS_MASTER_KEY
- chave usada para descriptografar o arquivo credentials.yml.enc
criptografado;
RAILS_SERVE_STATIC_FILES
- permite descarregar arquivos estáticos de serviço para o servidor web Apache ou NGINX;
RAILS_LOG_TO_STDOUT
- habilita o envio de logs do ambiente production
para STDOUT
.
Configuração do servidor Web NGINX:
WEB_SERVER_ENABLE
– habilita e executa o nginx quando os containers são iniciados;
WEB_SERVER_USE_HTTPS
- habilita a porta HTTPS no servidor web;
WEB_SERVER_PORT
- permite sobrescrever a porta HTTP padrão - 80/tcp
;
WEB_SERVER_HTTPS_PORT
- permite sobrescrever a porta HTTPS padrão - 443/tcp
;
WEB_SERVER_STATIC_FILES
- permite servir arquivos estáticos por servidor web - deve ser usado em combinação com RAILS_ENV=production
e RAILS_SERVE_STATIC_FILES=true
.