AstroCollector is a web application to collect, unify, display and export photometric data from various star survey archives.
The app is split into three modules:
- ac-frontend
- ac-backend
- deployment
This module contains the frontend part of the application. See the README for details on running the frontend.
This module contains the backend part of the application. See the README for details on running the server.
This module is split into three directories:
- deployment
- dev
- local-deployment
This directory contains a compose file and a deployment script, which builds and deploys the application on the production server.
To deploy the application on the server, please follow those steps:
- Rename the
.env.examplefile to.env - Configure the env values as you wish
- Run the deploy script:
chmod +x deploy.sh
./deploy.shThis directory contains a compose.yml file and a deployment script, which runs the application in development mode.
To run the application in the dev mode, please follow those steps:
- Rename the
.env.examplefile to.env - Configure the env values as you wish
- Run the backend script:
chmod +x run-backend.sh
./run-backend.sh- Run frontend from the
ac-frontenddirectory:
npm run devUnlike the server-deployed app, the dev compose.yml contains fewer services - the PostgreSQL database, Redis broker and Redis in-memory database. FastAPI and Celery are directly run as processes on the host machine.
This directory contains a script to build and run the app in the same way as it is on the production server. All of the services are ran in separate containers, The nginx container emulates the reverse proxy, which is used in production.
For description of env variables, please see the respective .env files.