orly.service raw
1 [Unit]
2 Description=ORLY Nostr Relay (Split IPC Mode)
3 After=network.target
4
5 [Service]
6 Type=simple
7 User=mleku
8 Group=mleku
9 WorkingDirectory=/home/mleku/src/next.orly.dev
10
11 # Use orly-launcher which manages orly-db-badger, orly-acl-follows, and the relay
12 ExecStart=/home/mleku/.local/bin/orly-launcher
13
14 # Launcher config - paths to split binaries
15 Environment=ORLY_LAUNCHER_DB_BACKEND=badger
16 Environment=ORLY_LAUNCHER_DB_BINARY=/home/mleku/.local/bin/orly-db-badger
17 Environment=ORLY_LAUNCHER_ACL_BINARY=/home/mleku/.local/bin/orly-acl-follows
18 Environment=ORLY_LAUNCHER_RELAY_BINARY=/home/mleku/.local/bin/orly-relay
19 Environment=ORLY_LAUNCHER_DB_LISTEN=127.0.0.1:50051
20 Environment=ORLY_LAUNCHER_ACL_LISTEN=127.0.0.1:50052
21 Environment=ORLY_LAUNCHER_ACL_ENABLED=true
22 Environment=ORLY_ACL_MODE=follows
23
24 # gRPC client settings (for relay to connect to db and acl)
25 Environment=ORLY_DB_TYPE=grpc
26 Environment=ORLY_GRPC_SERVER=127.0.0.1:50051
27 Environment=ORLY_ACL_TYPE=grpc
28 Environment=ORLY_GRPC_ACL_SERVER=127.0.0.1:50052
29
30 # Relay settings
31 Environment=ORLY_PORT=3334
32 Environment=ORLY_LISTEN=127.0.0.1
33 Environment=ORLY_LOG_LEVEL=info
34 Environment=ORLY_ADMINS=npub1fjqqy4a93z5zsjwsfxqhc2764kvykfdyttvldkkkdera8dr78vhsmmleku
35 Environment=ORLY_OWNERS=npub1fjqqy4a93z5zsjwsfxqhc2764kvykfdyttvldkkkdera8dr78vhsmmleku
36 Environment=ORLY_AUTH_REQUIRED=false
37 Environment=ORLY_AUTH_TO_WRITE=false
38 Environment=ORLY_NIP46_BYPASS_AUTH=true
39 Environment=ORLY_FOLLOWS_THROTTLE=true
40 Environment=ORLY_BLOSSOM_RATE_LIMIT=true
41 Environment=ORLY_BLOSSOM_DAILY_LIMIT_MB=10
42
43 # Memory settings for database server (orly-db-badger)
44 Environment=ORLY_DB_BLOCK_CACHE_MB=256
45 Environment=ORLY_DB_INDEX_CACHE_MB=128
46 Environment=ORLY_QUERY_CACHE_DISABLED=false
47 Environment=ORLY_QUERY_CACHE_SIZE_MB=64
48 Environment=ORLY_SERIAL_CACHE_PUBKEYS=100000
49 Environment=ORLY_SERIAL_CACHE_EVENT_IDS=500000
50 Environment=ORLY_GC_ENABLED=false
51
52 # Rate limiting for relay process
53 Environment=ORLY_RATE_LIMIT_TARGET_MB=2000
54
55 # Connection and query limits
56 Environment=ORLY_MAX_CONN_PER_IP=5
57 Environment=ORLY_QUERY_RESULT_LIMIT=256
58
59 # Enable pprof HTTP endpoint for debugging
60 Environment=ORLY_PPROF_HTTP=true
61
62 Restart=always
63 RestartSec=5
64
65 [Install]
66 WantedBy=multi-user.target
67