stock_computing_service
Project description
Summary
- This project to Extract/Transform/Load Data from free API provider named AlphaVantage in to a Database
- Provides API service to sync the data, also retrieve from database and get statisttics
Tech Stack
- Python for backend
- FastAPI for runnning api services
- Postgres Database
- Docker to set up image for deployment and local development
- GCP Kubernatess for provisioning of deployments/service
Setup project for development:
source setup.sh
Run using command line:
uvicorn financial.main:app --host 0.0.0.0 --port 8000
- Go to Browser: http://0.0.0.0:8000/docs to test the APIs
Build Docker Image
docker image build -t stock-computing-service .
docker buildx build --platform linux/amd64 -f ./Dockerfile -t image .
Run via Docker using any of the below options:
docker run stock-computing-service
docker-compose up
Upload to docker hub
docker tag stock-computing-service-app shubhamraj2202/stock-computing-service-app:latest
docker push shubhamraj2202/stock-computing-service-app:latest
Delete from docker
docker rmi shubhamraj2202/stock-computing-service-app:latest
DockerHub
https://hub.docker.com/repository/docker/shubhamraj2202/stock-computing-service-app
PyPi
https://pypi.org/project/stock-computing-service/
Maintaining API key
For local development, the API key can be accessed via environment variable FINANCIAL_KEY
- Run
export FINANCIAL_KEY="YourAPIKEY"
on shell.
For production environment, the API key should be stored in a secret management service like Vault, GCP Secret Manager /AWS
TODO Provision: Script to take initial setup of env
Install Google Cloud CLI https://cloud.google.com/sdk/docs/install gcloud init gcloud auth login gcloud auth application-default login gcloud components install gke-gcloud-auth-plugin export GOOGLE_PROJECT=stock-computing-service pulumi new gcp-python pulumi config set gcp:project stock-computing-service pulumi config set gcp:region us-west1 gcloud container clusters get-credentials gke-cluster-f0853e1 --zone us-west1-a cd infra pulumi stack init dev
Reference: https://github.com/pulumi/examples/blob/master/gcp-py-gke/README.md
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for stock_computing_service-1.2.1a1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | f7aca652e62feb63881331ac79221220faf37bd5b7c3d8ea621ef961d93447c1 |
|
MD5 | 2bc5b7565229d32953b5fdf1fe976352 |
|
BLAKE2b-256 | c5c970981df5d0749854a6d3f923725c682e874be54b70df6d64177c7b32e5fb |
Hashes for stock_computing_service-1.2.1a1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1c07511dc02d67498508a1d17779de402e75e70d0c2fb750eb04ac5bbc13c6ed |
|
MD5 | 8e0d1adb10dbfcf32b4ab5f5181c657e |
|
BLAKE2b-256 | fba5151b8c0a8598f15ed17f1031df9e3c152a876643b5cf7347125eff79c245 |