A Helm Chart for Shadowsocks.
A Kubernetes cluster and Helm CLI installed on your laptop.
helm repo add predatorray http://predatorray.github.io/charts
See helm repo
for more information.
helm install $RELEASE_NAME predatorray/shadowsocks
Or, use the command below upgrade an existing release if it has been installed.
helm upgrade --install $RELEASE_NAME predatorray/shadowsocks
After that, all shadowsocks components will be ready on your K8S cluster.
Parameter | Description | Default |
---|---|---|
replicaCount |
Number of Shadowsocks pods | 1 |
image.repository |
Image repository of the Shadowsocks | shadowsocks/shadowsocks-libev |
image.pullPolicy |
Image pull policy of the Shadowsocks | IfNotPresent |
image.tag |
Image tag of the Shadowsocks | v3.3.5 |
imagePullSecrets |
Image pull secrets | |
fullnameOverride |
Override the fullname of K8S manifests | {{ .Release.Name }} |
serviceAccount.create |
Create ServiceAccount | true |
serviceAccount.annotations |
ServiceAccount annotations | |
serviceAccount.name |
Name of ServiceAccount | The fullname of the release |
podAnnotations |
Annotations of the Shadowsocks pods | |
podSecurityContext |
Security context of the Shadowsocks pods | |
securityContext |
Security context of the Shadowsocks container | |
service.type |
Kubernetes service type | ClusterIP |
service.loadBalancerIP |
If the service is a LoadBalancer, you can define its external IP address | |
service.port |
Port where the service (shadowsocks) is exposed | 8388 |
service.annotations |
Annotations of the service | |
service.udpLoadBalancer.enabled |
If the service is a LoadBalancer, since we cannot create one with mix protocols, a seperate UDP-dedicated LoadBalancer will be created if enabled. | false |
service.udpLoadBalancer.serviceName |
Service name of the UDP LoadBalancer | {{ .Release.Name }}-udp |
service.udpLoadBalancer.annotations |
Annotations of the UDP LoadBalancer | |
shadowsocks.method |
Encryption method the Shadowsocks (See: -m <encrypt_method> in the Usage ) |
aes-256-gcm |
shadowsocks.password.plainText |
Password of the Shadowsocks (See: -k <password> in the Usage) |
passw0rd |
shadowsocks.password.existingSecret.secretName |
Read password from Secret instead of plain text | |
shadowsocks.password.existingSecret.passwordKey |
Secret key name for the password | password |
shadowsocks.dnsServers |
DNS servers of the Shadowsocks | ["8.8.8.8", "8.8.4.4"] |
shadowsocks.timeout |
Timeout of the Shadowsocks (See: -t <timeout> in the Usage) |
300 |
kcptun.enabled |
Enabled Shadowsocks over Kcptun | false |
kcptun.port |
Port of the Kcptun | 29900 |
kcptun.crypt |
The crypt of the Kcptun (See: --crypt value option in the Usage) |
|
kcptun.key.plainText |
Key (password) of the Kcptun | it's a secret (See: --key value option in the Usage |
kcptun.key.existingSecret.secretName |
Read key from Secret instead of plain text | |
kcptun.key.existingSecret.passwordKey |
Secret key name for the key | |
kcptun.image.repository |
Image repository of the Kcptun | xtaci/kcptun |
kcptun.image.pullPolicy |
Image pull policy of the Kcptun | IfNotPresent |
kcptun.image.tag |
Image tag of the Kcptun | v20210103 |
resources |
CPU/Memory resource requests/limits | {} |
tolerations |
Tolerations | [] |
affinity |
Affinity | {} |
helm upgrade --install shadowsocks predatorray/shadowsocks \
--set service.type=LoadBalancer
helm upgrade --install shadowsocks predatorray/shadowsocks \
--set service.type=LoadBalancer \
--set kcptun.enabled=true \
--set service.udpLoadBalancer.enabled=true