How to use docker in scripted jenkins pipeline on RHEL7
up vote
0
down vote
favorite
The goal is to start a docker image from a scripted jenkins pipeline.
The node running docker is RHEL7 machine.
On RHEL7 regular users aren't allowed to execute docker commands without sudo, see this post by Dan Walsh.
Sudo has been configured and I set up the alias as recommended.
However jenkins doesn't read the bash profile.
Next I removed the alias and created a script called docker and placed that in directory which I now prepend to the PATH.
The pipeline is now able to execute docker but at the end of the pipeline it tries to call /usr/bin/docker-current and for some reason this doesn't use the script. Even though which docker-current in a sh step in the pipeline shows that it found the script.
All of this feels like I'm missing something.
How can I configure jenkins/docker so that jenkins is able to properly start docker images to run steps in my pipeline?
docker jenkins rhel-7
add a comment |
up vote
0
down vote
favorite
The goal is to start a docker image from a scripted jenkins pipeline.
The node running docker is RHEL7 machine.
On RHEL7 regular users aren't allowed to execute docker commands without sudo, see this post by Dan Walsh.
Sudo has been configured and I set up the alias as recommended.
However jenkins doesn't read the bash profile.
Next I removed the alias and created a script called docker and placed that in directory which I now prepend to the PATH.
The pipeline is now able to execute docker but at the end of the pipeline it tries to call /usr/bin/docker-current and for some reason this doesn't use the script. Even though which docker-current in a sh step in the pipeline shows that it found the script.
All of this feels like I'm missing something.
How can I configure jenkins/docker so that jenkins is able to properly start docker images to run steps in my pipeline?
docker jenkins rhel-7
add a comment |
up vote
0
down vote
favorite
up vote
0
down vote
favorite
The goal is to start a docker image from a scripted jenkins pipeline.
The node running docker is RHEL7 machine.
On RHEL7 regular users aren't allowed to execute docker commands without sudo, see this post by Dan Walsh.
Sudo has been configured and I set up the alias as recommended.
However jenkins doesn't read the bash profile.
Next I removed the alias and created a script called docker and placed that in directory which I now prepend to the PATH.
The pipeline is now able to execute docker but at the end of the pipeline it tries to call /usr/bin/docker-current and for some reason this doesn't use the script. Even though which docker-current in a sh step in the pipeline shows that it found the script.
All of this feels like I'm missing something.
How can I configure jenkins/docker so that jenkins is able to properly start docker images to run steps in my pipeline?
docker jenkins rhel-7
The goal is to start a docker image from a scripted jenkins pipeline.
The node running docker is RHEL7 machine.
On RHEL7 regular users aren't allowed to execute docker commands without sudo, see this post by Dan Walsh.
Sudo has been configured and I set up the alias as recommended.
However jenkins doesn't read the bash profile.
Next I removed the alias and created a script called docker and placed that in directory which I now prepend to the PATH.
The pipeline is now able to execute docker but at the end of the pipeline it tries to call /usr/bin/docker-current and for some reason this doesn't use the script. Even though which docker-current in a sh step in the pipeline shows that it found the script.
All of this feels like I'm missing something.
How can I configure jenkins/docker so that jenkins is able to properly start docker images to run steps in my pipeline?
docker jenkins rhel-7
docker jenkins rhel-7
asked Nov 27 at 11:31
Bram
577312
577312
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
up vote
0
down vote
Instead of giving the Jenkins user sudo and trying to wrap calls to docker with sudo, add the Jenkins user to the docker group:
If you don’t want to preface the docker command with sudo, create a Unix group called docker and add users to it. When the Docker daemon starts, it creates a Unix socket accessible by members of the docker group.
Source from the official documentation with more detailed instructions on giving non-root users access to the docker daemon.
These instructions are what I followed to give Jenkins docker access on RHEL 7 via scripted Pipelines and it seems to work just fine.
add a comment |
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
up vote
0
down vote
Instead of giving the Jenkins user sudo and trying to wrap calls to docker with sudo, add the Jenkins user to the docker group:
If you don’t want to preface the docker command with sudo, create a Unix group called docker and add users to it. When the Docker daemon starts, it creates a Unix socket accessible by members of the docker group.
Source from the official documentation with more detailed instructions on giving non-root users access to the docker daemon.
These instructions are what I followed to give Jenkins docker access on RHEL 7 via scripted Pipelines and it seems to work just fine.
add a comment |
up vote
0
down vote
Instead of giving the Jenkins user sudo and trying to wrap calls to docker with sudo, add the Jenkins user to the docker group:
If you don’t want to preface the docker command with sudo, create a Unix group called docker and add users to it. When the Docker daemon starts, it creates a Unix socket accessible by members of the docker group.
Source from the official documentation with more detailed instructions on giving non-root users access to the docker daemon.
These instructions are what I followed to give Jenkins docker access on RHEL 7 via scripted Pipelines and it seems to work just fine.
add a comment |
up vote
0
down vote
up vote
0
down vote
Instead of giving the Jenkins user sudo and trying to wrap calls to docker with sudo, add the Jenkins user to the docker group:
If you don’t want to preface the docker command with sudo, create a Unix group called docker and add users to it. When the Docker daemon starts, it creates a Unix socket accessible by members of the docker group.
Source from the official documentation with more detailed instructions on giving non-root users access to the docker daemon.
These instructions are what I followed to give Jenkins docker access on RHEL 7 via scripted Pipelines and it seems to work just fine.
Instead of giving the Jenkins user sudo and trying to wrap calls to docker with sudo, add the Jenkins user to the docker group:
If you don’t want to preface the docker command with sudo, create a Unix group called docker and add users to it. When the Docker daemon starts, it creates a Unix socket accessible by members of the docker group.
Source from the official documentation with more detailed instructions on giving non-root users access to the docker daemon.
These instructions are what I followed to give Jenkins docker access on RHEL 7 via scripted Pipelines and it seems to work just fine.
answered Nov 27 at 22:10
jayhendren
228210
228210
add a comment |
add a comment |
Thanks for contributing an answer to Super User!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1378729%2fhow-to-use-docker-in-scripted-jenkins-pipeline-on-rhel7%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown