Skip to main content

Install & Operations Quick Start

Prerequisites

Quick Start

1) Update Domain/IP for your target environment

On the master node, run:

./manage.sh

Select: 9) Update domains & IPs (or the equivalent option in your current menu).

Then update all domains/IPs to match your real environment (admin, api, contestant, harbor, rancher, grafana, rabbitmq, challenge, registry).

important

Complete this step before Setup master and Install FCTF to avoid wrong ingress/registry/NFS settings.

2) Set up the Master node

On the master node, run:

./manage.sh

Select: 1) Setup master

When prompted, enter:

  1. master TLS SAN (master public IP or domain)
  2. NFS allowed IP (CIDR or *)

After setup completes, save the worker join token.

3) Set up Worker node(s)

On each worker node, run:

./manage.sh

Select: 2) Setup worker

Enter the token from the master setup step to join the cluster.

4) Install the full FCTF platform

On the master node, run:

./manage.sh

Select: 3) Install FCTF

After installation, verify all main endpoints using your configured domains.

The system creates default admin credentials for Harbor, Rancher, Grafana, and RabbitMQ (see table below).

5) Set up Harbor after installation

On the master node:

./manage.sh

Select: 4) Setup harbor

Complete these steps in Harbor UI:

  1. Log in to Harbor
  2. Create a project named fctf
  3. Create a Robot Account for that project
  4. Grant pull + push permissions
  5. Copy robot username/password and input them in terminal as requested by the script
tip

The Harbor project name must be fctf to match the build/push pipeline.

6) Default credentials (change immediately)

ServiceUsernamePassword
Harbor RegistryadminFCTF@2025
RancheradminAb@123456789
GrafanaadminFctf2025@
RabbitMQrabbit-adminFctf2025@admin

7) Post-install validation

  • All pods in main/system namespaces are stable (Running/Completed).
  • All domains are reachable: admin, api, contestant, harbor, rancher, grafana, rabbitmq.
  • Harbor robot account can successfully push/pull images.
  • A sample challenge can be created and previewed to validate deploy/gateway flow.

Also verify:

  • Worker nodes joined successfully (Ready).
  • Main namespaces (app, db, argo, monitoring) show expected workload status.

Before production, run the full test suites (with or without long-running tests) based on your operations plan.