Dopo un sacco di ore di studio e test, un amico in Google mi mostra una soluzione per questo problema! Grazie Thiago Avancini!
Bene, la soluzione è:
Il primo passo sta usando il managed-VM. (Il repository lo usa.) Ma l'obiettivo è cambiare la gestione da Google a Utente. Quando si esegue questa operazione, il passaggio successivo è creare un IP statico per la propria applicazione. Nel mio caso, usando la porta 3000 per servire il mio Websocket, sentitevi liberi di cambiare. Sul mio app.yaml ho abilitare questa porta anche in questo modo:
network:
forwarded_ports: ["3000"]
Ricordati di abilitare questa porta sul proxy in "rete >> >> predefinita del firewall".
Se si distribuisce l'applicazione tramite gcloud, è necessario abilitare nuovamente l'applicazione sulla gestione utente e l'IP statico.
Invierò a GoogleCloudPlatform questo repo per sarà un esempio per l'utilizzo di websockets su AppEngine.
Sono stato in grado di connettermi a un server Wamp su GAE utilizzando il metodo suggerito ma non ho avuto bisogno di passare la mia istanza a User Managed. – CuriousGeorge