1export const strfryName = 'strfry'2export const strfryImage = 'dockurr/strfry:1.1.0' // 2606273export const strfryPort = 77774export const strfryDbPath = '/app/strfry-db'5export const strfryDataSizeGb = 57export const nostrudelName = 'nostrudel'8export const nostrudelImage = 'ghcr.io/hzrd149/nostrudel:1.1.0' // 2606279export const nostrudelPort = 8011export const strfryConfig = `12db = "${strfryDbPath}/"14dbParams {15 maxreaders = 25616 mapsize = 1099511627776017 noReadAhead = false18}20events {21 maxEventSize = 6553622 rejectEventsNewerThanSeconds = 90023 rejectEventsOlderThanSeconds = 9460800024 rejectEphemeralEventsOlderThanSeconds = 6025 ephemeralEventsLifetimeSeconds = 30026 maxNumTags = 200027 maxTagValSize = 102428}30relay {31 bind = "0.0.0.0"32 port = ${strfryPort}33 nofiles = 100000034 realIpHeader = "x-real-ip"36 auth {37 enabled = false38 }40 info {41 name = "hetzn1 relay"42 description = "strfry nostr relay on hetzn1"43 pubkey = ""44 self = ""45 contact = ""46 icon = ""47 banner = ""48 privacy = ""49 terms = ""50 nips = ""51 }53 maxWebsocketPayloadSize = 13107254 maxReqFilterSize = 20055 autoPingSeconds = 5556 enableTcpKeepalive = false57 queryTimesliceBudgetMicroseconds = 1000058 maxFilterLimit = 50059 maxTagsPerFilter = 360 maxFilterLimitCount = 100000061 maxSubsPerConnection = 20062 maxPendingOutboundBytes = 3355443264 writePolicy {65 plugin = ""66 timeoutSeconds = 1067 }69 compression {70 enabled = true71 slidingWindow = true72 }74 logging {75 dumpInAll = false76 dumpInEvents = false77 dumpInReqs = false78 dbScanPerf = false79 invalidEvents = true80 }82 numThreads {83 ingester = 384 reqWorker = 385 reqMonitor = 386 negentropy = 287 }89 negentropy {90 enabled = true91 maxSyncEvents = 100000092 }94 filterValidation {95 enabled = false96 maxFiltersPerReq = 397 minFiltersPerReq = 198 maxKindsPerFilter = 399 allowedKinds = ""100 requireAuthorOrTag = false101 }102}103`.trim()