Training Setup – Plone Deployment

Training Setup#

Ensure a seamless learning experience by preparing your computer with the necessary software before the training commences.

Pre-requisites#

1. Operating System#

  • Linux/macOS: A recent version is preferred. macOS users should have Homebrew installed.

  • Windows: Consider using WSL2 with Ubuntu, though it’s not officially tested for this training.

2. Code Editor#

Choose a code editor you’re comfortable with, such as VSCode, PyCharm, Sublime, VI, or Emacs.

3. Python#

Install Python version 3.10.x or 3.11.x, ensuring that pip is included and updated.

python -m pip install --upgrade pip

Install pipx for managing Python applications:

python -m pip install --upgrade install pipx

Tip

Use Pyenv if your system doesn’t provide the required Python version.

4. Docker#

Ensure Docker version 20.10.18 or above is installed. Verify with:

docker --version

Ensure Docker is running. Verify with:

docker ps

5. Node and Node Tools#

Install the latest Node LTS version using NVM.

nvm install "lts/*"

Warning

Ensure to use the Node LTS Version (18) that is officially supported by Volto.

nvm install "18"

Todo

In future versions of the cookiecutter template, a .nvmrc file will be included to simplify Node version management. The commands below will be applicable then.

nvm install
nvm use

Install Yeoman globally:

nvm alias default "lts/*"
npm install -g yo

6. External Services#

GitHub Account#

Make sure your computer is set up with the appropriate keys to access your GitHub account, as we will be utilizing GitHub extensively throughout this training.

Container Registry: GitHub or Docker Hub#

We'll use the GitHub Container Registry during the training. The concepts are also applicable to Docker Hub. If you prefer Docker Hub:

  • Create an account at Docker Hub.

  • Configure your local Docker to use Docker Hub credentials.

    docker login
    

7. Cookiecutter#

The latest version of Cookiecutter will be used, and it doesn’t require a separate installation as we’ll use pipx.

8. Make#

Make is pre-installed on most Linux distributions. For macOS, install Xcode and its command-line tools. Windows users are advised to use WSL that includes make.

9. Troubleshooting#

Insufficient Docker virtual disk space#

Docker requires sufficient virtual disk space to install and build images. A typical error message may be: Could not create directory. or anything else that mentions writing to the image. To resolve this, use an appropriate docker system prune option, such as:

docker system prune -a

You can also configure settings for Docker Desktop. Under Prefences > Resources > Advanced, you can configure appropriate settings for virtual disk limit and memory.

Insufficient Docker virtual memory#

Docker requires sufficient memory to install and build images. See the previous item for details.