{"id":21455476,"url":"https://github.com/updatehub/updatehub-ce","last_synced_at":"2025-07-14T23:32:48.091Z","repository":{"id":37693044,"uuid":"150748641","full_name":"UpdateHub/updatehub-ce","owner":"UpdateHub","description":"UpdateHub Community Edition","archived":false,"fork":false,"pushed_at":"2023-03-07T02:38:37.000Z","size":2160,"stargazers_count":65,"open_issues_count":18,"forks_count":15,"subscribers_count":9,"default_branch":"master","last_synced_at":"2024-06-18T23:09:31.441Z","etag":null,"topics":["coap","firmware-update","ota-server","updatehub"],"latest_commit_sha":null,"homepage":"","language":"Go","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/UpdateHub.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,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2018-09-28T13:58:30.000Z","updated_at":"2024-03-22T19:50:30.000Z","dependencies_parsed_at":"2024-06-18T22:48:07.348Z","dependency_job_id":"d58914de-d06b-4f64-b463-e89933af070c","html_url":"https://github.com/UpdateHub/updatehub-ce","commit_stats":null,"previous_names":[],"tags_count":8,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UpdateHub%2Fupdatehub-ce","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UpdateHub%2Fupdatehub-ce/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UpdateHub%2Fupdatehub-ce/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UpdateHub%2Fupdatehub-ce/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/UpdateHub","download_url":"https://codeload.github.com/UpdateHub/updatehub-ce/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":226002997,"owners_count":17558157,"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":["coap","firmware-update","ota-server","updatehub"],"created_at":"2024-11-23T05:12:17.967Z","updated_at":"2024-11-23T05:12:18.561Z","avatar_url":"https://github.com/UpdateHub.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"![UpdateHub logo](https://github.com/UpdateHub/updatehub/blob/v1/doc/updatehub.png?raw=true)\n![CI](https://github.com/UpdateHub/updatehub-ce/workflows/CI/badge.svg)\n[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2FUpdateHub%2Fupdatehub-ce.svg?type=shield)](https://app.fossa.io/projects/git%2Bgithub.com%2FUpdateHub%2Fupdatehub-ce?ref=badge_shield)\n\n---\n\nUpdateHub is an enterprise-grade solution which makes simple to remotely update all your Linux-based devices in the field. It handles all aspects related to sending Firmware Over-the-Air (FOTA) updates with maximum security and efficiency, while you focus in adding value to your product.\n\nTo learn more about UpdateHub, check out our [documentation](https://docs.updatehub.io).\n\n## Features\n\n* **Yocto Linux support**: Integrate UpdateHub onto your existing Yocto based project\n* **Scalable**: Send updates to one device, or one million\n* **Reliability and robustness**: Automated rollback in case of update fail\n* **Powerful API \u0026 SDK**: Extend UpdateHub to fit your needs\n\n# UpdateHub Community Edition\n\nThis is a community edition of **UpdateHub Cloud**, so the core concepts and functionality is identical.\n\nSee the comparison table below to help you to choose which version fits you need:\n\n| Feature                                      | UpdateHubCE | UpdateHubCloud  |\n|:---                                          |    :---:    |      :---:      |\n| Secure communication (HTTPS, CoAP over DTLS) | ✘           | ✔              |\n| Signed packages                              | ✔           | ✔              |\n| Rollouts                                     | ✔           | ✔              |\n| Large scale rollouts                         | ✘           | ✔              |\n| Multiple organizations                       | ✘           | ✔              |\n| Fully monitored updates                      | ✔           | ✔              |\n| Teams                                        | ✘           | ✔              |\n| HTTP API                                     | ✘           | ✔              |\n| Package upload                               | ✔           | ✔              |\n| Multiple products                            | ✘           | ✔              |\n| Advanced device filter                       | ✘           | ✔              |\n| Multiple users                               | ✘           | ✔              |\n\n## Usage\n\nThe easyest way to run a Updatehub CE server is to run a Docker image to start a ready-to-use server.\n\n```\n$ docker run updatehub/updatehub-ce --help\nUsage:\n  updatehub-ce [flags]\n\nFlags:\n      --db string         Database file (default \"updatehub.db\")\n  -h, --help              help for updatehub-ce\n      --password string   Admin password (default \"admin\")\n      --port int          Port (default 8080)\n      --username string   Admin username (default \"admin\")\n\nExample:\ndocker run -d -p 8080:8080 updatehub/updatehub-ce:latest\n\n```\n\nOn the example above, a Docker image will be automatically downloaded and run on 8080 port.\nNow you can access the UpdateHub CE dashboard through the host IP on your web browser.\n\n```\nhttp://\u003cHost_IP_Address\u003e:8080/\n```\n\nThe default login and password is `admin`.\n\n## Building\n\nIf you want to build `updatehub-ce` by yourself, follow these steps:\n\nThe `updatehub-ce` uses `go mod` to manage its dependencies and\n`yarn` to build the web UI for the server. `go mod` should be\nincluded in your default instalation of the `go` toolchain.\n\nYou can refer to yarn's documentation page for informations on\nhow to install it in yor system: https://classic.yarnpkg.com/en/docs/install/\n\nAfter that, need to install `packr` that is a simple solution for\nbundling static assets inside of Go binaries use by\n`updatehub-ce`.\n\nTo install Packr utility and the dependencies:\n\n```\n$ go install github.com/gobuffalo/packr/v2/packr2@latest\n```\n\n\nFinally, you can build `updatehub-ce` as:\n\n```\n$ cd \u003cYOUR-UPDATEHUB-CE-PATH\u003e/ui/ \u0026\u0026 yarn install \u0026\u0026 yarn run build \u0026\u0026 cd ..\n$ ~/go/bin/packr2 install\n$ go build\n$ go install\n```\n\nNow you can run the `updatehub-ce` as:\n\n```\n~/go/bin/updatehub-ce --http 8080\n```\n\n## Yocto Project\n\nTo integrate updatehub to an Yocto image, you need inherit the `updatehub-image`class\nfrom `meta-updatehub`. Also some variables must be set to work properly.\n\nAdd these variables to `conf/local.conf`:\n\n```\nUPDATEHUB_SERVER_URL = 'http://\u003cHost_IP_Address\u003e:8080'\nUPDATEHUB_POLLING_INTERVAL = '1m'\n```\n\n* `UPDATEHUB_SERVER_URL` will point to the `updatehub-ce` IP address. If you don't set this variable, your updatehub agent will not communicate with your `updatehub-ce` server, but with [Updatehub Cloud](https://updatehub.io/) instead.\n* `UPDATEHUB_POLLING_INTERVAL` will set the interval between each polling between the agent and the server. If you don't set this variable, your updatehub agent will poll every 24 hours.\n\nIf you are not familiar with it, you can read the [Yocto Project Reference](https://docs.updatehub.io/yocto-project/yocto-project-reference/) or a [quick start example](https://docs.updatehub.io/quick-starting-with-raspberrypi3/).\n\n## Contributing\n\nUpdateHub is an open source project and we love to receive contributions from our community.\nIf you would like to contribute, please read our [contributing guide](https://github.com/UpdateHub/updatehub/blob/v1/CONTRIBUTING.md).\n\n## License\n\nUpdateHub Community Edition is licensed under the MIT license. See [LICENSE](LICENSE) for the full license text.\n\n\n[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2FUpdateHub%2Fupdatehub-ce.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2FUpdateHub%2Fupdatehub-ce?ref=badge_large)\n\n## Getting in touch\n\n* Reach us on [Gitter](https://gitter.im/UpdateHub/community)\n* All source code are in [Github](https://github.com/UpdateHub)\n* Email us at [contact@updatehub.io](mailto:contact@updatehub.io)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fupdatehub%2Fupdatehub-ce","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fupdatehub%2Fupdatehub-ce","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fupdatehub%2Fupdatehub-ce/lists"}