Skip to content

Repository files navigation

EasINGInious

EasINGInious is a project which tries to simplify the installation of INGInious using Docker in Docker (DinD).

This allows INGInious to separate the grading containers from the application containers using its own Docker daemon and to avoid problems with bind-mounts inside containers.

Setting up a development environment

First, you need to clone the repository and its submodules using the following command:

git clone --recurse-submodules https://github.com/BergLucas/EasINGInious.git

Then, you must install Docker or Podman on your machine.

Next, you must execute and install the application using the following commands:

# Start the application containers
docker compose up -d
podman compose up -d

# To create a super admin
docker compose exec -it app poetry run easinginious createsuperadmin
podman exec -it easinginious-dev_app_1 poetry run easinginious createsuperadmin

# To update the database
docker compose exec -it app poetry run easinginious updatedb
podman exec -it easinginious-dev_app_1 poetry run easinginious updatedb

# To build the grading containers
docker compose exec -it app poetry run easinginious buildcontainers
podman exec -it easinginious-dev_app_1 poetry run easinginious buildcontainers

Setting up a production environment

First, you need to clone the repository and its submodules using the following command:

git clone --recurse-submodules https://github.com/BergLucas/EasINGInious.git

Then, you must install Docker on your machine.

Next, you must execute and install the application using the following commands:

# Start the application containers
docker compose -f docker-compose.yml -f docker-compose.prod.yml -f docker-compose.build.yml up -d
podman compose -f docker-compose.yml -f docker-compose.prod.yml -f docker-compose.build.yml up -d
APP_PORT=8000 podman compose -f docker-compose.yml -f docker-compose.prod.yml -f docker-compose.build.yml up -d  # rootless

# To create a super admin
docker compose -f docker-compose.yml -f docker-compose.prod.yml exec -it app easinginious createsuperadmin
podman exec -it easinginious_app_1 easinginious createsuperadmin

# To update the database
docker compose -f docker-compose.yml -f docker-compose.prod.yml exec -it app easinginious updatedb
podman exec -it easinginious_app_1 easinginious updatedb

# To build the grading containers
docker compose -f docker-compose.yml -f docker-compose.prod.yml exec -it app easinginious buildcontainers
podman exec -it easinginious_app_1 easinginious buildcontainers

About

EasINGInious is a project which tries to simplify the installation of INGInious using Docker in Docker (DinD).

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Used by

Contributors

Languages