diff --git a/.gitignore b/.gitignore index 8f511221bc402041c5fdc42719786474e1bf5ddf..c93aef6b204843b53b8b7192dfee2410cd655b11 100644 --- a/.gitignore +++ b/.gitignore @@ -458,3 +458,4 @@ pyrightconfig.json .env.prod .env.prod.db .env.prod.search +demo_media.tar.xz \ No newline at end of file diff --git a/DEMO.md b/DEMO.md index 81c51d13f0ffc3a4c1851e46345398337da30306..80a58fceb23502a9854ccdc6eaa0e23e5e8d6d33 100644 --- a/DEMO.md +++ b/DEMO.md @@ -15,4 +15,35 @@ There is a `db.demo.sqlite3` file containing demo data. You can use it to test t - Username: `demo2` - Email: `demo2@example.com` - Password: `DemoUser` - - Card number: `2222` \ No newline at end of file + - Card number: `2222` + +## Run Demo +```bash +git clone https://git.rb9.xyz/TheJoeCoder/heyheylibrary.git +cd heyheylibrary +cp db.demo.sqlite3 db.sqlite3 +tar -cJvf demo_media.tar.xz ./demo_media +docker compose -f docker-compose.demo.yml up -d +docker compose -f docker-compose.demo.yml exec web python manage.py migrate --noinput +docker compose -f docker-compose.prod.yml exec web python manage.py collectstatic --no-input --clear +docker compose -f docker-compose.demo.yml exec web python manage.py opensearch index --force create +docker compose -f docker-compose.demo.yml exec web python manage.py opensearch document --force index +``` + +## Reset Demo +```bash +# Stop the web container +docker compose -f docker-compose.demo.yml stop web +# Reset the database +rm db.sqlite3 +cp db.demo.sqlite3 db.sqlite3 +# Reset the media +rm -rd demo_media/* +tar -xJvf demo_media.tar.xz ./demo_media +# Start the web container +docker compose -f docker-compose.demo.yml up -d +docker compose -f docker-compose.demo.yml exec web python manage.py migrate --noinput +docker compose -f docker-compose.prod.yml exec web python manage.py collectstatic --no-input --clear +docker compose -f docker-compose.demo.yml exec web python manage.py opensearch document --force delete +docker compose -f docker-compose.demo.yml exec web python manage.py opensearch document --force index +``` \ No newline at end of file diff --git a/Dockerfile.cron.demo b/Dockerfile.cron.demo deleted file mode 100644 index bbfaf646d2bea23d305e0e81c8bdc8fd803252cb..0000000000000000000000000000000000000000 --- a/Dockerfile.cron.demo +++ /dev/null @@ -1,11 +0,0 @@ -FROM debian:bookworm-slim - -RUN apt-get update && apt-get install -y cron - -COPY demo_cronjob /etc/cron.d/cronjob - -RUN chmod 0644 /etc/cron.d/cronjob - -RUN touch /var/log/cron.log - -CMD cron && tail -f /var/log/cron.log \ No newline at end of file diff --git a/demo_cronjob b/demo_cronjob deleted file mode 100644 index dcfde9fc835c69f2d09243d9eb41ceba2f2b99dc..0000000000000000000000000000000000000000 --- a/demo_cronjob +++ /dev/null @@ -1 +0,0 @@ -0 */3 * * * /usr/bin/cp /home/app/web/db.demo.sqlite3 /home/app/web/db.sqlite3 >> /var/log/cron.log 2>&1 diff --git a/docker-compose.demo.yml b/docker-compose.demo.yml index 046656542bf4f6118bbf5ab19251b540f7683358..4ddb4bb23979dfea8841cd77d3d91f812cebd9c6 100644 --- a/docker-compose.demo.yml +++ b/docker-compose.demo.yml @@ -52,14 +52,6 @@ services: networks: - librarydemo - cron: - build: - context: . - dockerfile: Dockerfile.cron.demo - volumes: - - ./db.sqlite3:/home/app/web/db.sqlite3 - - ./db.demo.sqlite3:/home/app/web/db.demo.sqlite3 - volumes: demo_static: demo_opensearch: