Upload Local Datastore with Application - google-app-engine

I'm using the Eclipse Plugin for App Engine, and I have my application running fine locally (able to read/write to the local Cloud Datastore).
However when I deployed to App Engine, the server copy does not seem to have any Cloud Datastore information. Do I need to upload this separately, and if so how do I do this?

Related

Mount Google Cloud Storage in a Custom Flex GAE

I have a web application in a Custom Runtime Flex App Engine, which is deploy from a docker image, working fine.
This app is connected to a db in Google Cloud SQL to data persistence.
Now I trying to persist file data in a Cloud Storage Bucket, but I do not have found the way to mount this storage like a file system.
Gcsfuse does not work in this case due to privileges are required to tun docker.
In the app.yaml you can specify a volume, but not associate to storage.
How can persist file data with cloud storage in a Custom Flex GAE app?

How to run a Flask app under Google App Engine locally?

I'm using Python 3.x under GAE. Google now recommends avoiding dev_appserver.py and instead to call python main.py.
When I do this my local code modifies my GAE server datastore rather than a local version.
How do I run my Flask app locally? I want to do this so that index.yaml is automatically created and provide a testing environment away from test and production servers.
The reason why my code is not using a local datastore is because I'm calling
from google.cloud import datastore
DATASTORE_CLIENT = datastore.Client()
and this is auto-authenticating to my Google hosted database. How do I have locally run code use a local datastore and server-run code use my server-based datastore?

Why does writing to GCS bucket result in local dev blob store entries instead?

I use the Google App Engine Standard environment to develop my Python app using Development SDK 1.9.61.
I'm trying to learn to use Google Cloud Storage in my app by following these instructions. I verified that my default and staging buckets do exist via the cloud console, and manually uploaded a sample file to each bucket using my browser.
Next, I programmatically uploaded some files to a bucket (so I thought) via my local development app instance per Google's instructions.
However, when I checked my cloud storage buckets via my GCP Console in my browser, I could not find the files. After searching my local development SDK console, I eventually found the files located in the local "Blobstore Viewer".
I'm confused, based on Google's instructions I expected to find the files in my project's cloud storage bucket.
I searched the App Engine Python Release Notes for some potential SDK version changes to explain this behavior, but couldn't find anything relevant.
Is this the way it's supposed to work? Are Google's instructions in error?
If you upload files to a local development server, those exist in-memory on your machine. The GCP Console doesn't interact with your local development server, it interacts with the public (production) Google Cloud Storage API.
So in essence, the files on your local dev server are in a completely different namespace. If you want to interact with the production version of Google Cloud Storage and see the results in the GCP console, you'll need to use a non-dev-server deployment of your application.

Is an App Engine instance required for accessing Datastore?

Do I need to deploy an App (even a dummy one) on the App Engine in order to use the Datastore service using the google-cloud-datastore Java API from a client such as a Compute Engine running in the google cloud?
No, you don't need to deploy an AppEngine app to access the Google Cloud Datastore. You just need to create a project from the Console and you can connect to the Datastore in the project from anywhere using the google-cloud-datasource API.

Connecting to a datastore in GAE when developing in eclipse

I don't get something about the use of datastore in a gae app.
I can see after deploying to GAE your app would be using their datastore in the cloud. But when you are still developing the app in eclipse on your local machine, how is it talking to GAE's datastore?
A local simulation of the appengine datastore is created and used - you're not talking to the actual GAE datastore.
You can view your local datastore by going to :
http://localhost:8888/_ah/admin
while your application is running locally.
(using the correct port for your application)

Resources