title: docker running but can't access on the server
body: <p>I have stages for Jenkins jobs to test and deploy my nodejs with docker, I run docker on port 3000 but when I tried to browser my <code>ip-server:3000</code>, it doesn't work and nothing 
  my dockers are running </p>
  
  <p>here is my Jenkinsfile </p>
  
  <pre><code>node {
    try {
      stage('Checkout') {
        checkout scm
      }
      stage('Environment') {
        sh 'git --version'
        echo "Branch: ${env.BRANCH_NAME}"
        sh 'docker -v'
        sh 'printenv'
      }
      stage('Build Docker test'){
       sh 'docker build -t crud-test -f Dockerfile.test --no-cache .'
      }
      stage('Docker test'){
        sh 'docker run --rm crud-test'
      }
      stage('Clean Docker test'){
        sh 'docker rmi crud-test'
      }
      stage('Deploy'){
        if(env.BRANCH_NAME == 'master'){
          sh 'docker build -t crud --no-cache .'
          sh 'docker run -d -p 3000:3000 -e DB_USERNAME=myusername -e DB_PASSWORD=12345678 -e DB_NAME=employee crud'
        }
      }
    }
    catch (err) {
      throw err
    }
  }
  </code></pre>
  
  <p>Dockerfile: </p>
  
  <pre><code># Extending image
  FROM node:carbon
  
  RUN apt-get update
  RUN apt-get upgrade -y
  RUN apt-get -y install autoconf automake libtool nasm make pkg-config git apt-utils
  
  # Create app directory
  RUN mkdir -p /usr/src/app
  WORKDIR /usr/src/app
  
  # Versions
  RUN npm -v
  RUN node -v
  
  COPY ./server/ /usr/src/app
  
  RUN npm install
  
  # Port to listener
  EXPOSE 3000
  
  # Environment variables
  ENV PORT 4000
  ENV DB_USERNAME myusername
  ENV DB_PASSWORD 12345678
  ENV DB_NAME employee
  
  # Main command
  CMD [ "npm", "run", "dev" ]
  </code></pre>
  
  <p>I run Jenkins via docker-compose on my ubuntu server,
  is that something I missing or wrong ?? 
  because my goal here using Jenkins to test my server and after the test successfully it gonna deploy my Nodejs on my ubuntu server 
  so after building finish on Jenkins, I could browser my server API on the browser to make sure it works on <code>ip-sever:3000</code> </p>
  
  <p>but on the above pipeline, is that correct that job do every time I push to master, my server API will be updated without click <code>build now</code> on Jenkins? if not, how to configure it?</p>
  
  <p>I am also don't know how to hide my ENV, so I show up on my stage Jenkinsfile because on multibranches pipeline does not have any option for env parameters</p>