Sign inSign up

ranasalem13/bin-it

By ranasalem13

•Updated 4 months ago

Image
Monitoring & observability
0

1.0K

ranasalem13/bin-it repository overview

⁠Bin It! 🚮

Automated bin collection reminders for households in Glasgow, Scotland 🏴󠁧󠁢󠁳󠁣󠁴󠁿

Bin It! scrapes the Glasgow City Council Refuse and Recycling Calendar⁠ and sends email alerts at 12:00 the day before your bins are due to be collected. Never miss a collection again!

⁠Features

  • Automated scraping of GCC bin collection calendar.
  • Email alerts sent the day before collections
  • Supports backfilling of missing records or updating existing records in the database.
  • MongoDB integration for local storage and querying (required).
  • Mongo Express integration for easy navigation and management of MongoDB.
  • Easy Docker deployment for local development or production.

⁠Quick Start

  1. Clone the repository and set your environment variables (.env).

  2. Build the Docker container:

    docker compose build
    
  3. Start the container:

    docker compose up
    

⁠Running from Docker Hub

  1. Pull the bin-it image:

    docker pull ranasalem13/bin-it:<tag>
    
  2. Create a common network for the application and its dependencies to communicate on:

    docker network create bin-it
    
  3. Run a MongoDB⁠ instance:

    docker run -d \
      --name bin-it-mongo \
      --network bin-it \
      -p 27017:27017 \
      mongo:latest
    
  4. Run a Mongo Express⁠ instance:

    docker run -d \
      --name bin-it-mongo-express \
      --network bin-it \
      -p 8081:8081 \
      -e ME_CONFIG_BASICAUTH_USERNAME=<mongo-express-username> \
      -e ME_CONFIG_BASICAUTH_PASSWORD=<mongo-express-password> \
      -e ME_CONFIG_MONGODB_URL="mongodb://bin-it-mongo:27017/" \
      mongo-express:latest
    
  5. With MongoDB and Mongo Express now running, run the bin-it image:

    docker run -d \
      --name bin-it \
      --network bin-it \
      -e MONGO_URI="mongodb://bin-it-mongo:27017/" \
      -e UPRN="<insert-your-uprn-here>" \
      -e APP_PASSWORD="<insert-your-email-app-password-here>" \
      -e SENDER="[email protected]" \
      -e RECIPIENT="[email protected]" \
      ranasalem13/bin-it:<tag>
    

⁠Environment Variables

For the full list of variables and setup instructions, refer to the GitHub repository⁠.

Tag summary

Content type

Image

Digest

sha256:d8e5904cf…

Size

50 MB

Last updated

4 months ago

docker pull ranasalem13/bin-it