-
-
Notifications
You must be signed in to change notification settings - Fork 6
/
Copy pathconfig.yaml
94 lines (80 loc) · 1.78 KB
/
config.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
# Database configuration
database:
driver: sqlite
host: localhost
port: 5432
user: ""
password: ""
name: "paste69.db"
sslmode: disable
# Storage configuration
storage:
- name: local
type: local
path: ./uploads
default: true
# Server configuration
server:
# Server binding address
address: :3000
# Public-facing URL (used for generating links)
base_url: http://localhost:3000
# Maximum upload size in bytes
max_upload_size: 5242880 # 5MB default
default_upload_size: 10485760 # 10MB default
api_upload_size: 52428800 # 50MB default
# Server identity
prefork: false
server_header: "Paste69"
app_name: "Paste69"
# Directory configuration
views_directory: "./views"
public_directory: "./public"
# CORS configuration
cors_origins: ["*"]
# Rate limiting configuration
rate_limit:
# Global rate limit (across all IPs)
global:
enabled: true
rate: 6969.0
burst: 250
# Per-IP rate limit
per_ip:
enabled: true
rate: 2.0
burst: 5
# Redis configuration for rate limiting
use_redis: false
ip_cleanup_interval: 1h
# Cleanup configuration
cleanup:
enabled: true
interval: 3600
max_age: "168h"
# SMTP configuration
smtp:
enabled: false
host: localhost
port: 587
username: ""
password: ""
from: ""
from_name: "Paste69"
starttls: true
tls_verify: true
# Redis configuration
redis:
enabled: false
address: localhost:6379
password: ""
db: 0
# Retention configuration
retention:
no_key:
min_age: 7.0 # 7 days minimum
max_age: 128.0 # 128 days without key
with_key:
min_age: 30.0 # 30 days minimum
max_age: 730.0 # 2 years with key
points: 50 # Number of points to generate for the curve