Windows requirements

Using WSL

Since magento-scripts@1.6.0

1. Install WSL

To install WSL2 on Windows follow this guide.

For step #6 Install your Linux distribution of choice we recommend choosing the latest Ubuntu release, as it has the best compatibility on Windows.

1.1 Install Windows Terminal (Optional)

On Windows with WSL, it is recommended to use Windows Terminal. By using it you can open different shells and access different WSL distros in the same place, which is quite handy.

1.2 Install Visual Studio Code (Optional)

VSCode has excellent integration with WSL, so you can run commands, edit code and debug it inside a single editor. Developing in WSL.

2. Install Docker Desktop for Windows

Download and install Docker Desktop for Windows.

3. Enable WSL 2 integration in Docker Desktop settings

Go to Docker Desktop settings > General and make sure that Use the WSL 2 based engine checkbox is checked.

Then, go to Resources >WSL Integration and enable WSL integration into your distro.

Toggle your distro and click Apply & Restart.

4. Install platform-specific dependencies:

Since magento-scripts 1.4.0 CMA will also check installed dependencies before starting the application, and if they are missing will provide instructions on how to install them!

Full list of dependencies for each Linux distro available here.

apt-get install \
    libcurl4-openssl-dev \
    libonig-dev \
    libjpeg-dev \
    libjpeg8-dev \
    libjpeg-turbo8-dev \
    libpng-dev \
    libicu-dev \
    libfreetype6-dev \
    libzip-dev \
    libssl-dev \
    build-essential \
    libbz2-dev \
    libreadline-dev \
    libsqlite3-dev \
    libssl-dev \
    libxml2-dev \
    libxslt1-dev \
    libonig-dev \
    php-cli \
    php-bz2 \
    pkg-config \
    autoconf \
    libsodium-dev

5. Install PHPBrew

Since magento-scripts@1.7.0 this part will be done automatically.

To install PHPBrew on Linux you will need to follow installation instructions or use the commands below:

# Download PHPBrew
curl -L -O https://github.com/phpbrew/phpbrew/releases/latest/download/phpbrew.phar

# Make it executable
chmod +x phpbrew.phar

# Move PHPBrew binary to system folder.
sudo mv phpbrew.phar /usr/local/bin/phpbrew

# Initialize PHPBrew
phpbrew init

6. Prepare the environment

To work with Magento you need access keys to access the Magento repository.

  1. Generate Access Keypair

Now you have a public key and private key values.

To use them you have 2 options:

  1. Use COMPOSER_AUTH environmental variable

    This option is used as a global variable on your machine.

    Replace <public key> and <private key> with your public and private key.

    export COMPOSER_AUTH='{
        "http-basic":{
            "repo.magento.com": {
                "username": "<public key>",
                "password": "<private key>"
            }
        }
    }'

    Add the result to your .bashrc or .zshrc and reload your terminal.

  2. Use auth.json file

    This option is used on a per-project basis, so your credentials will be always correct no matter which project you are working on.

    Create auth.json file in the root of your project and inside put the following content using the same <public key> and <private key> you obtained before:

    {
        "http-basic":{
            "repo.magento.com": {
                "username": "<public key>",
                "password": "<private key>"
            }
        }
    }

7. Start your application

Start command description can be found here. To access Magento CLI, Composer and PHP use cli command.

Using VM

As an option, you can run CMA on Windows using a Linux VM running in Virtual Box (free) or VMWare Workstation Player (paid). We recommend using Ubuntu or Fedora distros, although Linux Mint, CentOS and distros based on apt , pacman, yum, dnf package managers should also work. Installation guide for this option is the same as installing on a common Linux platform.

Last updated