Updates to build service
-
Hi all,
We have reworked our build service to make it easy to run custom apps (as mentioned in https://forum.cloudron.io/topic/1958/upcoming-apps). We will have the docs and a blog post later this week, but long story short, you can now install the build service (which was previously a service hosted by us) on your Cloudron itself. The build service is an app that you install on Cloudron just like any other app (it's opensource at https://git.cloudron.io/cloudron/cloudron-build-service). Once installed,cloudron build
will ask you for the credentials to the installed build service and you are good to go. One the Cloudron side, there is a UI to set custom registry auth information (this will be part of 4.3 which will also be released in a day or two).The changes are getting deployed as we speak. Do NOT use the build service app yet on a production system. We are still testing out all the edge cases.
The buildbot will thus be down moving forward. To build your custom apps in the mean time, do this:
- Setup docker locally on your PC/laptop
docker build -t username/myimage:tag
in your codedocker push username/myimage:tag
cloudron install --image username/myimage:tag
-
@yusf Don't even need buildbot anymore (architecturally). We integrated docker based images into the platform proper. https://cloudron.io/documentation/custom-apps/tutorial/ (It's all part of 4.3 which is mostly rolled out now, will make release announcement tomorrow).
-
@yusf The build service app claims it might remove docker images in use by other apps so be careful - otherwise I've been using the same install method since I started using cloudron - looks like the process is the same, and they also streamlined it some which is great as well!
-
This post is deleted!
-
@yusf Correct, it is best to run the build service app in a separate cloudron. Essentially, the build service is building a lot of docker images. It "cleans up" old images periodically. For both of these operations, it requires full access to docker. There is a chance that it removes containers/images of the other apps on Cloudron by mistake. As in, this would be a bug but if someone hits that bug on a production Cloudron that would be a disaster. This is the reason why we recommend running it on a separate Cloudron.
Finally, the build service app is not required at all. You can just build and push images from your laptop or a linux VM or some VPS which has docker.
-
Using this app / build service on a local Cloudron instance - is there a way to take the
push
out of thecloudron build
aspect of this since it's all local. Would save a lot of time when developing locally (if it's even feasible, I don't understand the purpose of thepush
part tbh). -
I think in theory it's possible. But of course, one can only deploy on the server where it was built. There's also some logic in the app to clean up images, which probably has to be fixed up.
-
@MooCloud_Matt setting that up would be a nice how-to writeup for all the folks that want to try installing packaged apps not yet in the app store.