Announcing Phalcon Support In Google App Engine

March 23, 2017 — Daniel Holmes

Update: I’ve just found out that Phalcon only supports up to PHP 7.0 so make sure that your composer.json file is using a supported php version (The default version is 7.1).

I've been working with Phalcon for some time with our main client and one of my main frustrations has been not having the Phalcon framework bundled in the Google App Engine Flex Environment, as it's forced us to build our own docker images which adds significant time to our deployments.

Contributors to the php-docker image maintained by Google have recently added1 automagic building of the Phalcon extension (and others) and as of today have made the decision to include these packages as installed by default into the Docker image2 3.

How To Enable Phalcon

If any of the packages listed here are extensions that you've been forced to build in your own docker image, you can now entirely ditch a custom docker image and include a php.ini file with you extension=myextension.so line in it to have it installed when you deploy your service.

Keep in mind if you remove your Dockerfile you'll need to change your app.yaml where env: custom will be env: flex. If you don't have env: in your app.yaml it's likely that you're using vm: true which is the deprecated way to use App Engine's flex environment so you'll need to change the vm: true to env: flex.

Note: We've found that changing from vm: true to env: flex has some unintended side effects with routing so make sure to test the change before going live.

If you need help to get your app engine environment setup, please let us know. We're close to being certified as Google Cloud Partners and would be happy to help you with your Google Cloud solutions.

If you've seen this article through a social media site, make sure to upvote it and share it. The more people who know that Phalcon is accessible on one of their favourite cloud platforms the better!

[1] https://github.com/GoogleCloudPlatform/php-docker/pull/229
[2] https://github.com/GoogleCloudPlatform/php-docker/releases/tag/2017-03-22-19-13
[3] https://github.com/GoogleCloudPlatform/php-docker/pull/237