Continuous Integration, Raspberry Pi

Jenkins on a Raspberry Pi

So, this was going to be a post about getting a Jenkins server up on a Raspberry Pi. But then I tried it.

Even overclocking the pi modestly, it was Slow. Like, rull slow. I had figured it would be hard to get it to actually build anything with Jenkins, so I was going to set it up with a slave and everything, but I couldn’t even get to the ‘Manage Jenkins’ page to do that. Sat there for 10 minutes, and the page just kept waiting for a response from the pi. Every other page had at least 30s load times. Rough.

So yeah. No Jenkins on a pi. Better just to set it up on a server and be done with it. Also possible that I’ve been overloading my pi, I have like 10 different things running on it, so if you want to give it a go, here’s a quick guide:

Make sure you have java installed (java -version). If you don’t, try running:

sudo apt-get install -y openjdk-6-jre

Next, make sure Jenkins’ port is open:

netstat -an | grep -i 8080

If that command returns nothing, you’re in business. Otherwise, you may need to do some special configuration to get things working. Now try installing jenkins:

sudo apt-get install -y jenkins

and confirm that Jenkins’ port is being listened on:

netstat -an | grep -i 8080

This time it should return something like:

tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN

Now you can go checkout Jenkins on your pi! Just go to http://(pi’s-IP-address):8080/ and wait for it to load the first time.

…and good luck getting it to run at a reasonable speed.

5 thoughts on “Jenkins on a Raspberry Pi”

    1. Normal Raspbian, on a Model B. Perhaps the B+ will do better? Regardless though, I’ve just switched over to Travis for most of my CI needs.

    1. Yes, it’s very possible it’s running on a different port. I haven’t tried this in several years, so I don’t know what it would look like now. You may also have another, different error, since it’s saying TIME_WAIT rather than LISTEN. Check to see if visiting your pi’s ip on port 8000 loads up Jenkins, and if not, check the logs for errors.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s