{"id":13804537,"url":"https://github.com/edvisor-io/meteor-google-cloud","last_synced_at":"2025-12-24T07:47:28.617Z","repository":{"id":43119377,"uuid":"184220782","full_name":"edvisor-io/meteor-google-cloud","owner":"edvisor-io","description":"Automate Meteor deployments on Google Cloud App Engine Flexible","archived":false,"fork":false,"pushed_at":"2023-01-03T20:42:13.000Z","size":1234,"stargazers_count":29,"open_issues_count":21,"forks_count":7,"subscribers_count":8,"default_branch":"master","last_synced_at":"2024-11-16T09:30:49.034Z","etag":null,"topics":["app-engine","deployment","gcp","google","hosting","meteor"],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/edvisor-io.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2019-04-30T08:16:02.000Z","updated_at":"2024-06-25T01:29:38.000Z","dependencies_parsed_at":"2023-02-01T09:46:07.067Z","dependency_job_id":null,"html_url":"https://github.com/edvisor-io/meteor-google-cloud","commit_stats":null,"previous_names":["educationlink/meteor-google-cloud"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edvisor-io%2Fmeteor-google-cloud","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edvisor-io%2Fmeteor-google-cloud/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edvisor-io%2Fmeteor-google-cloud/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/edvisor-io%2Fmeteor-google-cloud/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/edvisor-io","download_url":"https://codeload.github.com/edvisor-io/meteor-google-cloud/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":224943135,"owners_count":17396229,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["app-engine","deployment","gcp","google","hosting","meteor"],"created_at":"2024-08-04T01:00:49.684Z","updated_at":"2025-12-24T07:47:28.571Z","avatar_url":"https://github.com/edvisor-io.png","language":"JavaScript","funding_links":[],"categories":["Deployment"],"sub_categories":[],"readme":"# Meteor Google Cloud\n\n[![Project Status: Active – The project has reached a stable, usable state and is being actively developed.](https://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/#active)\n\nA command line tool for deploying Meteor applications on Google Cloud App Engine Flexible.\n\n## What is Google Cloud App Engine Flexible?\n\nApp Engine allows developers to focus on doing what they do best, writing code. Based on Google Compute Engine, the App Engine flexible environment automatically scales your app up and down while balancing the load.\n\n*Meteor needs to run on App Engine Flexible, not Standard.*\n\nApp Engine manages your virtual machines, ensuring that:\n\n- Instances are health-checked, healed as necessary, and co-located with other services within the project.\nCritical, backwards compatible updates are automatically applied to the underlying operating system.\n- VM instances are automatically located by geographical region according to the settings in your project. Google's management services ensure that all of a project's VM instances are co-located for optimal performance.\n- VM instances are restarted on a weekly basis. During restarts Google's management services will apply any necessary operating system and security updates.\n- You always have root access to Compute Engine VM instances. SSH access to VM instances in the flexible environment is disabled by default. If you choose, you can enable root access to your app's VM instances.\n\nFor more information, check: [App Engine Flexible Environment's page](https://cloud.google.com/appengine/docs/flexible/).\n\n## App Engine Flexible Pricing\n\nBecause we run Meteor on the Flexible environment you may not be able to use the free tier of App Engine Standard. For the first year you may have $300 in credit per month, but be aware of the costs:\n\n- [Pricing calculator.](https://cloud.google.com/products/calculator/#id=126a7009-debc-49e7-8e36-f7d5574ecfc1)\n- [More info on App Engine billing.](https://stackoverflow.com/questions/47125661/pricing-of-google-app-engine-flexible-env-a-500-lesson)\n\n## Installation\n\n```bash\nnpm install meteor-google-cloud -g\n ```\n\n## Deploying\n\nTo deploy to App Engine Flexible, follow the steps bellow:\n\n### 1. Install gcloud CLI\n\n```bash\nFollow the guide on: https://cloud.google.com/sdk/install\n```\n\n### 2. Init Meteor Google Cloud\n\nIf this is the first time you deploy, you will need some specific files on your repo, run the command below to get them automatically generated.\n\n```bash\nmeteor-google-cloud --init\n```\n\n### 3. Set your App Engine Flexible settings\n\n```bash\ncd ./deploy\nls\nDockerfile\tapp.yml\t\tsettings.json\n```\n\n- Dockerfile: you can customize your Docker image, if you don't need to or don't know how to, you can either delete this fle or leave iit as is.\n- app.yml: The settings and preferences of your App Engine service goes in here, check [Google's app.yml documentation](https://cloud.google.com/appengine/docs/standard/nodejs/config/appref) for full options.\n- settings.json: This is your normal Meteor settings file, you will need to have the special key `meteor-google-cloud` for the deployment settings.\n  - Required keys:\n    - `project`: The project name of the project on Google Cloud to use.\n  - Other keys: You can add any option you would like here, and they will be passed to `gcloud deploy app` command, for the full list, check [Google's gcloud deploy documentation](https://cloud.google.com/sdk/gcloud/reference/app/deploy).\n\n### 4. Deploy\n\n```bash\nmeteor-google-cloud --settings deploy/settings.json --app deploy/app.yml --docker deploy/Dockerfile \n```\n\nP.S: It may take a few minutes to build your app, which may appear to be unresponsive, but it's not, just wait.\n\n## CLI options\n\nThe Meteor Google Cloud CLI supports the following options:\n\n```bash\n  -v, --version             output the version number\n  -i, --init                init necessary files on your repo\n  -b, --build-only          build only, without deploying to gcp\n  -s, --settings \u003cpath\u003e     path to settings file (settings.json)\n  -c, --app \u003cpath\u003e          path to app.yaml config file\n  -d, --docker \u003cpath\u003e       path to Dockerfile file\n  -p, --project \u003cpath\u003e      path of the directory of your Meteor project\n  -o, --output-dir \u003cpath\u003e   path of the output directory of build files\n  -v, --verbose             enable verbose mode\n  -q, --quiet               enable quite mode\n  -ci, --ci                 add --allow-superuser flag in meteor commands for running in CI\n  -h, --help                output usage information\n  --node-version \u003cversion\u003e  set custom node version\n  --npm-version \u003cversion\u003e   set custom npm version\n```\n\n## FAQ\n**1. Does App Engine supports websockets?**\nYes, announced in February 5, 2019, [more info](https://cloud.google.com/blog/products/application-development/introducing-websockets-support-for-app-engine-flexible-environment).\n\n**2. Does App Engine supports session affinity?** Yes.\n\n**3. Do I get auto scaling?** Yes.\n\n**4. Do I get auto healing?** Yes.\n\n**5. Can I add the environment variables to the `settings.json?`** Yes. Just create add a property `env_variables` to `meteor-google-cloud`. It will prefer those over the ones in your `app.yaml`.\n## Support\n\nWe welcome any questions, contributions or bug reports in the GitHub [issue tracker](https://github.com/EducationLink/meteor-google-cloud/issues).\n\n## Meteor Azure\n\nThis package was heavily inspired on `meteor-azure`, a deployment packge for Meteor applicatons on Microsoft Azure, [click here](https://github.com/fractal-code/meteor-azure) for more information.\n\n## License\n\n[MIT](https://github.com/EducationLink/meteor-google-cloud/blob/master/LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fedvisor-io%2Fmeteor-google-cloud","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fedvisor-io%2Fmeteor-google-cloud","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fedvisor-io%2Fmeteor-google-cloud/lists"}