Improve running redis locally

- adds simple explicit instructions for how to install and run
  redis
- gets celery running in docker able to talk to redis running
  natively on your machine as per
  https://docs.docker.com/desktop/mac/networking/#i-want-to-connect-from-a-container-to-a-service-on-the-host
This commit is contained in:
David McDonald
2022-02-08 17:09:36 +00:00
parent 4dfdb837bb
commit d567d1529d
3 changed files with 13 additions and 3 deletions

View File

@@ -61,10 +61,18 @@ export PATH=${PATH}:/Applications/Postgres.app/Contents/Versions/11/bin/
### Redis
To switch redis on you'll need to install it locally. On a OSX we've used brew for this. To use redis caching you need to switch it on by changing the config for development:
You can run redis locally using
REDIS_ENABLED = True
```
brew install redis
redis-server
```
To get the API to use redis locally you need to change the config for development:
```
REDIS_ENABLED = True
```
## To run the application

View File

@@ -428,7 +428,7 @@ class Development(Config):
NOTIFY_EMAIL_DOMAIN = "notify.tools"
SQLALCHEMY_DATABASE_URI = os.getenv('SQLALCHEMY_DATABASE_URI', 'postgresql://localhost/notification_api')
REDIS_URL = 'redis://localhost:6379/0'
REDIS_URL = os.getenv('REDIS_URL', 'redis://localhost:6379/0')
ANTIVIRUS_ENABLED = os.getenv('ANTIVIRUS_ENABLED') == '1'

View File

@@ -9,11 +9,13 @@ source environment.sh
AWS_ACCESS_KEY_ID=${AWS_ACCESS_KEY_ID:-"$(aws configure get aws_access_key_id)"}
AWS_SECRET_ACCESS_KEY=${AWS_SECRET_ACCESS_KEY:-"$(aws configure get aws_secret_access_key)"}
: "${SQLALCHEMY_DATABASE_URI:=postgresql://postgres@host.docker.internal/notification_api}"
REDIS_URL="redis://host.docker.internal:6379"
docker run -it --rm \
-e AWS_ACCESS_KEY_ID=$AWS_ACCESS_KEY_ID \
-e AWS_SECRET_ACCESS_KEY=$AWS_SECRET_ACCESS_KEY \
-e SQLALCHEMY_DATABASE_URI=$SQLALCHEMY_DATABASE_URI \
-e REDIS_URL=$REDIS_URL \
-v $(pwd):/home/vcap/app \
${DOCKER_IMAGE_NAME} \
${@}