An SNS data management system.
- Simple CMS with CRUD APIs for archiving your SNS posts.
- Export SNS medias to files, with EXIF metadata from the SNS posts attached.
All interactions with the system are supposed to made through REST APIs or Django Admin. Interfaces:
- <web_host>/api/docs => Swagger UI
- <web_host>/admin => Django Admin UI
- <flower_host> => Flower UI to monitor Celery tasks (for exporting tasks)
The deployment instructions are based on Docker:
- Modify the docker-compose.yaml as needed, mainly the path of the
data-exportvolume. - Modify the docker-compose.env as needed.
DJANGO_SECRET_KEYwill be generated later. - Run
docker compose run --rm sh pdm run manage.py generate_secret_key. Copy the secret key and put it into theDJANGO_SECRET_KEYin the docker-compose.env file. - Run
docker compose run --rm sh pdm run manage.py migrateto initialize the database schema. - Run
docker compose run --rm sh pdm run manage.py createsuperuser --no-inputto create the admin user. - Run
docker compose up -dto bring up the whole service.
Note: The Docker image assumes that the containers are run by the ROOT user (for rootless docker it's the user that runs the Docker daemon). It assumes the sysadmin either adopts the Docker User Namespace mapping or rootless Docker.