First Steps
After installing the License Server, follow these steps to set up your admin account, upload the server license, and start issuing licenses to customers.
1. Start the Server
Section titled “1. Start the Server”Standalone binary:
./license-server serveDocker Compose:
docker compose -f deployment/docker-compose.yml up -dThe admin UI is available at http://localhost:5656 once the server is running.
2. Create an Admin Account
Section titled “2. Create an Admin Account”Use the admin create CLI command to create your first administrator.
Interactive mode (prompts for each field):
./license-server admin createNon-interactive mode (all values inline):
./license-server admin create \ --username admin \ --email admin@example.com \ --password 'YourSecurePassword1!'Via Docker:
docker compose exec license-server /app/license-server admin create3. Upload the Server License
Section titled “3. Upload the Server License”The License Server itself requires a valid server license to operate. There are three ways to provide it:
Option A: Via the Admin UI
Section titled “Option A: Via the Admin UI”- Log in at http://localhost:5656 with the admin credentials you just created.
- Navigate to Settings > Server License.
- Upload your
server.licfile.
Option B: Via Environment Variable
Section titled “Option B: Via Environment Variable”Set the LICENSE_SERVER_LICENSE environment variable to the base64-encoded license file:
export LICENSE_SERVER_LICENSE=$(base64 -w0 server.lic)Or in your .env file:
LICENSE_SERVER_LICENSE=<base64-encoded-content>Option C: Via Config File
Section titled “Option C: Via Config File”Set the path to the license file in config.yaml:
server: license: /path/to/server.lic4. Create Features
Section titled “4. Create Features”Features define the capabilities that can be included in a license.
- Navigate to Features in the sidebar.
- Click Add Feature.
- Fill in the details:
- Name — A unique identifier for the feature (e.g.,
advanced-reporting,multi-tenant). - Description — A human-readable description of what the feature enables.
- Name — A unique identifier for the feature (e.g.,
- Click Save.
Repeat for each feature your product offers. Features are reusable across multiple licenses.
5. Create Customers
Section titled “5. Create Customers”Customers represent the organizations or individuals who hold licenses.
- Navigate to Customers in the sidebar.
- Click Add Customer.
- Fill in the customer details:
- Name — Full name of the customer or organization.
- Company — Company or organization name.
- Email — Primary contact email address.
- Contact — Name of the primary contact person.
- Phone — Contact phone number.
- Notes — Any additional information about the customer.
- Click Save.
6. Create Licenses
Section titled “6. Create Licenses”Licenses tie together a customer, a set of features, and usage or time constraints.
- Navigate to Licenses in the sidebar.
- Click Add License.
- Configure the license:
- Customer — Select the customer this license belongs to.
- License Type — Choose one of:
- Time-based — Valid for a specific date range.
- Usage-based — Limited by a usage counter.
- Hybrid — Combines both time and usage limits.
- Expiration — Set the license expiration date (for time-based or hybrid types).
- Features — Select which features to include in this license.
- Activation Limits — Configure how many concurrent activations are allowed.
- Click Save.
The license is now active and can be validated by the client library via the REST or gRPC API.
Next Steps
Section titled “Next Steps”- Learn how to configure the server with custom database, LDAP, SMTP, and TLS settings.
- Integrate license validation into your application with the Go Client or Python Client.
- Set up offline licensing for air-gapped deployments.