Unix socket always be deleted after 3 hours when client disconnect
- Lenguaje dominante
- TypeScript
- Estrellas
- 79.3k
- Forks
- 6.8k
- Merge medio
- 2 d 6 h
- PR fusionados (30 d)
- 41
Descripción
### Is there an existing issue for this?
- [x] #7087
### OS/Web Information
- Web Browser: Safari
- Local OS: iPadOS 17.1
- Remote OS: Archlinux
- Remote Architecture: amd64
- `code-server --version`: 4.95.2
### Steps to Reproduce
1. run code-server with —socket and —socket-mode options behind nginx
2. client to code-server, write something and disconnect
3. wait for 3 hours
4. the socket file is disappeared
logs below:
```plaintext
[][8ae2717b][ManagementConnection] The client has disconnected, will wait for reconnection 3h b>
11月 21 23:30:33 archlinux code-server[561098]: [23:30:33] [][31fa6d6d][ExtensionHostConnection] <576182> Extension Host Process exited with code: 0, sign>
11月 21 23:30:36 archlinux code-server[561098]: [23:30:36] [][4fe5bbb1][ExtensionHostConnection] <589581> Extension Host Process exited with code: 0, sign>
11月 21 23:30:36 archlinux code-server[561098]: [23:30:36] [][4bad56e8][ExtensionHostConnection] <565453> Extension Host Process exited with code: 0, sign>
11月 21 23:30:42 archlinux code-server[561098]: [23:30:42] [][550a7a3d][ExtensionHostConnection] <573629> Extension Host Process exited with code: 0, sign>
11月 21 23:31:09 archlinux code-server[561098]: [23:31:09] [][8ae2717b][ManagementConnection] The reconnection grace time of 3h has expired, so the connec>
```
You will never reconnect to code-server because the socket file is delete.
### Expected
Never delete the socket file unless code-server is stopped
### Actual
It deleted!
### Logs
```shell
```
### Screenshot/Video
_No response_
### Does this bug reproduce in native VS Code?
This cannot be tested in native VS Code
### Does this bug reproduce in GitHub Codespaces?
I did not test GitHub Codespaces
### Are you accessing code-server over a secure context?
- [x] I am using a secure context.
### Notes
my nginx config:
```plaintext
server {
include common/listen-8096;
server_name my.super.server;
# set max upload size
client_max_body_size 32G;
fastcgi_buffers 64 4K;
location / {
proxy_pass http://unix:/dev/shm/code-server.sock;
add_header Access-Control-Allow-Origin *;
add_header Access-Control-Allow-Methods *;
add_header Access-Control-Allow-Headers *;
# proxy_ssl_verify off;
proxy_set_header Host $host;
proxy_set_header Accept-Encoding gzip;
#proxy_set_header X-Forwarded-Host $host;
proxy_set_header X-Forwarded-Host $host:$server_port;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection $http_connection;
proxy_http_version 1.1;
access_log /var/log/nginx/code.log;
error_log /var/log/nginx/code.error.log;
}
}
```
And systemctl edit code-server.service:
```plaintext
### Anything between here and the comment below will become the contents of the drop-in file
[Service]
ExecStart=
ExecStart=/usr/bin/code-server /my/super/path
User=superuser
Group=superuser
### Edits below this comment will be discarded
### /usr/lib/systemd/system/code-server@.service
# [Unit]
# Description=code-server
# After=network.target
#
# [Service]
# Type=exec
# ExecStart=/usr/bin/code-server
# Restart=always
# User=%i
#
# [Install]
# WantedBy=default.target
```
And the config.yaml
```yaml
auth: password
password: mysuperpassword
cert: false
socket: /dev/shm/code-server.sock
socket-mode: 666
```
Guía de contribución
Evaluación
Este issue todavía no se ha evaluado.