Sign inSign up

ranasalem13/bin-it

By ranasalem13

Updated 3 months ago

Image
Monitoring & observability
0

996

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

3 months ago

docker pull ranasalem13/bin-it