Skip to content

infrastructure configuration of the insalan website

Notifications You must be signed in to change notification settings

InsaLan/infra-insalan.fr

Repository files navigation

insalan.fr infrastructure

This repository is here to hold all insalan.fr infrastructure.

Contributing

Please read carefully the CONTRIBUTING.md file before any contribution.

Installing and running insalan.fr in local

git clone git@github.com:InsaLan/infra-insalan.fr.git --recurse-submodules
cp .env.dist .env
chmod 0600 .env

Edit your .env with your local settings then:

docker compose -f docker-compose-beta.yml up --build -d

You can also launch the beta synchronously to get the logs:

docker compose -f docker-compose-beta.yml up --build

Then to stop the containers:

docker compose -f docker-compose-beta.yml down

The website is available at the value of WEBSITE_HOST which should be insalan.fr or insalan.localhost depending on where it's running. It's API backend is available at api.WEBSITE_HOST.

The "beta" environment is available at beta.WEBSITE_HOST and it's own API at api.beta.WEBSITE_HOST. There is hotreload for the front (with vite), back (with django runserver), and nginx (thanks to a custom script).

Running the prod environment

Put 0 in the .env file for the DEV variable. Run the following command:

docker compose -f docker-compose.yml build
docker compose -f docker-compose.yml up -d

To stop the prod environment:

docker compose -f docker-compose.yml down

The dev frontend is available at WEBSITE_HOST and it's API at api.WEBSITE_HOST.

Tests

It's important to run the tests to ensure that you didn't break anything.

docker exec infra-insalanfr-beta-backend-1 python manage.py test --parallel auto

Makefile

A makefile has been created to create shortcut for the command presented above. For example, you can launch the beta just by typing:

make run-beta

And you can run the tests with

make test-back

Cleanup

Docker can take a lot of disk space with all the images. You have a few options to clean it up:

  • make clean-all will remove all the containers and images
  • make clean-custom will remove all the custom images (the ones we build and not the ones we pull from docker hub)

About

infrastructure configuration of the insalan website

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published