Saltar al contenido principal

(Opcional) Prueba con Docker

Requisitos

Hardware

Si quieres construir la imagen de Docker tú mismo, por favor asegúrate de que tu máquina tenga al menos 2GB de memoria. El frontend de Casdoor es un proyecto NPM de React. Construir el frontend requiere al menos 2GB de memoria. Tener menos de 2GB de memoria puede resultar en un fallo de construcción del frontend.

Si solo necesitas ejecutar la imagen preconstruida, por favor asegúrate de que tu máquina tenga al menos 100MB de memoria.

SO

Todos los sistemas operativos (Linux, Windows y macOS) son compatibles.

Docker

Puedes usar Docker (versión de docker-engine >= 17.05) en Linux o Docker Desktop en Windows y macOS.

Independientemente del sistema operativo, los usuarios deben asegurarse de que tienen versión de docker-engine >= 17.05. Esto se debe a que utilizamos la característica de construcción en múltiples etapas en el docker-compose.yml, que es compatible con las versiones 17.05 y superiores. Para más información, consulta https://docs.docker.com/develop/develop-images/multistage-build/.

Si también estás usando docker-compose, por favor asegúrate de que tienes versión de docker-compose >= 2.2. Para los usuarios de Linux, también necesitas asegurarte de que docker-compose está instalado, ya que es independiente de docker-engine.

Obtener la imagen

Hemos proporcionado dos imágenes de DockerHub:

NombreDescripciónSugerencia
casdoor-all-in-oneTanto Casdoor como una base de datos MySQL están incluidos en la imagenEsta imagen ya incluye una base de datos de juguete y es solo para propósitos de prueba
casdoorSolo Casdoor está incluido en la imagenEsta imagen se puede conectar a tu propia base de datos y usarse en producción
  1. casbin/casdoor-all-in-one: Esta imagen incluye el binario de casdoor, una base de datos MySQL y todas las configuraciones necesarias. Está diseñada para nuevos usuarios que quieren probar Casdoor rápidamente. Con esta imagen, puedes iniciar Casdoor inmediatamente con solo uno o dos comandos, sin ninguna configuración compleja. Sin embargo, por favor ten en cuenta que no recomendamos usar esta imagen en un entorno de producción.

Opción-1: Usa la base de datos de juguete

Ejecuta el contenedor con el puerto 8000 expuesto al host. La imagen se descargará automáticamente si no existe en el host local.

docker run -p 8000:8000 casbin/casdoor-all-in-one

Visita http://localhost:8000 en tu navegador. Inicia sesión en el panel de control de Casdoor con la cuenta de administrador global predeterminada: built-in/admin

admin
123

Opción-2: Prueba directamente con la imagen estándar

consejo

Si no es conveniente montar el archivo de configuración en un contenedor, usar variables de entorno también es una solución posible.

example

docker run \
-e driverName=mysql \
-e dataSourceName='user:password@tcp(x.x.x.x:3306)/' \
-p 8000:8000 \
casbin/casdoor:latest

Crea conf/app.conf. Puedes copiarlo de conf/app.conf en Casdoor. Para más detalles sobre app.conf, puedes ver Via Ini file.

Luego ejecuta

docker run  -p 8000:8000 -v /folder/of/app.conf:/conf casbin/casdoor:latest

De todos modos, solo monta el app.conf en /conf/app.conf y comienza el contenedor.

Visita http://localhost:8000 en tu navegador. Inicia sesión en el panel de control de Casdoor con la cuenta de administrador global predeterminada: built-in/admin

admin
123

Opción-3: Prueba con docker-compose

Crea un directorio conf/app.conf en el mismo nivel de directorio que el archivo docker-compose.yml. Luego, copia app.conf de Casdoor. Para más detalles sobre app.conf, puedes ver Via Ini file.

Crea una base de datos separada usando docker-compose:

docker-compose up

¡Eso es todo! 🛩️

Visita http://localhost:8000 en tu navegador. Inicia sesión en el panel de control de Casdoor con la cuenta de administrador global predeterminada: built-in/admin

admin
123
nota

Si profundizas en el archivo docker-compose.yml, puede que te confunda la variable de entorno que creamos llamada "RUNNING_IN_DOCKER". Cuando la base de datos 'db' se crea a través de docker-compose, está disponible en el localhost de tu PC pero no en el localhost del contenedor de Casdoor. Para evitar que tengas problemas al modificar app.conf, lo cual puede ser bastante difícil para un usuario nuevo, proporcionamos esta variable de entorno y la preasignamos en el docker-compose.yml. Cuando esta variable de entorno está configurada en verdadero, localhost será reemplazado con host.docker.internal para que Casdoor pueda acceder a la base de datos.