I remember that, stdin, stdout & stderr are first 3 entries of file descriptor table in Process control block.
On a AWS EC2 instance(host1), We have jenkins slave(say slave-container).
slave-container consist of docker client that talks to docker daemon running on host1
slave-container launches another docker container(say build-container to build source code) on host1.
Below is the pipeline output from slave-container:
Running on slave-container in /var/jenkins_home/workspace/abc-app
[Pipeline] {
[Pipeline] stage
[Pipeline] { (Buildabcapp)
[Pipeline] sh
+ docker inspect -f . 111111111110.dkr.ecr.us-east-1.amazonaws.com/someteam/abc-build:7-jdk.x.2
.
[Pipeline] withDockerContainer
slave-container seems to be running inside container 55664444444444444444444444444444444444444444
$ docker run -t -d -u 9000:9000 -w /var/jenkins_home/workspace/abc-app --volumes-from 55664444444444444444444444444444444444444444 111111111110.dkr.ecr.us-east-1.amazonaws.com/someteam/abc-build:7-jdk.x.2 cat
[Pipeline] {
[Pipeline] sh
+ grep -q success
+ echo Yes
Above docker run command launches build-container that runs shell commands that gives output on stdout of slave-container:
+ grep -q success
+ echo Yes
How stdout/stderr of build-container shown on stdout of slave-container?