Install

You can download RapidForge binaries from the Releases page. If you need binaries for other platforms, feel free to contact us.

RapidForge is free to use and requires no external dependencies. You can either run the binary directly or use a Docker image. For internal purposes, we use the following Docker image, but you’re free to use any image that includes the tools you need.

FROM debian:latest

# sqlite3 is required if you want Key-Value store to work
RUN apt-get update && apt-get install -y \
    ca-certificates \
    curl \
    jq \
    sqlite3 \
    tar \
    && rm -rf /var/lib/apt/lists/*

WORKDIR /app

# Fetch the latest version dynamically from GitHub
ARG ARCH="x86_64"
ARG PLATFORM="Linux"
ARG BINARY_NAME="rapidforge"
RUN VERSION=$(curl -s https://api.github.com/repos/rapidforge-io/release/releases/latest | jq -r '.tag_name') && \
    TARBALL="${BINARY_NAME}_${PLATFORM}_${ARCH}.tar.gz" && \
    curl -L "https://github.com/rapidforge-io/release/releases/download/${VERSION}/${TARBALL}" -o ${TARBALL} && \
    tar -xzvf ${TARBALL} && \
    chmod +x ${BINARY_NAME} && \
    rm ${TARBALL}

ARG PORT=8080
ENV RF_PORT=$PORT
EXPOSE ${PORT}

CMD ["./rapidforge"]

Configuration

RapidForge is minimally configured software. When RapidForge is ran for the first time it will create username and password for admin user. This will be printed out in logs only for the first time. After that its high recommended to change the password. RapidForge allows user to retrying login only for 5 times. After that user will be forced out of the system. In order to gain access user needs to contact with another admin to restart retries vai user panel.

Environment Variable Default Value Description
RF_DATABASE_URL rapidforge.sqlite3 Database URL
RF_KV_URL None Key-Value store URL
RF_DOMAIN localhost Domain name
RF_PORT :4000 Port number
TLS_CERT None PEM-encoded certificate data
RF_TERM None Enable web terminal for admin

OpenTelemetry Configuration

RapidForge supports OpenTelemetry for distributed tracing and metrics collection. All configuration is done through environment variables with the RF_OTEL_ prefix.

Core Settings

Variable Description Default Required
RF_OTEL_ENABLED Enable/disable OpenTelemetry false Yes
RF_OTEL_ENDPOINT OTLP collector endpoint (without protocol prefix) localhost:4317 No
RF_OTEL_SERVICE_NAME Service identifier in traces/metrics rapidforge No
RF_OTEL_SERVICE_VERSION Service version (auto-detected) No
RF_OTEL_ENVIRONMENT Deployment environment RF_ENV or production No

Exporter Configuration

Variable Description Default Options
RF_OTEL_EXPORTER_TYPE Type of exporter otlp (or stdout in dev) otlp, stdout, none
RF_OTEL_EXPORTER_PROTOCOL OTLP protocol http grpc, http
RF_OTEL_INSECURE Disable TLS verification false true, false
RF_OTEL_HEADERS Additional headers (comma-separated key=value pairs) - e.g., api-key=secret,auth=token

Trace Configuration

Variable Description Default Options
RF_OTEL_TRACES_SAMPLER Sampling strategy parentbased_always_on
RF_OTEL_TRACES_SAMPLER_ARG Sampling ratio (0.0 to 1.0) 1.0 Float between 0 and 1

Metrics Configuration

Variable Description Default
RF_OTEL_METRICS_ENABLED Enable metrics collection true

Honeycomb example

export RF_OTEL_ENABLED=true
export RF_OTEL_ENDPOINT=api.honeycomb.io
export RF_OTEL_EXPORTER_PROTOCOL=http
export RF_OTEL_HEADERS="x-honeycomb-team=<your-api-key>"
export RF_OTEL_SERVICE_NAME=rapidforge
export RF_OTEL_ENABLED=true
export RF_OTEL_ENDPOINT=otel-collector:4317
export RF_OTEL_TRACES_SAMPLER=parentbased_traceidratio

Update

You can use the ./rapidforge binary to manage and update RapidForge. Run ./rapidforge --help to view all available commands.

To update RapidForge to the latest version, use:

./rapidforge update

This command will automatically download the latest version and back up your existing installation.

Note that the update process does not start the new version automatically, since your system configuration may vary. It’s up to your operations team to decide how to start the new version.