MissionKontrol es un panel de administración que permite a los usuarios CRUD datos en una o más bases de datos. La aplicación tiene su propia base de datos que se utiliza para almacenar configuraciones y comentarios. Las bases de datos a las que se conecta se actualizan directamente.
La gema separada de rieles de retransmisión de Missionkontrol mejora las validaciones de escritura/actualización/eliminación. Estamos considerando agregar la capacidad de actualizar a través de webhook/API.
Tablas CRUD con búsqueda en el servidor
Vistas de arrastrar y soltar
Colas de tareas automatizadas
Sistema de permisos RBAC
Tablas CRUD con búsqueda en el servidor
Gestión de permisos
La documentación completa se puede encontrar aquí: https://www.missionkontrol.io
Para que su entorno de desarrollo esté en funcionamiento, simplemente siga estos pasos.
Instalar ventana acoplable
Arranque la ventana acoplable con make start
Salta a la ventana acoplable con make bash
Instalar dependencias de rieles con bundle install
Configurar la base de datos con bundle exec rails db:setup
Pruebe que funciona ejecutando el bundle exec rails s
A continuación se muestra una guía de tareas de desarrollo comunes que probablemente necesitará mientras trabaja en esta aplicación.
Antes de ejecutar cualquiera de estos comandos, debe asegurarse de que Docker se esté ejecutando con lo siguiente:
empezar
Si Docker se está ejecutando pero no parece funcionar, puede seguir los consejos a continuación.
hacer fiesta paquete de rieles ejecutivos s
Para ejecutar todas las pruebas, puede hacer lo siguiente:
hacer fiesta paquete ejecutivo rspec
Si desea ejecutar una prueba en particular:
hacer fiesta paquete ejecutivo rspec spec/path/to_my_spec.rb
Creando una migración y ejecutándola:
hacer fiesta paquete exec rails g migración CreateProducts nombre:cadena agrupar rieles ejecutivos db:migrar
Recreando la base de datos:
hacer fiesta paquete de rieles ejecutivos db: restablecer
Para configurar Docker por primera vez, utilice el comando de inicio. Es seguro ejecutarlo varias veces.
empezar
Si desea detener sus contenedores para ahorrar batería o CPU, puede ejecutar el siguiente comando de detención.
hacer parada
Si desea realizar un reinicio no destructivo, solo para patear un poco los neumáticos, puede usar el comando de reinicio.
hacer reinicio
Cuando las cosas van mal o deja de trabajar en esta aplicación, es posible que desee eliminar la configuración de Docker. Puedes usar este comando:
hacer limpio
Si algo salió mal y desea comenzar desde cero, puede reiniciar toda la configuración:
hacer limpio empezar hacer fiesta instalación del paquete paquete de rieles ejecutivos db: configuración
Hay varias variables de entorno que se pueden utilizar para modificar el funcionamiento de la aplicación y sus contenedores.
KUWINDA_DATABASE_HOST
: especifica la dirección del servidor de la base de datos;
KUWINDA_DATABASE_PORT
: especifica el puerto del servidor de la base de datos (valor predeterminado: 5432
);
KUWINDA_DATABASE_USER
: especifica el nombre del usuario de la base de datos;
KUWINDA_DATABASE_PASSWORD
: especifica la contraseña del usuario de la base de datos;
KUWINDA_DATABASE_TIMEOUT
: configura el tiempo máximo de espera para que el servidor de la base de datos esté disponible (valor predeterminado: 42s
);
KUWINDA_DATABASE_SETUP
: indica si la base de datos se creará desde cero (valor predeterminado: true
);
PORT
: especifica el puerto del servidor de aplicaciones (valor predeterminado: 3000
);
WEB_CONCURRENCY
: especifica la cantidad de workers
(procesos de servidor web bifurcados) que se iniciarán en modo agrupado.
RAILS_MAX_THREADS
: especifica la cantidad de threads
que cada uno de los trabajadores usará bajo el capó (valor predeterminado: 5
);
RAILS_ENV
: especifica el environment
de la aplicación (valor predeterminado: development
);
RAILS_MASTER_KEY
: clave utilizada para descifrar el archivo credentials.yml.enc
cifrado;
RAILS_SERVE_STATIC_FILES
: permite descargar el servicio de archivos estáticos al servidor web Apache o NGINX;
RAILS_LOG_TO_STDOUT
: permite enviar registros del entorno production
a STDOUT
.
Configuración del servidor web NGINX:
WEB_SERVER_ENABLE
: habilita y ejecuta nginx cuando se inician los contenedores;
WEB_SERVER_USE_HTTPS
: habilita el puerto HTTPS en el servidor web;
WEB_SERVER_PORT
: permite anular el puerto HTTP predeterminado: 80/tcp
;
WEB_SERVER_HTTPS_PORT
: permite anular el puerto HTTPS predeterminado: 443/tcp
;
WEB_SERVER_STATIC_FILES
: permite servir archivos estáticos mediante el servidor web; debe usarse en combinación con RAILS_ENV=production
y RAILS_SERVE_STATIC_FILES=true
.