docs: function(compose, project, opts) {
  
      // Start up a collector of files
      var files = [];
  
      // Check if we are in binary mode or not.
      var isBin = kbox.core.deps.get('globalConfig').isBinary;
  
      // Export our compose stuff and add to commands
      _.forEach(compose, function(unit) {
  
        // If we are in binary mode and have internal compose files then we
        // have to read in files and then export them out because
        // docker compose cannot read a file that is in a binary
        if (isBin && opts && opts.internal) {
          if (typeof unit === 'string') {
            var newUnit = kbox.util.yaml.toJson(unit);
            unit = newUnit;
          }
        }
  
        // Now we can proceed normally. Create files where we need to
        // otherwise use the ones provided
        if (typeof unit === 'object') {
  
          // Create temp stuff
          var tmpDir = path.join(kbox.util.disk.getTempDir(), project);
          fs.mkdirpSync(tmpDir);
  
          // Generate a new compose file and add to our thing
          var fileName = [project, _.uniqueId()].join('-') + '.yml';
          var newComposeFile = path.join(tmpDir, fileName);
          kbox.util.yaml.toYamlFile(unit, newComposeFile);
          unit = newComposeFile;
  
        }
  
        // Add in our unit
        files.push('--file');
        files.push(unit);
  
      });
  
      // Return all the files
      return files;
  
    }