ClimWeb Installation Guide
June 3, 2026 ยท View on GitHub
Content Management System for NMHSs in Africa
1. Install Docker Engine & Docker Compose Plugin (skip if docker is already installed)
Docker Engine & Docker Compose Plugin : Ensure that Docker Engine is installed and running on the machine where you plan to execute the docker-compose command https://docs.docker.com/engine/install/. Docker Engine is the runtime environment for containers.
Note Port 80 - Ensure port 80 is available. No other services or applications should be running or listening on port 80.
2. Manage Docker as a non-root user
To create the docker group and add your user:
sudo groupadd docker
sudo usermod -aG docker $USER
Activate the changes to groups:
newgrp docker
3. Download climweb source:
git clone https://github.com/wmo-raf/climweb-docker.git climweb
cd climweb
4. Setup CLIMWEB
make setup
Input variables approriately when prompted. See Environmental Variables
make start
make permit
Once successfully completed, the instance can be found at http://{IP_ADDRESS/HOST}
5. Create superuser to access the CMS Admin interface:
Create superuser providing username, email and strong password
make createsuperuser
The admin instance can be found at http://{IP_ADDRESS}/cms-admin
Next Steps Manage Climweb Version Upgrades
Useful Resources
- User Guide - climweb.readthedocs.io
- Environmental Variables
- Backup Climweb to Google Drive / One Drive everyday
- Backup Climweb to another server everyday
- Migrate Climweb from one server to another
- Manage Climweb Upgrades
Other useful commands
| Purpose | Command | Instructions |
|---|---|---|
| login to shell | make shell | interact with the container's command line and execute commands as if you were directly logged into the container |
| read docker logs | make logs | real-time output of the containers' logs |
| stop/remove docker containers | make down | stop and remove Docker containers |
| check containers status | make status | display container names, their status (running, stopped), the associated services, and their respective health states |
| generate city forecasts from external source | make generate_forecast | used for fetching 7-day forecast from external source (https://developer.yr.no/) |