소스 검색

Add run-mtg script

tags/0.9
9seconds 7 년 전
부모
커밋
9be13fe093
1개의 변경된 파일35개의 추가작업 그리고 0개의 파일을 삭제
  1. 35
    0
      run-mtg.sh

+ 35
- 0
run-mtg.sh 파일 보기

@@ -0,0 +1,35 @@
1
+#!/bin/bash
2
+set -eu -o pipefail
3
+
4
+IMAGE_NAME="nineseconds/mtg"
5
+CONTAINER_NAME="mtg"
6
+SECRET_PATH="$HOME/.mtg.secret"
7
+PROXY_PORT=444
8
+STAT_PORT=3129
9
+
10
+[[ -e "$SECRET_PATH" ]] || (
11
+  openssl rand -hex 16 > "$SECRET_PATH"
12
+  chmod 0400 "$SECRET_PATH"
13
+)
14
+
15
+# docker pull "$IMAGE_NAME"
16
+docker ps --filter "Name=$CONTAINER_NAME" -aq | xargs -r docker rm -fv
17
+docker run \
18
+    --name "$CONTAINER_NAME" \
19
+    --sysctl 'net.ipv4.ip_local_port_range=10000 65000' \
20
+    --sysctl net.ipv4.tcp_congestion_control=bbr \
21
+    --sysctl net.ipv4.tcp_fastopen=3 \
22
+    --sysctl net.ipv4.tcp_fin_timeout=30 \
23
+    --sysctl net.ipv4.tcp_keepalive_time=1200 \
24
+    --sysctl net.ipv4.tcp_max_syn_backlog=4096 \
25
+    --sysctl net.ipv4.tcp_max_tw_buckets=5000 \
26
+    --sysctl net.ipv4.tcp_mtu_probing=1 \
27
+    --sysctl 'net.ipv4.tcp_rmem=4096 87380 67108864' \
28
+    --sysctl net.ipv4.tcp_syncookies=1 \
29
+    --sysctl net.ipv4.tcp_tw_reuse=1 \
30
+    --sysctl 'net.ipv4.tcp_wmem=4096 65536 67108864' \
31
+    --ulimit nofile=51200:51200 \
32
+    --restart=unless-stopped \
33
+    -p $PROXY_PORT:3128 \
34
+    -p $STAT_PORT:3129 \
35
+  "$IMAGE_NAME" "$(cat "$SECRET_PATH")"

Loading…
취소
저장