Commit de2640b
fix: prevent SSH zombie processes with --init flag
Problem: SSH daemon creates zombie (defunct) processes because
container's PID 1 (sleep infinity) doesn't reap child processes.
This prevents SSH connections from being properly handled.
Solution: Add --init flag to docker run command, which:
- Uses Docker's tini init process as PID 1
- Properly reaps zombie processes
- Handles signals correctly
- Allows SSH daemon to fork child processes successfully
Also improved SSH config:
- Removed deprecated UsePrivilegeSeparation option
- Added ClientAliveInterval/CountMax for connection stability
- Ensured UsePAM is enabled for proper authentication
- Added proper ListenAddress configuration
This fixes "Connection closed" errors when connecting to studio via SSH.
Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>1 parent 36c8244 commit de2640b
4 files changed
Lines changed: 29 additions & 6 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
386 | 386 | | |
387 | 387 | | |
388 | 388 | | |
| 389 | + | |
| 390 | + | |
| 391 | + | |
| 392 | + | |
389 | 393 | | |
390 | 394 | | |
391 | 395 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
157 | 157 | | |
158 | 158 | | |
159 | 159 | | |
| 160 | + | |
| 161 | + | |
| 162 | + | |
| 163 | + | |
| 164 | + | |
160 | 165 | | |
161 | 166 | | |
162 | 167 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
227 | 227 | | |
228 | 228 | | |
229 | 229 | | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
230 | 234 | | |
231 | 235 | | |
232 | 236 | | |
| |||
642 | 646 | | |
643 | 647 | | |
644 | 648 | | |
645 | | - | |
| 649 | + | |
| 650 | + | |
646 | 651 | | |
647 | 652 | | |
648 | 653 | | |
649 | 654 | | |
650 | 655 | | |
| 656 | + | |
651 | 657 | | |
652 | 658 | | |
653 | 659 | | |
654 | | - | |
655 | 660 | | |
656 | 661 | | |
657 | 662 | | |
658 | 663 | | |
659 | 664 | | |
| 665 | + | |
| 666 | + | |
| 667 | + | |
| 668 | + | |
660 | 669 | | |
661 | 670 | | |
662 | 671 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
61 | 61 | | |
62 | 62 | | |
63 | 63 | | |
64 | | - | |
| 64 | + | |
| 65 | + | |
| 66 | + | |
| 67 | + | |
65 | 68 | | |
66 | 69 | | |
67 | 70 | | |
68 | 71 | | |
69 | 72 | | |
70 | 73 | | |
71 | 74 | | |
| 75 | + | |
72 | 76 | | |
73 | 77 | | |
74 | 78 | | |
75 | 79 | | |
76 | | - | |
77 | | - | |
78 | | - | |
79 | 80 | | |
80 | 81 | | |
81 | 82 | | |
| |||
84 | 85 | | |
85 | 86 | | |
86 | 87 | | |
| 88 | + | |
| 89 | + | |
| 90 | + | |
| 91 | + | |
87 | 92 | | |
88 | 93 | | |
89 | 94 | | |
| |||
0 commit comments