123 lines
2.8 KiB
YAML
123 lines
2.8 KiB
YAML
|
---
|
||
|
apiVersion: networking.k8s.io/v1
|
||
|
kind: Ingress
|
||
|
metadata:
|
||
|
name: tubesync
|
||
|
namespace: tubesync
|
||
|
spec:
|
||
|
ingressClassName: haproxy
|
||
|
rules:
|
||
|
- host: tubesync.strudelline.net
|
||
|
http:
|
||
|
paths:
|
||
|
- path: /
|
||
|
pathType: Prefix
|
||
|
backend:
|
||
|
service:
|
||
|
name: oauth2-proxy
|
||
|
port:
|
||
|
number: 4180
|
||
|
---
|
||
|
apiVersion: apps/v1
|
||
|
kind: Deployment
|
||
|
metadata:
|
||
|
namespace: tubesync
|
||
|
name: tubesync
|
||
|
annotations:
|
||
|
"reloader.stakater.com/auto": "true"
|
||
|
spec:
|
||
|
replicas: 1
|
||
|
selector:
|
||
|
matchLabels:
|
||
|
app: tubesync
|
||
|
strategy:
|
||
|
type: Recreate
|
||
|
template:
|
||
|
metadata:
|
||
|
labels:
|
||
|
app: tubesync
|
||
|
spec:
|
||
|
terminationGracePeriodSeconds: 0
|
||
|
restartPolicy: Always
|
||
|
securityContext:
|
||
|
sysctls:
|
||
|
- name: net.ipv4.tcp_rmem
|
||
|
value: "4096 87380 33554432"
|
||
|
- name: net.ipv4.tcp_wmem
|
||
|
value: "4096 65536 33554432"
|
||
|
initContainers:
|
||
|
- name: killswitch
|
||
|
image: xjasonlyu/tun2socks:latest
|
||
|
command: ["sh","-c"]
|
||
|
args:
|
||
|
- |
|
||
|
iptables -t mangle -A POSTROUTING -o eth0 -d 172.16.0.0/12 -j ACCEPT
|
||
|
iptables -t mangle -A POSTROUTING -o eth0 -d 10.0.0.0/8 -j ACCEPT
|
||
|
iptables -t mangle -A POSTROUTING -o eth0 -d 192.168.0.0/16 -j ACCEPT
|
||
|
iptables -t mangle -A POSTROUTING -o eth0 -j DROP
|
||
|
securityContext:
|
||
|
capabilities:
|
||
|
add: ["NET_ADMIN","SYS_TIME"]
|
||
|
volumes:
|
||
|
- name: data
|
||
|
persistentVolumeClaim:
|
||
|
claimName: tubesync-data
|
||
|
- name: video
|
||
|
nfs:
|
||
|
server: 172.16.18.1
|
||
|
path: /volume1/video
|
||
|
containers:
|
||
|
- name: tubesync
|
||
|
image: ghcr.io/meeb/tubesync:latest
|
||
|
env:
|
||
|
- name: TZ
|
||
|
value: America/Chicago
|
||
|
- name: PUID
|
||
|
value: "1029"
|
||
|
- name: PGID
|
||
|
value: "101"
|
||
|
volumeMounts:
|
||
|
- mountPath: /downloads
|
||
|
name: video
|
||
|
- mountPath: /config
|
||
|
name: data
|
||
|
- name: vpn
|
||
|
image: xjasonlyu/tun2socks:latest
|
||
|
command: ["sh","-c"]
|
||
|
args:
|
||
|
- |
|
||
|
mkdir -p /dev/net
|
||
|
mknod /dev/net/tun c 10 200
|
||
|
exec /entrypoint.sh
|
||
|
env:
|
||
|
- name: TUN
|
||
|
value: tun0
|
||
|
- name: PROXY
|
||
|
value: socks5://172.16.17.180:1080
|
||
|
- name: TUN_EXCLUDED_ROUTES
|
||
|
value: 10.0.0.0/8,172.16.0.0/12,192.168.0.0/16
|
||
|
securityContext:
|
||
|
capabilities:
|
||
|
add: ["NET_ADMIN","SYS_TIME"]
|
||
|
---
|
||
|
apiVersion: v1
|
||
|
kind: Service
|
||
|
metadata:
|
||
|
labels:
|
||
|
app: tubesync
|
||
|
name: tubesync
|
||
|
namespace: tubesync
|
||
|
spec:
|
||
|
ipFamilies:
|
||
|
- IPv4
|
||
|
ipFamilyPolicy: SingleStack
|
||
|
ports:
|
||
|
- name: tubesync
|
||
|
port: 4848
|
||
|
protocol: TCP
|
||
|
targetPort: 4848
|
||
|
selector:
|
||
|
app: tubesync
|
||
|
sessionAffinity: None
|
||
|
type: ClusterIP
|