I'm trying to set up CI on AWS using the Jenkins image from the Docker hub. I've gotten a few hours into the process (configuring for a Node project), and I've now realized that a few of my npm dependencies require make
in order to build. The Docker image doesn't have make
, nor does it have sudo
, so it looks like I'm unable to apt-get install make
. Is there another way to get make
without having to recreate the image with a Dockerfile that grants root access?
2 Answers
The image is a base official image, it has the minimal tools required for Jenkins to work, by design. There are people that want make, some want multiple versions of ruby, java, etc, some don't want anything in there because they use slaves .
It also doesn't run as root for security reasons following the Docker official images guidelines
Check this to extend the image and install more tools
you can run this command, get bash in your container and then install whatever you want: docker exec -it -u root jenkins bash otherwise you can configure it into your dockerfile
USER
in Dockerfile, but in the startup script.