Classes/Console/Command/InstallCommandController.php
public function setupCommand(
        $force = false,
        $skipIntegrityCheck = false,
        $skipExtensionSetup = false,
        $installStepsConfig = null,
        $databaseDriver = 'mysqli',
        $databaseUserName = '',
        $databaseUserPassword = '',
        $databaseHostName = '127.0.0.1',
        $databasePort = '3306',
        $databaseSocket = '',
        $databaseName = null,
        $useExistingDatabase = false,
        $adminUserName = null,
        $adminPassword = null,
        $siteName = 'New TYPO3 Console site',
        $webServerConfig = 'none',
        $siteSetupType = 'no',
        $nonInteractive = false
    ) {
        $isInteractive = $this->output->getSymfonyConsoleInput()->isInteractive();
        if ($nonInteractive) {
            // @deprecated in 5.0 will be removed with 6.0
            $this->outputLine('<warning>Option --non-interactive is deprecated. Please use --no-interaction instead.</warning>');
            $isInteractive = false;
        }

        $this->outputLine();
        $this->outputLine('<i>Welcome to the TYPO3 Console installer!</i>');
        $this->outputLine();

        $installActionDispatcher = new InstallActionDispatcher($this->output);
        $installationSucceeded = $installActionDispatcher->dispatch(
            $this->request->getArguments(),
            [
                'integrityCheck' => !$skipIntegrityCheck,
                'forceInstall' => $force,
                'interactive' => $isInteractive,
                'extensionSetup' => !$skipExtensionSetup && CompatibilityScripts::isComposerMode(),
            ],
            $installStepsConfig
        );

        if (!$installationSucceeded) {
            $this->quit(2);
        }

        $this->outputLine();
        $this->outputLine('<i>Successfully installed TYPO3 CMS!</i>');
    }
public function setupCommand(
        $force = false,
        $skipIntegrityCheck = false,
        $skipExtensionSetup = false,
        $installStepsConfig = null,
        $databaseDriver = 'mysqli',
        $databaseUserName = '',
        $databaseUserPassword = '',
        $databaseHostName = '127.0.0.1',
        $databasePort = '3306',
        $databaseSocket = '',
        $databaseName = null,
        $useExistingDatabase = false,
        $adminUserName = null,
        $adminPassword = null,
        $siteName = 'New TYPO3 Console site',
        $webServerConfig = 'none',
        $siteSetupType = 'no',
        $nonInteractive = false
    ) {
        $isInteractive = $this->output->getSymfonyConsoleInput()->isInteractive();
        if ($nonInteractive) {
            // @deprecated in 5.0 will be removed with 6.0
            $this->outputLine('<warning>Option --non-interactive is deprecated. Please use --no-interaction instead.</warning>');
            $isInteractive = false;
        }

        $this->outputLine();
        $this->outputLine('<i>Welcome to the TYPO3 Console installer!</i>');
        $this->outputLine();

        $installActionDispatcher = new InstallActionDispatcher($this->output);
        $installationSucceeded = $installActionDispatcher->dispatch(
            $this->request->getArguments(),
            [
                'integrityCheck' => !$skipIntegrityCheck,
                'forceInstall' => $force,
                'interactive' => $isInteractive,
                'extensionSetup' => !$skipExtensionSetup && CompatibilityScripts::isComposerMode(),
            ],
            $installStepsConfig
        );

        if (!$installationSucceeded) {
            $this->quit(2);
        }

        $this->outputLine();
        $this->outputLine('<i>Successfully installed TYPO3 CMS!</i>');
    }
TYPO3 Setup

Use as command line replacement for the web installation process.
Manually enter details on the command line or non interactive for automated setups.
As an alternative for providing command line arguments, it is also possible to provide environment variables.
Command line arguments take precedence over environment variables.
The following environment variables are evaluated:

- TYPO3_INSTALL_DB_DRIVER
- TYPO3_INSTALL_DB_USER
- TYPO3_INSTALL_DB_PASSWORD
- TYPO3_INSTALL_DB_HOST
- TYPO3_INSTALL_DB_PORT
- TYPO3_INSTALL_DB_UNIX_SOCKET
- TYPO3_INSTALL_DB_USE_EXISTING
- TYPO3_INSTALL_DB_DBNAME
- TYPO3_INSTALL_ADMIN_USER
- TYPO3_INSTALL_ADMIN_PASSWORD
- TYPO3_INSTALL_SITE_NAME
- TYPO3_INSTALL_SITE_SETUP_TYPE
- TYPO3_INSTALL_WEB_SERVER_CONFIG

@param bool $force Force installation of TYPO3, even if <code>LocalConfiguration.php</code> file already exists.
@param bool $skipIntegrityCheck Skip the checking for clean state before executing setup. This allows a pre-defined <code>LocalConfiguration.php</code> to be present. Handle with care. It might lead to unexpected or broken installation results.
@param bool $skipExtensionSetup Skip setting up extensions after TYPO3 is set up. Defaults to false in composer setups and to true in non composer setups.
@param string $installStepsConfig Override install steps with the ones given in this file
@param string $databaseDriver Database connection type (one of mysqli, pdo_sqlite, pdo_mysql, pdo_pgsql, mssql) Note: pdo_sqlite is only supported with TYPO3 9.5 or higher
@param string $databaseUserName User name for database server
@param string $databaseUserPassword User password for database server
@param string $databaseHostName Host name of database server
@param string $databasePort TCP Port of database server
@param string $databaseSocket Unix Socket to connect to (if localhost is given as hostname and this is kept empty, a socket connection will be established)
@param string $databaseName Name of the database
@param bool $useExistingDatabase If set an empty database with the specified name will be used. Otherwise a database with the specified name is created.
@param string $adminUserName User name of the administrative backend user account to be created
@param string $adminPassword Password of the administrative backend user account to be created
@param string $siteName Site Name
@param string $webServerConfig Web server config file to install in document root (<code>none</code>, <code>apache</code>, <code>iis</code>)
@param string $siteSetupType Can be either <code>no</code> (which unsurprisingly does nothing at all) or <code>site</code> (which creates an empty root page and setup)
@param bool $nonInteractive Deprecated. Use <code>--no-interaction</code> instead.