summary refs log tree commit diff stats
path: root/nitter
diff options
context:
space:
mode:
authorBiRabittoh <birabittoh@tilde.institute>2023-07-10 14:29:25 +0200
committerBiRabittoh <birabittoh@tilde.institute>2023-07-10 14:29:25 +0200
commit16c8cdbae01acf7602dfe213b0a34a8d004e2a78 (patch)
treedd5968fae318b6bf09afe9a8e1605cf98903e1b8 /nitter
parent5b8576ad8dcf5275b86369dbcc3b311f479d0ccf (diff)
downloadmy-docker-compose-16c8cdbae01acf7602dfe213b0a34a8d004e2a78.tar.gz
add nitter
Diffstat (limited to 'nitter')
-rw-r--r--nitter/docker-compose.yaml53
-rw-r--r--nitter/nitter.conf44
2 files changed, 97 insertions, 0 deletions
diff --git a/nitter/docker-compose.yaml b/nitter/docker-compose.yaml
new file mode 100644
index 0000000..eefd969
--- /dev/null
+++ b/nitter/docker-compose.yaml
@@ -0,0 +1,53 @@
+version: "3"
+
+services:
+
+  nitter:
+    image: zedeus/nitter:latest
+    container_name: nitter
+    volumes:
+      - ./nitter.conf:/src/nitter.conf:Z,ro
+    depends_on:
+      - nitter-redis
+    restart: unless-stopped
+    healthcheck:
+      test: wget -nv --tries=1 --spider http://127.0.0.1:8080/Jack/status/20 || exit 1
+      interval: 30s
+      timeout: 5s
+      retries: 2
+    user: "998:998"
+    read_only: true
+    security_opt:
+      - no-new-privileges:true
+    cap_drop:
+      - ALL
+    networks:
+      - default
+      - swag_default
+
+  nitter-redis:
+    image: redis:6-alpine
+    container_name: nitter-redis
+    command: redis-server --save 60 1 --loglevel warning
+    volumes:
+      - nitter-redis:/data
+    restart: unless-stopped
+    healthcheck:
+      test: redis-cli ping
+      interval: 30s
+      timeout: 5s
+      retries: 2
+    user: "999:1000"
+    read_only: true
+    security_opt:
+      - no-new-privileges:true
+    cap_drop:
+      - ALL
+
+volumes:
+  nitter-redis:
+
+networks:
+  default:
+  swag_default:
+    external: true
diff --git a/nitter/nitter.conf b/nitter/nitter.conf
new file mode 100644
index 0000000..327bb6f
--- /dev/null
+++ b/nitter/nitter.conf
@@ -0,0 +1,44 @@
+[Server]
+hostname = "t.birabittoh.duckdns.org"  # for generating links, change this to your own domain/ip
+title = "Twitter"
+address = "0.0.0.0"
+port = 8080
+https = false  # disable to enable cookies when not using https
+httpMaxConnections = 100
+staticDir = "./public"
+
+[Cache]
+listMinutes = 240  # how long to cache list info (not the tweets, so keep it high)
+rssMinutes = 10  # how long to cache rss queries
+redisHost = "nitter-redis"  # Change to "nitter-redis" if using docker-compose
+redisPort = 6379
+redisPassword = ""
+redisConnections = 20  # minimum open connections in pool
+redisMaxConnections = 30
+# new connections are opened when none are available, but if the pool size
+# goes above this, they're closed when released. don't worry about this unless
+# you receive tons of requests per second
+
+[Config]
+hmacKey = "401a4a79f3698991ed632f3b8ba9ba54a391cb04"  # random key for cryptographic signing of video urls
+base64Media = false  # use base64 encoding for proxied media urls
+enableRSS = true  # set this to false to disable RSS feeds
+enableDebug = false  # enable request logs and debug endpoints (/.tokens)
+proxy = ""  # http/https url, SOCKS proxies are not supported
+proxyAuth = ""
+tokenCount = 10
+# minimum amount of usable tokens. tokens are used to authorize API requests,
+# but they expire after ~1 hour, and have a limit of 500 requests per endpoint.
+# the limits reset every 15 minutes, and the pool is filled up so there's
+# always at least `tokenCount` usable tokens. only increase this if you receive
+# major bursts all the time and don't have a rate limiting setup via e.g. nginx
+
+# Change default preferences here, see src/prefs_impl.nim for a complete list
+[Preferences]
+theme = "Black"
+replaceTwitter = "t.birabittoh.duckdns.org"
+replaceYouTube = "y.birabittoh.duckdns.org"
+replaceReddit = "teddit.net"
+proxyVideos = false
+hlsPlayback = true
+infiniteScroll = false