Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 8fde5f4

Browse files
authored
Merge pull request #4071 from cdr/jsjoeio-fix-revert-docs
fix: revert revert and add ssh back into guide docs
2 parents 67b23aa + 2c1aed2 commit 8fde5f4

File tree

7 files changed

+109
-15
lines changed

7 files changed

+109
-15
lines changed

‎docs/guide.md‎

Lines changed: 93 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,9 @@
1515
- [Stripping `/proxy/<port>` from the request path](#stripping-proxyport-from-the-request-path)
1616
- [Proxying to create a React app](#proxying-to-create-a-react-app)
1717
- [Proxying to a Vue app](#proxying-to-a-vue-app)
18+
- [SSH into code-server on VS Code](#ssh-into-code-server-on-vs-code)
19+
- [Option 1: cloudflared tunnel](#option-1-cloudflared-tunnel)
20+
- [Option 2: ngrok tunnel](#option-2-ngrok-tunnel)
1821

1922
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
2023

@@ -370,3 +373,93 @@ module.exports = {
370373
3. access app at `<code-server-root>/absproxy/3454` e.g. `http://localhost:8080/absproxy/3454`
371374

372375
Read more about `publicPath` in the [Vue.js docs](https://cli.vuejs.org/config/#publicpath)
376+
377+
## SSH into code-server on VS Code
378+
379+
[![SSH](https://img.shields.io/badge/SSH-363636?style=for-the-badge&logo=GNU+Bash&logoColor=ffffff)](https://ohmyz.sh/) [![Terminal](https://img.shields.io/badge/Terminal-2E2E2E?style=for-the-badge&logo=Windows+Terminal&logoColor=ffffff)](https://img.shields.io/badge/Terminal-2E2E2E?style=for-the-badge&logo=Windows+Terminal&logoColor=ffffff) [![Visual Studio Code](https://img.shields.io/badge/Visual_Studio_Code-007ACC?style=for-the-badge&logo=Visual+Studio+Code&logoColor=ffffff)](vscode:extension/ms-vscode-remote.remote-ssh)
380+
381+
Follow these steps where code-server is running:
382+
383+
1. Install `openssh-server`, `wget`, and `unzip`.
384+
385+
```bash
386+
# example for Debian and Ubuntu operating systems
387+
sudo apt update
388+
sudo apt install wget unzip openssh-server
389+
```
390+
391+
2. Start the SSH server and set the password for your user, if you haven't already. If you use [deploy-code-server](https://github.com/cdr/deploy-code-server),
392+
393+
```bash
394+
sudo service ssh start
395+
sudo passwd {user} # replace user with your code-server user
396+
```
397+
398+
### Option 1: cloudflared tunnel
399+
400+
[![Cloudflared](https://img.shields.io/badge/Cloudflared-E4863B?style=for-the-badge&logo=cloudflare&logoColor=ffffff)](https://github.com/cloudflare/cloudflared)
401+
402+
1. Install [cloudflared](https://github.com/cloudflare/cloudflared#installing-cloudflared) on your local computer
403+
2. Then go to `~/.ssh/config` and add the following:
404+
405+
```shell
406+
Host *.trycloudflare.com
407+
HostName %h
408+
User root
409+
Port 22
410+
ProxyCommand "cloudflared location" access ssh --hostname %h
411+
```
412+
413+
3. Run `cloudflared tunnel --url ssh://localhost:22` on the remote server
414+
415+
4. Finally on VS Code or any IDE that supports SSH, run `ssh coder@https://your-link.trycloudflare.com` or `ssh coder@your-link.trycloudflare.com`
416+
417+
### Option 2: ngrok tunnel
418+
419+
[![Ngrok](https://img.shields.io/badge/Ngrok-1F1E37?style=for-the-badge&logo=ngrok&logoColor=ffffff)](https://ngrok.com/)
420+
421+
1. Make a new account for ngrok [here](https://dashboard.ngrok.com/login)
422+
423+
2. Now, get the ngrok binary with `wget` and unzip it with `unzip`:
424+
425+
```bash
426+
wget "https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-amd64.zip"
427+
unzip "ngrok-stable-linux-amd64.zip"
428+
```
429+
430+
5. Then, go to [dashboard.ngrok.com](https://dashboard.ngrok.com) and go to the `Your Authtoken` section.
431+
6. Copy the Authtoken shown there.
432+
7. Now, go to the folder where you unzipped ngrok and store the Authtoken from the ngrok Dashboard.
433+
434+
```bash
435+
./ngrok authtoken YOUR_AUTHTOKEN # replace YOUR_AUTHTOKEN with the ngrok authtoken.
436+
```
437+
438+
8. Now, forward port 22, which is the SSH port with this command:
439+
440+
```bash
441+
./ngrok tcp 22
442+
```
443+
444+
Now, you get a screen in the terminal like this:
445+
446+
```console
447+
ngrok by @inconshreveable(Ctrl+C to quit)
448+
449+
Session Status online
450+
Account {Your name} (Plan: Free)
451+
Version 2.3.40
452+
Region United States (us)
453+
Web Interface http://127.0.0.1:4040
454+
Forwarding tcp://0.tcp.ngrok.io:19028 -> localhost:22
455+
```
456+
457+
In this case, copy the forwarded link `0.tcp.ngrok.io` and remember the port number `19028`. Type this on your local Visual Studio Code:
458+
459+
```bash
460+
ssh user@0.tcp.ngrok.io -p 19028
461+
```
462+
463+
The port redirects you to the default SSH port 22, and you can then successfully connect to code-server by entering the password you set for the user.
464+
465+
Note: the port and the url provided by ngrok will change each time you run it so modify as needed.

‎lib/vscode/package.json‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -218,6 +218,7 @@
218218
"elliptic": "^6.5.3",
219219
"nwmatcher": "^1.4.4",
220220
"chrome-remote-interface": "^0.30.0",
221-
"glob-parent": "^5.1.2"
221+
"glob-parent": "^5.1.2",
222+
"tar": "^6.1.9"
222223
}
223224
}

‎lib/vscode/yarn.lock‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8020,10 +8020,10 @@ tapable@^1.0.0, tapable@^1.1.3:
80208020
resolved "https://registry.yarnpkg.com/tapable/-/tapable-1.1.3.tgz#a1fccc06b58db61fd7a45da2da44f5f3a3e67ba2"
80218021
integrity sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==
80228022

8023-
tar@^6.0.2:
8024-
version "6.0.5"
8025-
resolved "https://registry.yarnpkg.com/tar/-/tar-6.0.5.tgz#bde815086e10b39f1dcd298e89d596e1535e200f"
8026-
integrity sha512-0b4HOimQHj9nXNEAA7zWwMM91Zhhba3pspja6sQbgTpynOJf+bkjBnfybNYzbpLbnwXnbyB4LOREvlyXLkCHSg==
8023+
tar@^6.0.2, tar@^6.1.9:
8024+
version "6.1.11"
8025+
resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621"
8026+
integrity sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==
80278027
dependencies:
80288028
chownr "^2.0.0"
80298029
fs-minipass "^2.0.0"

‎package.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@
8080
"browserslist": "^4.16.5",
8181
"safe-buffer": "^5.1.1",
8282
"vfile-message": "^2.0.2",
83-
"argon2/@mapbox/node-pre-gyp/tar": "^6.1.3",
83+
"argon2/@mapbox/node-pre-gyp/tar": "^6.1.9",
8484
"path-parse": "^1.0.7"
8585
},
8686
"dependencies": {

‎test/package.json‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,6 @@
1919
"wtfnode": "^0.9.0"
2020
},
2121
"resolutions": {
22-
"argon2/@mapbox/node-pre-gyp/tar": "^6.1.3"
22+
"argon2/@mapbox/node-pre-gyp/tar": "^6.1.9"
2323
}
2424
}

‎test/yarn.lock‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4412,10 +4412,10 @@ symbol-tree@^3.2.4:
44124412
resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2"
44134413
integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==
44144414

4415-
tar@^6.1.0, tar@^6.1.3:
4416-
version "6.1.6"
4417-
resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.6.tgz#c23d797b0a1efe5d479b1490805c5443f3560c5d"
4418-
integrity sha512-oaWyu5dQbHaYcyZCTfyPpC+VmI62/OM2RTUYavTk1MDr1cwW5Boi3baeYQKiZbY2uSQJGr+iMOzb/JFxLrft+g==
4415+
tar@^6.1.0, tar@^6.1.9:
4416+
version "6.1.11"
4417+
resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621"
4418+
integrity sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==
44194419
dependencies:
44204420
chownr "^2.0.0"
44214421
fs-minipass "^2.0.0"

‎yarn.lock‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4882,10 +4882,10 @@ tar-stream@^2.1.4:
48824882
inherits "^2.0.3"
48834883
readable-stream "^3.1.1"
48844884

4885-
tar@^6.1.0, tar@^6.1.3:
4886-
version "6.1.6"
4887-
resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.6.tgz#c23d797b0a1efe5d479b1490805c5443f3560c5d"
4888-
integrity sha512-oaWyu5dQbHaYcyZCTfyPpC+VmI62/OM2RTUYavTk1MDr1cwW5Boi3baeYQKiZbY2uSQJGr+iMOzb/JFxLrft+g==
4885+
tar@^6.1.0, tar@^6.1.9:
4886+
version "6.1.11"
4887+
resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621"
4888+
integrity sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==
48894889
dependencies:
48904890
chownr "^2.0.0"
48914891
fs-minipass "^2.0.0"

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /