Downloading & Installing

The following documentation is for SuiteCRM Version 8+; to see documentation on the same topic for Version 7, click here.

Downloading and installing SuiteCRM

If you are installing SuiteCRM for the first time, follow the instructions in this section. If you have an earlier version of SuiteCRM installed, refer to the upgrade section for instructions on how to upgrade your SuiteCRM instance. Follow the steps listed below to install SuiteCRM:

Downloading the latest SuiteCRM files

  1. Install the platform-appropriate version of PHP, web server, and database on your machine.

  2. Download the SuiteCRM files from suitecrm.com (see "Downloading the latest SuiteCRM files" section).

  3. Copy the SuiteCRM files to your web server.

Installation pre-requisites

See the Compatibility matrix to ensure you have the correct versions of the required softwares.

Some of the dependencies in the above link are only required when setting up a development environment. When installing SuiteCRM from a package zip you do not need to install the dependencies that are for development, namely: node, angular cli, yarn/npm The reason being that SuiteCRM 8 package zip comes with the pre-built front end files under public/dist

Please make sure that your apache has mod_rewrite enabled and that it is properly configured to allow for re-writes. All SuiteCRM-Core api calls depend on this (calls to api/graphql) if re-rewrites are not allowed you will get a 404 when calling the api.

Preparing and installing SuiteCRM files to a web server

  1. Locate the directory on the webserver in which the SuiteCRM directory will be located (most commonly the root directory or within a subdirectory).

  2. Unzip the SuiteCRM zip file contents to your destination directory.

  3. Set the required permissions to continue with the install as follows;

    find . -type d -not -perm 2775 -exec chmod 2775 {} \;
    find . -type f -not -perm 0644 -exec chmod 0644 {} \;
    find . ! -user www-data -exec chown www-data:www-data {} \;
    chmod +x bin/console
    • That www-data needs to be replaced by the actual system user that your webserver runs under. This varies depending on your operating system. Common web server users are as follows:

      • www-data (Ubuntu Linux/Apache)

      • apache (Linux/Apache)

      • nobody (Linux/Apache)

      • IUSR_computerName (Windows/IIS)

The commands/steps taken to set permissions differ depending on your operating system. If you are experiencing issues with setting permissions on your SuiteCRM instance, visit our support forums.

  1. Install the system (suite core and legacy)

    Depending on your setup, you maybe required to create the database before you run the command. The command will then create the needed tables.

    • Run command:

      1. Option 1 - Run ./bin/console suitecrm:app:install without any options, the command will ask you for the required options

      2. Option 2 - Run ./bin/console suitecrm:app:install in one line by passing the required options the. See the section below for more detail.

        ./bin/console suitecrm:app:install -u "admin_username" -p "admin_password" -U "db_user" -P "db_password" -H "db_host" -N "db_name" -S "site_url" -d "demo_data"

        Further Info

        #Example
        ./bin/console suitecrm:app:install -u "admin" -p "pass" -U "root" -P "dbpass" -H "mariadb" -N "suitecrm" -S "https://yourcrm.com/" -d "yes"
        • “admin_username” - The SuiteCRM administrator username.

        • "admin_password" - The SuiteCRM administrator password.

        • "db_user" - The username for the Database Administrator

          • Ensure that the Database Administrator you specify has the permissions to create and write to the SuiteCRM database.

          • For MySQL, MariaDB and SQL Server, the Installer selects the Admin User as the SuiteCRM Database User by default. The SuiteCRM application uses SuiteCRM Database User to communicate with the SuiteCRM database.

        • "db_password" - The password for the Database Administrator

        • "db_host" - The Host Instance for the MySQL, MariaDB or SQL Server. The hostname is, by default, set to localhost if your database server is running on the same machine as your web server.

        • "db_name" - The name of the database you wish to create for this instance.

        • "site_url" - The URL to the SuiteCRM 8 instance.

        • "demo_data" - Whether to install with demo data. Possible values: 'yes' , 'no'

  2. After allowing time for the installation to complete, again set permissions as done in step 3.

    find . -type d -not -perm 2775 -exec chmod 2775 {} \;
    find . -type f -not -perm 0644 -exec chmod 0644 {} \;
    find . ! -user www-data -exec chown www-data:www-data {} \;
    chmod +x bin/console
    • That www-data needs to be replaced by the actual system user that your webserver runs under.

  3. Set your web server DocumentRoot to /{root}/{suitecrm-8}/public. This is normally found in /etc/apache2/sites-available/applications.conf

    It is highly recommended that you update the webroot or configure vhost to point to the public directory, as the other files and folder should not be available to the web.

  4. After the script has finished running, you can access the instance at the https://yourcrm.com/

Content is available under GNU Free Documentation License 1.3 or later unless otherwise noted.