Closed
Description
Is there an existing issue for this?
- I have searched the existing issues
OS/Web Information
- Web Browser: Chrome
- Local OS: macOS 12.2.1
- Remote OS: CentOS 8.2
- Remote Architecture: amd64
code-server --version
: 4.0.2- k3d version v5.3.0
- k3s version v1.22.6-k3s1
- kubectl version : Client Version: version.Info{Major:"1", Minor:"23", GitVersion:"v1.23.4", GitCommit:"e6c093d87ea4cbb530a7b2ae91e54c0842d8308a", GitTreeState:"clean", BuildDate:"2022-02-16T12:38:05Z", GoVersion:"go1.17.7", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{Major:"1", Minor:"22", GitVersion:"v1.22.6+k3s1", GitCommit:"3228d9cb9a4727d48f60de4f1ab472f7c50df904", GitTreeState:"clean", BuildDate:"2022-01-25T01:27:44Z", GoVersion:"go1.16.10", Compiler:"gc", Platform:"linux/amd64"} - traefik version 2.6.1
- helm version v3.8.0
Steps to Reproduce
Deployment of two code-servers,using sub-path access
eg: http://xxxx:8082/v2/ , http://xxxx:8082/v3/
- k3d cluster create dev-cluster --port 8082:80@loadbalancer --servers 1 --agents 2 --k3s-arg "--disable=traefik@server:*"
- helm install traefik traefik/traefik -f values.yaml
- kubectl apply -f code-server-v2.yaml
- kubectl apply -f code-server-v3.yaml
code-server-v2 deployment list
apiVersion: v1
kind: Namespace
metadata:
name: dev-v2
---
apiVersion: v1
kind: Service
metadata:
name: code-server-v2
namespace: dev-v2
spec:
ports:
- port: 8091
targetPort: 8080
selector:
app: code-server-v2
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: code-server-v2
name: code-server-v2
namespace: dev-v2
spec:
selector:
matchLabels:
app: code-server-v2
template:
metadata:
labels:
app: code-server-v2
spec:
containers:
- image: codercom/code-server:4.0.2
imagePullPolicy: IfNotPresent
name: code-server-v2
ports:
- containerPort: 8080
env:
- name: PASSWORD
value: "code221"
---
apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: mw-admin-v2
namespace: dev-v2
spec:
stripPrefix:
prefixes:
- "/v2"
---
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
name: code-server-v2
namespace: dev-v2
spec:
entryPoints:
- web
routes:
- kind: Rule
match: PathPrefix(`/v2`)
services:
- name: code-server-v2
port: 8091
middlewares:
- name: "mw-admin-v2"
code-server-v3 deployment list
apiVersion: v1
kind: Namespace
metadata:
name: dev-v3
---
apiVersion: v1
kind: Service
metadata:
name: code-server-v3
namespace: dev-v3
spec:
ports:
- port: 8092
targetPort: 8080
selector:
app: code-server-v3
---
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: code-server-v3
name: code-server-v3
namespace: dev-v3
spec:
selector:
matchLabels:
app: code-server-v3
template:
metadata:
labels:
app: code-server-v3
spec:
containers:
- image: codercom/code-server:4.0.2
imagePullPolicy: IfNotPresent
name: code-server-v3
ports:
- containerPort: 8080
env:
- name: PASSWORD
value: "code331"
---
apiVersion: traefik.containo.us/v1alpha1
kind: Middleware
metadata:
name: mw-admin-v3
namespace: dev-v3
spec:
stripPrefix:
prefixes:
- "/v3"
---
apiVersion: traefik.containo.us/v1alpha1
kind: IngressRoute
metadata:
name: code-server-v3
namespace: dev-v3
spec:
entryPoints:
- web
routes:
- kind: Rule
match: PathPrefix(`/v3`)
services:
- name: code-server-v3
port: 8092
middlewares:
- name: "mw-admin-v3"
Expected
Visit http://xxxx:8082/v2/ and http://xxxx:8082/v3/ do not interfere with each other
Actual
Creating a page and accessing it in code-server-v3, refreshing the page in code-server-v2 can actually access it, and it will prompt that there is no file
Logs
No response
Screenshot/Video
2022-03-01.11.14.39.mov
Does this issue happen in VS Code?
- I cannot reproduce this in VS Code.
Are you accessing code-server over HTTPS?
- I am using HTTPS.
Notes
I am using HTTP