/**
  * Creates virtual hosts and returns them.
  *
  * @return VirtualHost[]
  *      The created virtual hosts.
  */
 private function createVirtualHosts()
 {
     // Search for the platform configuration folder.
     $configFiles = Application::getPlatformConfigParser()->findConfigFiles($this->localProjectDirectory);
     $fs = Application::getFilesystem();
     $vhosts = $fs->getVirtualHostsFromConfig($configFiles, $this->project);
     $vHostDefinition = $fs->addVirtualHostToServer($vhosts);
     // 2. Start the required containers.
     $this->startProjectContainers($vhosts);
     $this->run(sprintf('docker exec -i %s sh -c "echo \'%s\' > %s"', 'web' . $this->serverSuffix, $vHostDefinition, '/usr/local/apache2/conf/extra/httpd-vhosts.conf'));
     // Restart the apache server in web container.
     $this->run(sprintf('docker exec -i %s sh -c "apachectl restart"', 'web' . $this->serverSuffix));
     foreach ($vhosts as $vhost) {
         $this->triggerVirtualHostDetectedEvent($vhost);
     }
     return $vhosts;
 }