/image-blur

google cloud functions & vision api

Primary LanguageJavaScript

下載 docker image

docker pull google/cloud-sdk

檢查是否可用

docker run -ti --rm google/cloud-sdk:latest gcloud version

身份認證並儲存憑證在 gcloud-config 容器

docker run -ti --name gcloud-config google/cloud-sdk gcloud auth login

設定專案

docker run --rm -ti --volumes-from gcloud-config google/cloud-sdk gcloud config set project cloud-functions-d6d13

設定 bucket

docker run --rm -ti --volumes-from gcloud-config google/cloud-sdk gsutil mb gs://image-input-bucket
docker run --rm -ti --volumes-from gcloud-config google/cloud-sdk gsutil mb gs://image-output-bucket

上傳 function

docker run --rm -ti --volumes-from gcloud-config -v /${PWD}:/home google/cloud-sdk /bin/bash -c "cd /home && gcloud functions deploy blurOffensiveImages --runtime nodejs10 --trigger-bucket image-input-bucket --set-env-vars BLURRED_BUCKET_NAME=image-output-bucket"

上傳 image 到 bucket

docker run --rm -ti --volumes-from gcloud-config -v /${PWD}:/home google/cloud-sdk /bin/bash -c "cd /home && gsutil cp zombie.jpg gs://image-input-bucket"

查看 logs

docker run --rm -ti --volumes-from gcloud-config google/cloud-sdk gcloud functions logs read --limit 100

刪除 functions

docker run --rm -ti --volumes-from gcloud-config google/cloud-sdk gcloud functions delete blurOffensiveImages

�local run

docker run --rm -ti --volumes-from gcloud-config -v /${PWD}:/home google/cloud-sdk /bin/bash -c "cd /home && export GOOGLE_APPLICATION_CREDENTIALS="/home/google_application_credentials/cloud-functions-bdbfa45d1e93.json" && apt-get install nodejs -y && node index.js"

�local test

docker run --rm -ti --volumes-from gcloud-config -v /${PWD}:/home google/cloud-sdk /bin/bash -c "cd /home && export GOOGLE_APPLICATION_CREDENTIALS="/home/google_application_credentials/cloud-functions-bdbfa45d1e93.json" && apt-get install nodejs npm -y && npm test"