Docker installation
CTFreak provides automatically updated Docker images within the JYP Software Docker Hub organization.
System requirements
- At least 2GB of RAM
- Docker Engine
- Docker Compose
- AMD64 architecture
- CTFreak configuration/data folder must not be located on a network drive
- An active internet connection for at least 2 hours per day to allow license check (only required for licenses other than the FREE Edition)
NB: Ansible integration is only available for manual installation on a Linux or FreeBSD host.
Installing
To install CTFreak as a service, we will rely on docker compose
command.
Create a docker-compose.yml
file with the following content (adapt timezone, proxy, port mapping according to your needs):
services:
ctfreak:
image: jypsoftware/ctfreak
environment:
- TZ=Europe/Paris # Set timezone used to schedule your tasks
# - HTTPS_PROXY=http://user:password@proxy.local:8080 # Uncomment if proxy is needed to check the license key
ports:
- "6700:6700"
volumes:
- ctfreak-data:/data # CTFreak config folder to store logs, embedded database, config file
restart: "unless-stopped"
volumes:
ctfreak-data:
Then while in the same folder as the docker-compose.yml
run:
docker compose up -d
At startup, CTFreak will use its dedicated config folder /data
to store its configuration file, embedded SQLite backend database and execution log files.
Navigate to http://localhost:6700.
Log in with the default user: admin / password: ctfreak.
To complete this installation, we encourage you to configure a reverse proxy and update the global settings.
Switching to a PostgreSQL backend database
If you have opted for a Business Edition license, you can also switch to a PostgreSQL backend database instead of the default embedded SQLite backend database.
Upgrading
Execute:
docker compose pull
docker compose up -d
Uninstall
Execute:
docker compose stop
docker compose rm