code: function(options) {
      options = options || {};
      if (!('pull' in options)) options.pull = true;
  
      // no pull means no extra stream processing...
      if (!options.pull) return this._run();
  
      return new Promise(function(accept, reject) {
        // pull the image (or use on in the cache and output status in stdout)
        var pullStream =
          utils.pullImageIfMissing(this.docker, this._createConfig.Image);
  
        // pipe the pull stream into stdout but don't end
        pullStream.pipe(this.stdout, { end: false });
  
        pullStream.once('error', reject);
        pullStream.once('end', function() {
          pullStream.removeListener('error', reject);
          this._run().then(accept, reject);
        }.bind(this));
      }.bind(this));
    }
docs: Run the docker process and resolve the promise on complete.
  
  @param {Object} options for running the container.
  @param {Boolean} [options.pull=true] when true pull the image and prepend the
  download details to stdout.