Move from App Engine Flex to App Engine Standard Second Generation - google-app-engine

I am trying to move from App engine flex to standard second generation.
I have deployed my code as a docker on AE Flex environment where I even need to install system libraries(zbar-tools, libzbar-dev, ImageMagick), which are not available by default in the standard environment. I have made a few changes to the default parameters of a system library(it had to be done).
How can I perform the same operations related to system libraries in AE second generation environment? If I cannot deploy it as a docker
I did try deploying my docker on AE second generation(by changing the runtime parameter), it crashed
Thanks

Related

SSH Into GAE Standard Environment Instance

Has GCP made any updates yet that allow you to SSH into your GAE Instance when it's running on a Standard environment? I see a post from 2+ years ago saying this is not possible. Is that still so today?
Running in Flex environment ends up being $150/mo, and we have no reason to do that just for SSH access. It seems wild to me that Standard environment would not allow a way to SSH into your machine. Need to confirm before I switch providers that this is not possible
Google App Engine Standard does not support SSH.
SSH requires a server to listen for connections from clients. App Engine Standard does not provide an operating system - only a framework. The SSH protocol is not part of that framework. There are other very popular services such as Cloud Run that also do not support SSH access.
SSH also requires a subsystem to store SSH keys and some form of identity. Those features are also not part of the App Engine Standard framework. Once logged in, SSH requires a command prompt, a set of tools that you can run from the command prompt, etc. Those features would dramatically change the environment.
If you require SSH access, then you will need to choose a service that provides that feature. As that usually requires an OS to support an SSH server, the costs are different.

Docker: Is running tests of a windows product on linux container good?

I have a ASP.NET website which I develop on a windows machine and the users of the website are also 100% windows users.
My question is, if I want to user docker to test the application (with selenium for instance) is using a Linux container a good thing?
Wouldn't that be a misrepresentation of what the production environment?
I just started using docker, and what I though of ideally was -
- I will merge my code to the main branch and deploy in to some VM (Call it VM1).
- On another VM a docker container which has his host file point to VM1, and using that container it will what's in VM1.
Can't someone please focus me on the right path? :)
Thanks, Alex.

gradle-gae-plugin example project does not work

I took some time to create a small example project that uses gradle-gae-plugin.
I based it on one of the tutorial projects that google has.
For some reason it fails to run 100% locally (the upload of order fails) and the upload to google appengine fails.
See https://github.com/oakstair/gradle-gae-plugin-tryout
The example project works fine for me with Java 7. This is the specific version I am using:
java version "1.7.0_21"
Java(TM) SE Runtime Environment (build 1.7.0_21-b12)
Java HotSpot(TM) 64-Bit Server VM (build 23.21-b01, mixed mode)
One thing that needs fixing in your build script is the definition of the gaeSdk dependency. That may not be declared within the gae closure. It needs to go in the dependencies configuration block outside of the gae closure.
Running the application with gaeRun works fine for me. I haven't fully tested the upload. Executing gaeUpdate asks me for your password so I assume it's not broken. What is the error you are seeing?

how can I get the AUFS kernel module on a Google Compute Engine (GCE) kernel?

The latest compute engine kernel is a 3.3.8 variant, and does not appear to have AUFS support configured in. The kernel is distributed outside the main file system image (I am using the default Debian image), and the Debian image does not appear to include AUFS as a module.
Is there already a binary module for AUFS on GCE available somewhere?
If not, how would I go about compiling a module against the kernel provided by the system?
My end goal is to get the Docker LXC manager running, and AUFS is a dependency.
The Google Compute Engine kernels do not currently support AUFS or allow dynamic module loading but I've submitted an internal feature request to address this need. Of course, that's not a commitment, just a way to ensure this gets considered for the future.

How to use ipdb with Google App Engine?

GAE blocks using local libraries that it doesn't support on the server. Generally this is a good thing. Unfortunately this means that ipdb is blocked also. Adding the necessary directory for ipdb to sys.path doesn't work. It continues to give import error.
I've tried copying the ipdb+IPython folders into my gae folder, but this errors on import resource (/usr/lib/python2.7/lib-dynload/resource.so)
Another option might be to try editing GAE so it allows temporary access to local libraries?
The reason I desire ipdb is mainly for it's history and tab completion functionality.
There appears to be a way to get some readline support with pdb on Linux systems, found here https://groups.google.com/forum/?fromgroups=#!topic/django-non-relational/C0g3ZYuhoMw
Basically install the package rlwrap, then run the local server similar to this:
rlwrap python manage.py runserver

Resources