Skip to content
View in the app

A better way to browse. Learn more.

Unraid

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Dockers for Jenkins and Gerrit?

Featured Replies

I see there are dockers for Jenkins and Gerrit out there.  Is it difficult to convert these for use with unRAID (phusion and a web ui)?

 

I've never created a docker before, but the instructions for Gerrit (simple setup anyway) look pretty straight forward.  I'd appreciate some pointers on getting started.

 

Thanks

  • Author

Guess this is them

...

Yep, that would be them.

 

I found the same dockers you did.  Correct me if I'm wrong, but it seems like there are several things unRAID is doing that are different from just grabbing a docker from somewhere.

1) Ideally, the docker would be based on the unRAID friendly OS (Phusion currently recommended)

2) Providing a webui

3) Since the host OS is known, there are several best practices (user accounts, etc) that are recommended

 

[if it isn't clear, a lot of my information about dockers comes from the guide]

 

I could create a linux VM and set up Gerrit myself.  But it seems like dockers are a better approach in this case.  I'm just struggling with the initial learning curve.

Guess this is them

...

Yep, that would be them.

 

I found the same dockers you did.  Correct me if I'm wrong, but it seems like there are several things unRAID is doing that are different from just grabbing a docker from somewhere.

1) Ideally, the docker would be based on the unRAID friendly OS (Phusion currently recommended)

2) Providing a webui

3) Since the host OS is known, there are several best practices (user accounts, etc) that are recommended

 

[if it isn't clear, a lot of my information about dockers comes from the guide]

 

I could create a linux VM and set up Gerrit myself.  But it seems like dockers are a better approach in this case.  I'm just struggling with the initial learning curve.

 

I'm no expert, I think phusion was recommended so that people weren't using tons of space for several different base images.  Yes most of the dockers provide a webui but not all.  There's nothing stopping you having a CLI docker and using putty to access it on your unraid machine. 

 

If I were you I'd have a go using the docker2xml plugin and see how you get on, if it doesn't suit your needs then you can always make your own.

 

Do Gerrit & Jenkins actually have a webui? I read the description on what they do but I'm still very much ignorant of what they are, but I'm a hobbyist and they looked a bit more targeted towards professionals.

  • Author

Do Gerrit & Jenkins actually have a webui? I read the description on what they do but I'm still very much ignorant of what they are, but I'm a hobbyist and they looked a bit more targeted towards professionals.

Gerrit is a bit like GitHub, a wrapper around git that provides a web interface and code review.  Running it locally means not having all of that (potentially proprietary) code in the cloud.

Jenkins is a Continuous Integration (CI) tool which can integrate with git/Gerrit to run automated tests when code is checked in.

 

Both are common workflow tools for software developers.

 

Maybe I'm misusing the webui term.  I think of it as a ui for setting up the docker.  If that is the case, it would be convenient to provide a UI to set up (for instance) the authorization type for Gerrit.  If it is meant to be a front-end to the running docker, I don't think it applies to Gerrit/Jenkins.

 

For Gerrit, I assume it would be necessary to customize the docker to put the database in /mnt/user/appdata, and not have it deleted if the docker is updated.  Still learning.

Had a quick play with a Gerrit container.  This is running on Unraid after going through the docker2xml plugin and it's based on larrycai/gerrit

 

Kk4FXHp.jpg

 

So it's possible, obviously only you know your exact usage scenario, but as a proof of concept....

 

For Gerrit, I assume it would be necessary to customize the docker to put the database in /mnt/user/appdata, and not have it deleted if the docker is updated.  Still learning.

 

Kind of, what you actually want is to expose a volume that stores your database for example \Gerrit\database\ in the docker then you can map that anywhere on your array.

 

Have you had a play around with any of the other dockers already used here yet?

 

It's a major stumbling block with people getting repeatedly confused about volume mappings, there's normally a thread on the first page with this being the problem.

 

So for instance if you wanted Gerrit and Jenkins to access the same file, then the best way would be to have a folder mapped to both dockers that's exposed as a volume.

 

EG: \mnt\cache\appdata\common\File.ext

 

Now you could have that mapped in both Gerrit and Jenkins under the same volume

 

EG: \Common\

 

or different

 

EG:

\Gerrit\Common\

\Jenkins\Common\

 

However if the apps are in direct communication and updating info about that file then they both need to be reading from the same hymn sheet as it were, so only the first example would work.

 

Sorry if my explanation is not too clear...

 

 

  • Author

Thanks for the help.  Been reading up today.

 

I didn't find the official docker user guide until after I started this thread, unfortunately!

Thanks for the help.  Been reading up today.

 

I didn't find the official docker user guide until after I started this thread, unfortunately!

 

Like I said, I'm no expert and have only modified others' dockerfiles.  But it's a good way to look at what's happening and get an understanding of the system.

I've ripped apart a docker i found for gerrit and rebuilt it, just got to work out the startup scripts etc.

Gerrit container is in my beta repo if you want to test it out, it runs as nobody and the database is persistent as the entire /opt/gerrit run directory is stored locally.

Archived

This topic is now archived and is closed to further replies.

Account

Navigation

Search

Search

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.