Deployment
Codifier is a version control tool for Ceta platform's Seed-Data configuration code.
Table of Contents
- Architecture
- System Requirements
- Deployment Methods
- Environment Variables
- Project Configuration
- Data Persistence
Architecture
Codifier is a version control tool for Ceta platform's Seed-Data configuration code. Its deployment architecture is shown below:

System Requirements
| Item | Requirement |
|---|---|
| JDK | 17+ |
| Maven | 3.8+ |
| Docker | 20.10+ (for Docker deployment) |
| Memory | Minimum 2GB |
| Disk | Reserve 5GB+ (including Git clone cache) |
Deployment Methods
Method 1: Docker Deployment (Recommended)
# 1. Build
mvn -s settings.xml -B clean package -DskipTests
cp target/ceta-codifier-1.0.0.jar ./ceta-codifier.jar
# 2. Build image
docker build -t ceta-codifier:latest .
# 3. Run
docker run -d \
--name ceta-codifier \
-p 8090:8090 \
-v $(pwd)/data:/app/data \
-v $(pwd)/logs:/app/logs \
-e SERVER_PORT=8090 \
-e AUTH_USERNAME=admin \
-e AUTH_PASSWORD=your-password \
-e CRYPTO_MASTER_KEY=your-master-key \
-e JWT_KEY=your-jwt-key \
--restart unless-stopped \
ceta-codifier:latest
Method 2: Run JAR Directly
# Foreground
java -Xms2g -Xmx2g -jar ceta-codifier-1.0.0.jar
# Background (Linux)
nohup java -Xms2g -Xmx2g -jar ceta-codifier-1.0.0.jar > /dev/null 2>&1 &
# With environment variables
export SERVER_PORT=8090
export AUTH_USERNAME=admin
export AUTH_PASSWORD=your-password
java -jar ceta-codifier-1.0.0.jar
Environment Variables
Basic Configuration
| Variable | Description | Default |
|---|---|---|
SERVER_PORT | Server port | 8090 |
AUTH_ENABLED | Enable authentication | true |
AUTH_USERNAME | Built-in admin username | admin |
AUTH_PASSWORD | Built-in admin password | admin123 |
JWT_KEY | JWT signing key | !@#123Bot |
JWT_EXPIRE_HOURS | JWT expiration time (hours) | 24 |
CRYPTO_MASTER_KEY | Token encryption master key | s3Ed-DaTa-M@st3r-K3y! |
Logging Configuration
| Variable | Description | Default |
|---|---|---|
LOG_LEVEL_ROOT | Root log level | INFO |
LOG_LEVEL_APP | Application log level | DEBUG |
File Upload Limits
| Variable | Description | Default |
|---|---|---|
MULTIPART_MAX_FILE_SIZE | Maximum single file size | 100MB |
MULTIPART_MAX_REQUEST_SIZE | Maximum request size | 100MB |
Project Configuration
After startup, visit http://host:8090/codifier/ → Project Management page to add/edit/delete projects online.
Project data is saved in data/projects.json, with tokens automatically encrypted for storage.
Data Persistence
The following directories need to be persisted (mounted as volumes in Docker deployment):
| Directory | Description |
|---|---|
data/ | Project configuration file projects.json + Git repository local cache |
logs/ | Application logs + commit request logs |
# Docker mount example
-v /opt/ceta-codifier/data:/app/data
-v /opt/ceta-codifier/logs:/app/logs