{"id":15230543,"url":"https://github.com/hacknlove/deploymeteor","last_synced_at":"2026-02-04T02:08:41.520Z","repository":{"id":77995927,"uuid":"85732522","full_name":"hacknlove/deployMeteor","owner":"hacknlove","description":"deploy meteor apps","archived":false,"fork":false,"pushed_at":"2019-07-15T05:35:25.000Z","size":12,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-06-25T14:52:26.865Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hacknlove.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-03-21T17:23:54.000Z","updated_at":"2024-04-25T02:36:25.000Z","dependencies_parsed_at":"2023-03-12T03:10:00.933Z","dependency_job_id":null,"html_url":"https://github.com/hacknlove/deployMeteor","commit_stats":{"total_commits":8,"total_committers":1,"mean_commits":8.0,"dds":0.0,"last_synced_commit":"5c8a9985d3d1e07e92c31aea1410d071cbdb1514"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/hacknlove/deployMeteor","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hacknlove%2FdeployMeteor","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hacknlove%2FdeployMeteor/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hacknlove%2FdeployMeteor/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hacknlove%2FdeployMeteor/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hacknlove","download_url":"https://codeload.github.com/hacknlove/deployMeteor/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hacknlove%2FdeployMeteor/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":264614459,"owners_count":23637594,"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":[],"created_at":"2024-09-29T03:05:57.955Z","updated_at":"2026-02-04T02:08:41.485Z","avatar_url":"https://github.com/hacknlove.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# DeployMeteor\n\n    npm install -g deploymeteor\n\n    deployMeteor [--source=./] [--config=./.deployMeteor.yaml [--config=/foo/bar/.{json|yaml}]]\n\n## What does it do?\n\n* build the meteor app `--source=./` *default to current directory*\n* compress the bundle\n* check the configuration\n* check some basic requirements on the servers *(can connect, can write, has docker)*\n* on each server:\n  * pull the docker image (`docker`)\n  * backup previous version (`{{path}}/{{name}}.backup`)\n  * upload the compressed bundle to (`{{path}}/{{name}}`)\n  * uncompress the bundle\n  * create some start and stop scripts (`{{path}}/{{name}}/start.{{port}}.js`) `{{path}}/{{name}}/stop.{{port}}.sh`)\n  * if (`port`) is an array\n    * it does the next steps, once for each port, delaying `checktimes*checkseconds` each\n  * stop previous version\n  * lauch current version\n  * check that it is working in the ip (`bind`) and port (`port`) indicated, (`checktimes`) times maximun, delaying (`checkseconds`) each.\n  * If no one check is successfull:\n    * stop current version\n    * lauch previous version\n\n## .deployMeteor.yaml\n\n### Simple\n\n    root: http://example.com\n    path: /folder/to/be/deployed/in/the/servers\n    name: myMeteorAppName\n    port: 8080\n    mongo:\n      mongodb: mongodb://host1,host2,host3/database?replicaSet=yourReplicaSetName\n      oplog: mongodb://host1,host2,host3/local?replicaSet=yourReplicaSetName\n    ssh:\n      host: yourHost.com\n      username: username\n      privateKey: /home/user/.ssh/id_rsa\n\n### Full\n\n    root: http://example.com\n    path: /folder/to/be/deployed/in/the/servers\n    name: myMeteorAppName\n    port: [8080, 8090]\n    bind: 127.0.0.1\n    settings: ./production.settings.json\n    forwarded: 1\n    checktimes: 10\n    checkseconds: 6\n    docker: 'pykiss/simple-meteor'\n    mongo:\n      mongodb: mongodb://host1,host2,host3/database?replicaSet=yourReplicaSetName\n      oplog: mongodb://host1,host2,host3/local?replicaSet=yourReplicaSetName\n    ssh:\n      - host: yourHost.com\n        username: username\n        privateKey: /home/user/.ssh/id_rsa\n      - host: yourOtherHost.com\n        port: 2222\n        username: OtherUsername\n        password: password\n      - host: [somehos.ts, 'withwqu.al, Credentia.ls]\n        username: username\n        password: password\n\n\n## you can use json with `--config=.../foo.json`\n\n    {\n      \"root\": \"http://example.com\",\n      \"path\": \"/folder/to/be/deployed/in/the/servers\",\n      \"name\": \"myMeteorAppName\",\n      \"port\": [\n        8080,\n        8090\n      ],\n      \"bind\": \"127.0.0.1\",\n      \"settings\": \"./production.settings.json\",\n      \"forwarded\": 1,\n      \"checktimes\": 10,\n      \"checkseconds\": 6,\n      \"docker\": \"pykiss/simple-meteor\",\n      \"mongo\": {\n        \"mongodb\": \"mongodb://host1,host2,host3/database?replicaSet=yourReplicaSetName\",\n        \"oplog\": \"mongodb://host1,host2,host3/local?replicaSet=yourReplicaSetName\"\n      },\n      \"ssh\": [\n        {\n          \"host\": \"yourHost.com\",\n          \"username\": \"username\",\n          \"privateKey\": \"/home/user/.ssh/id_rsa\"\n        },\n        {\n          \"host\": \"yourOtherHost.com\",\n          \"port\": 2222,\n          \"username\": \"OtherUsername\",\n          \"password\": \"password\"\n        },\n        {\n          \"host\": [\n            \"somehos.ts\",\n            \"withwqu.al\",\n            \"Credentia.ls\"\n          ],\n          \"username\": \"username\",\n          \"password\": \"password\"\n        }\n      ]\n    }\n\n## Please, Helpme to improve the documentation\n\nthanks\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhacknlove%2Fdeploymeteor","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhacknlove%2Fdeploymeteor","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhacknlove%2Fdeploymeteor/lists"}