Use Case.
      I am a lecturer teaching Agile, Git and CI within a university environment. I would like students to be running individual copies of Jenkins for testing their local code on Git commit hooks and a team Jenkins repository testing code on pushing to the team Git repository (using push hooks).

      The Problem
      The university student has a single user id and profile within the university system. We have access to spare servers but find the existing student profile is used everywhere within this environment meaning the students existing ~/.jenkins configuration file is also used by the server. This is undesirable as we wish to maintain a clear seperation between personal instances of Jenkins and the teams. There are a number of potential solutions, some require credit cards to access free off-site servers, others involve engaging with other departments within the university. We need a solution that scales and can be implemented within the course, in this trimester we are running twenty projects - a number we expect will grow over time.

      The suggested solution
      Jenkins currently uses what appears to be a hard coded configuration file name. It would be a self contained solution to this use case if on installation a flag can be used to set the configuration file name. This would prevent file conflicts and allow a student to run a personal copy of Jenkins and a team Jenkins on a university server.

          [JENKINS-37197] Allow custom configuration-file name

          Mark Waite added a comment -

          You might consider running the personal instances with Docker. They have an isolated file system and process address space and can host multiple instances on a single machine. It would also give your students experience with Docker and containers.

          Mark Waite added a comment - You might consider running the personal instances with Docker. They have an isolated file system and process address space and can host multiple instances on a single machine. It would also give your students experience with Docker and containers.

          Matt Stevens added a comment -

          I tried to set it up with VirtualBox on a server, to find my VirtualBox configuration followed me as well, which solved the Jenkins problem and recreated it as a VirtualBox problem. However, that aside, we are trying to reduce the learning load on these students to the bare minimum needed for the course (A practical 3rd year course to experience Agile development with industry clients. Prescribed tools are GitLab and Jenkins while the twenty projects include embedded systems, IoT devices, SDN firewall, phone apps, management tools, a business simulator, a couple of web apps and a Zoo app). Three weeks in, we still have a handful of students that have not successfully installed Jenkins on their personal machines. Which is not a Jenkins complaint, just a reality of introducing students to new technology.

          Matt Stevens added a comment - I tried to set it up with VirtualBox on a server, to find my VirtualBox configuration followed me as well, which solved the Jenkins problem and recreated it as a VirtualBox problem. However, that aside, we are trying to reduce the learning load on these students to the bare minimum needed for the course (A practical 3rd year course to experience Agile development with industry clients. Prescribed tools are GitLab and Jenkins while the twenty projects include embedded systems, IoT devices, SDN firewall, phone apps, management tools, a business simulator, a couple of web apps and a Zoo app). Three weeks in, we still have a handful of students that have not successfully installed Jenkins on their personal machines. Which is not a Jenkins complaint, just a reality of introducing students to new technology.

          Daniel Beck added a comment -

          JENKINS_HOME=wherever-you-want java -jar jenkins.war

          Daniel Beck added a comment - JENKINS_HOME=wherever-you-want java -jar jenkins.war

            Unassigned Unassigned
            matt123 Matt Stevens
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

              Created:
              Updated:
              Resolved: