Remote docker executor (OD-232)
Sebastien Collier opened 5 years 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 5 years 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 5 years 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 5 years 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 5 years 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 5 years ago

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

  • Andreas Wachter commented 5 years ago

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

  • Robin Shen changed iterations 5 years ago
    Previous Value Current Value
    empty
    5.0.0
  • bufferUnderrun commented 5 years 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 5 years ago

    This is my next todo.

  • Robin Shen batch edited 5 years ago
    Name Previous Value Current Value
    Iterations
    empty
    5.0.0
  • Artur commented 5 years ago

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

  • OneDev changed state to 'Closed' 4 years ago
    Previous Value Current Value
    Open
    Closed
  • OneDev changed state to 'Released' 4 years ago
    Previous Value Current Value
    Closed
    Released
  • Artur commented 4 years ago

    Is there any additional information or documentation on this?

  • Robin Shen commented 4 years ago

    I am writing a tutorial on this. Should be available soon.

  • Robin Shen commented 4 years ago

    Please check below tutorial on how to run job on remote machine with agents:

    https://robinshen.medium.com/effortless-onedev-ci-cd-farm-with-agents-3f51ca5a659f

issue 1/1
Type
New Feature
Priority
Normal
Assignee
Iterations
Issue Votes (2)
Watchers (5)
Reference
OD-232
Please wait...
Connection lost or session expired, reload to recover
Page is in error, reload to recover