Files
shadowsocks-rust/k8s/shadowsocks-rust.yaml
longkai 5228ef339a chore(k8s): change default image to ghcr latest
also:

- remove the unrecognized nameserver and timeout field
- server address default to "::"
2022-01-10 12:28:47 +08:00

150 lines
3.8 KiB
YAML

---
# Source: shadowsocks-rust/templates/serviceaccount.yaml
apiVersion: v1
kind: ServiceAccount
metadata:
name: shadowsocks-rust
labels:
helm.sh/chart: shadowsocks-rust-0.1.0
app.kubernetes.io/name: shadowsocks-rust
app.kubernetes.io/instance: shadowsocks-rust
app.kubernetes.io/version: "1.x.x"
app.kubernetes.io/managed-by: Helm
---
# Source: shadowsocks-rust/templates/config.yaml
kind: ConfigMap
apiVersion: v1
metadata:
name: shadowsocks-rust
labels:
helm.sh/chart: shadowsocks-rust-0.1.0
app.kubernetes.io/name: shadowsocks-rust
app.kubernetes.io/instance: shadowsocks-rust
app.kubernetes.io/version: "1.x.x"
app.kubernetes.io/managed-by: Helm
data:
config.json: |
{
"servers":
[
{
"fast_open": true,
"method": "aes-256-gcm",
"mode": "tcp_and_udp",
"password": "mypassword",
"server": "::",
"server_port": 8388,
"service_port": 80
}
]
}
---
# Source: shadowsocks-rust/templates/service.yaml
apiVersion: v1
kind: Service
metadata:
name: shadowsocks-rust
labels:
helm.sh/chart: shadowsocks-rust-0.1.0
app.kubernetes.io/name: shadowsocks-rust
app.kubernetes.io/instance: shadowsocks-rust
app.kubernetes.io/version: "1.x.x"
app.kubernetes.io/managed-by: Helm
spec:
type: ClusterIP
ports:
- name: ss-8388
targetPort: 8388
protocol: TCP
port: 80
selector:
app.kubernetes.io/name: shadowsocks-rust
app.kubernetes.io/instance: shadowsocks-rust
---
# Source: shadowsocks-rust/templates/deployment.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: shadowsocks-rust
labels:
helm.sh/chart: shadowsocks-rust-0.1.0
app.kubernetes.io/name: shadowsocks-rust
app.kubernetes.io/instance: shadowsocks-rust
app.kubernetes.io/version: "1.x.x"
app.kubernetes.io/managed-by: Helm
spec:
replicas: 1
selector:
matchLabels:
app.kubernetes.io/name: shadowsocks-rust
app.kubernetes.io/instance: shadowsocks-rust
template:
metadata:
labels:
app.kubernetes.io/name: shadowsocks-rust
app.kubernetes.io/instance: shadowsocks-rust
spec:
serviceAccountName: shadowsocks-rust
securityContext:
{}
volumes:
- name: config
configMap:
name: shadowsocks-rust
- name: plugins
emptyDir: {}
containers:
- name: shadowsocks-rust
securityContext:
{}
image: "ghcr.io/shadowsocks/ssserver-rust:latest"
imagePullPolicy: IfNotPresent
volumeMounts:
- name: config
mountPath: /etc/shadowsocks-rust
readOnly: true
- name: plugins
mountPath: /usr/local/bin
ports:
- name: ss-8388
containerPort: 8388
protocol: TCP
livenessProbe:
tcpSocket:
port: 8388
failureThreshold: 3
initialDelaySeconds: 1
timeoutSeconds: 1
readinessProbe:
tcpSocket:
port: 8388
initialDelaySeconds: 2
resources:
limits:
cpu: 100m
memory: 128Mi
requests:
cpu: 20m
memory: 32Mi
---
# Source: shadowsocks-rust/templates/tests/test-connection.yaml
apiVersion: v1
kind: Pod
metadata:
name: "shadowsocks-rust-test-connection"
labels:
helm.sh/chart: shadowsocks-rust-0.1.0
app.kubernetes.io/name: shadowsocks-rust
app.kubernetes.io/instance: shadowsocks-rust
app.kubernetes.io/version: "1.x.x"
app.kubernetes.io/managed-by: Helm
annotations:
"helm.sh/hook": test
spec:
containers:
- name: wget
image: busybox
command: ['wget']
args: ['shadowsocks-rust:']
restartPolicy: Never