#232  Remote docker executor
Open
Sebastien Collier opened 6 months ago

I'd like to be able to use a different machine to the one hosting OneDev to run some CI jobs.

If we can pass an environment variable to the docker executable then we could set this with DOCKER_HOST

Robin Shen commented 6 months ago

Would like to know the main reason you want to run on a different machine. Is it for reducing server load, or want to run build on Windows/Linux combo? For both situations, run build in a k8s cluster will be helpful and much flexible and scalable.

Sebastien Collier commented 6 months ago

We are building on different architectures and sometimes spinning up cloud servers temporarily to help with certain builds. It's more convenient to just be able to spin up a machine with docker and go rather than go through the overhead of setting up a k8s cluster. I'm also not really sure how that would work with different architectures.

Robin Shen commented 6 months ago

Spinning up a k8s cluster on GCP/Azure/AWS is really easy. After that, you may deploy OneDev server into k8s cluster directly, and it then can utilize k8s nodes automatically to run your builds on Windows/Linux. And it can scale up/down based on current load. That will be much easy to manage for the long run.

Sebastien Collier commented 6 months ago

Sure, but we're using hardware that we have on premise, and it would be much more convenient if we could simply define a runner for an x86_64 machine and another runner for aarch64 and just select the appropriate one per build job. Spinning up/managing a cluster on prem will take significantly more time than just defining a runner per machine we want to use.

How does selecting of host architecture work with kubernetes?

Robin Shen commented 6 months ago

I am not sure if it supports aarch64. Will add concept of runner in future versions of OneDev.

Andreas Wachter commented 5 months ago

that feature would be perfect. Then I could move away from my gitea/drone environment.

Robin Shen changed milestone 5 months ago
Previous Value Current Value
empty 5.0.0
bufferUnderrun commented 2 months ago

Hi, i will follow this issue as it covers my needs : onedev is running on a windows bare metal machine. Docker is installed too so we can't run our CI/CD for Windows project. But for our others linux project, we have a separed linux distrib with docker. How to tell onedev to run docker on thé Linux Host ???

Thanks

Robin Shen commented 2 months ago

This is my next todo.

Robin Shen batch edited 2 months ago
Previous Value Current Value
empty 5.0.0
No comment
Artur commented 1 month ago

I second that. Support for this would allow to setup a build runner on mac to build MacOS and iOS projects.

issue 1 of 1
Type
New Feature
Priority
Normal
Assignee
Milestone
5.0.0 Open
Issue Votes (2)
Watchers (5)
Reference
issue onedev-server#232
Please wait...
Page is in error, reload to recover