Environment Setup
Welcome to the workshop on deploying Opal and Molgenis Armadillo infrastructure using Docker. This guide will help you set up your environment to ensure a smooth experience during the workshop.
Prerequisites
Operating System
- Windows Users: Ensure you have WSL2 installed. This allows you to run a Linux environment directly on Windows, which is necessary for Docker.
- Mac and Linux Users: You are good to go with your native terminal.
- Reference System: This workshop material has been tested on Ubuntu 24.04.3 LTS
Software Requirements
- Docker Engine (>= 28.3.3) with Docker Compose
- Windows/macOS: Docker Desktop bundles Docker Compose.
- Linux: Install Docker Engine and Docker Compose separately.
- Required version: Docker Compose v2.39.2 or later
- Git (>= 2.43.0)
- Used for cloning workshop repositories and version control
- Download from git-scm.com
- Alternative: GitHub Desktop for a graphical interface
- Verify installation:
git --version
- Terminal or shell (PowerShell, Windows Terminal, macOS Terminal, Linux shell)
- Text Editor/IDE: VS Code, Sublime, Vim, or similar.
- R (>= 4.3.3) and RStudio Desktop (optional but recommended for client-side checks)
Hardware requirements
- At least 4 CPU cores and 8 GB RAM recommended (4 GB minimum)
- 10+ GB free disk space for images, containers, and volumes
Network and permissions
- Administrative rights to install software
- Unrestricted internet access to
docker.io
,ghcr.io
and GitHub - VPN/proxy configured for Docker if required by your organization
- Virtualization enabled in BIOS/UEFI (Intel VT-x/AMD-V or Apple virtualization)
Install Docker
Windows (WSL2)
- Install and enable WSL2: Microsoft guide
- Install Docker Desktop: Docker Desktop for Windows
- In Docker Desktop settings, enable “Use the WSL 2 based engine” and integration with your WSL distro
macOS
- Install Docker Desktop: Docker Desktop for Mac
Linux
- Install Docker Engine following the official docs: Install Docker Engine
- Install Docker Compose (standalone): Install Docker Compose
Linux post-install (non-root usage)
# Add your user to the docker group and activate it
sudo usermod -aG docker $USER
# Restart your terminal to activate the changes
Verify your setup
Run the following commands. All should succeed without errors.
docker --version
docker-compose --version
docker run --rm hello-world
Expected output (or newer versions):
Docker version 28.3.3, build 980b856 Docker Compose version v2.39.2-desktop.1
Expected output (or newer versions):
Docker version 28.3.3, build 980b856
Docker Compose version v2.39.2-desktop.1
Additional Notes
- Ensure your Docker engine is allocated with sufficient memory (at least 4GB; 8GB recommended) to avoid performance issues.
- Close applications using typical service ports you plan to map (e.g., 8080, 8443) to avoid conflicts.
- On corporate networks, confirm Docker can pull images from public registries.
- Familiarize yourself with basic Docker commands and
docker-compose
operations, as we will be interacting with the console during the workshop. - Important: We use
docker-compose
(with hyphen) throughout this workshop, notdocker compose
(space-separated).
Learn Docker: quick references
- Docker Getting Started: docs.docker.com/get-started
- Docker CLI reference: docs.docker.com/engine/reference/commandline/docker
- Docker Compose overview: docs.docker.com/compose
- Volumes and persistence: docs.docker.com/storage/volumes
- Play with Docker (hands-on labs): labs.play-with-docker.com
By following these steps, your environment will be ready for the workshop. If you encounter any issues, feel free to reach out to the workshop organizers for assistance.