Files
container/semaphore/.env
2025-08-04 10:46:22 +00:00

53 lines
1.9 KiB
Bash

# .env file for Semaphore with OpenID Connect
# --- Database Configuration ---
# Use a strong password for the database
POSTGRES_HOST=database
POSTGRES_USER=semaphore
POSTGRES_PASSWORD=your_strong_db_password
POSTGRES_DB=semaphore
# --- Semaphore Configuration ---
# Generate a random string for database encryption
# You can use a tool like "openssl rand -base64 32" to generate a string.
SEMAPHORE_DATABASE_ENCRYPTION=CHANGE_THIS_TO_A_RANDOM_STRING
# A user to be created on first start (if the database is empty)
SEMAPHORE_DEFAULT_USER=admin
SEMAPHORE_DEFAULT_EMAIL=admin@example.com
SEMAPHORE_DEFAULT_PASSWORD=your_secure_admin_password
# The port where Semaphore will listen
SEMAPHORE_PORT=3000
# The URL of your Semaphore instance. This is required for OpenID.
# Replace with the actual URL where you will access Semaphore.
SEMAPHORE_URL=http://localhost:3000
# --- OpenID Connect Configuration ---
# Enable OpenID Connect authentication
SEMAPHORE_OIDC_ENABLED=true
# Your OpenID provider's discovery URL.
# Example: https://accounts.google.com/.well-known/openid-configuration
SEMAPHORE_OIDC_DISCOVERY_URL=YOUR_OPENID_DISCOVERY_URL
# The client ID you get from your OpenID provider
SEMAPHORE_OIDC_CLIENT_ID=YOUR_CLIENT_ID
# The client secret you get from your OpenID provider
SEMAPHORE_OIDC_CLIENT_SECRET=YOUR_CLIENT_SECRET
# A list of OpenID users who will have admin privileges in Semaphore.
# The value should be the subject (sub) or email of the user.
# You can list multiple users separated by a comma, e.g., "user1,user2".
SEMAPHORE_OIDC_ADMIN_USERS=admin@example.com
# The scope to request from the OpenID provider.
# "openid" and "email" are standard. You may need more depending on your provider.
SEMAPHORE_OIDC_SCOPE=openid email
# --- Docker Compose Variables ---
# The host port you want to expose. The container's port is fixed at 3000.
SEMAPHORE_PORT_HOST=3000
POSTGRES_VOLUME_NAME=postgres-data