Skip to content
This repository was archived by the owner on Aug 18, 2025. It is now read-only.

Commit 7c3ea40

Browse files
committed
Add some more info to TUN/FUSE, and example FUSE commands
1 parent 6bf7e95 commit 7c3ea40

File tree

1 file changed

+32
-8
lines changed

1 file changed

+32
-8
lines changed

admin/workspace-management/cvms/management.md

Lines changed: 32 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,8 @@ well:
1414

1515
![CVM Settings](../../../assets/admin/cvm-settings.png)
1616

17+
These settings will apply to workspaces **after** they have been rebuilt.
18+
1719
## Caching
1820

1921
> Cached CVMs are currently an **alpha** feature.
@@ -57,10 +59,13 @@ workspace container.
5759

5860
> TUN devices currently an **alpha** feature.
5961
60-
Coder allows the creation of custom network interfaces using the kernel TUN
62+
Coder allows the creation of custom network interfaces using the Linux TUN
6163
device. When using the **Enable TUN device** setting, Coder workspaces will have
62-
a `/dev/net/tun` device mounted into the workspace at build time. These devices
63-
are often required for VPN clients, such as OpenVPN and Tailscale.
64+
a `/dev/net/tun` device mounted into the workspace at build time. A TUN device
65+
is often required for VPN usage.
66+
67+
Users may need root (or `sudo`) access within their workspace to be able to use
68+
the TUN device and start a VPN client.
6469

6570
> At this time, Coder does not support TUN devices for other workspace types
6671
> (such as EC2 or Docker).
@@ -69,19 +74,38 @@ are often required for VPN clients, such as OpenVPN and Tailscale.
6974
> in the workspace provider settings, which will allow users to create their own
7075
> TUN device.
7176
77+
We've tested this feature using the [Tailscale](https://tailscale.com/) VPN
78+
within Coder. Keep in mind that you may have to change your VPN settings to keep
79+
any persistent files (such as configuration/identity) files in your home volume,
80+
as any data outside the home volume is cleared when the workspace is rebuilt.
81+
7282
## FUSE device
7383

7484
> FUSE devices currently an **alpha** feature.
7585
76-
Coder allows the creation of custom filesystems using the kernel TUN device.
77-
When using the **Enable FUSE device** setting, Coder workspaces will have a
78-
`/dev/fuse` device mounted into the workspace at build time. These devices are
79-
frequently used to mount specialized filesystems, such as Google Cloud Storage
80-
buckets, as a filesystem volume.
86+
Coder allows the creation of custom filesystems using the Linux FUSE userspace
87+
filesystem device. When using the **Enable FUSE device** setting, Coder
88+
workspaces will have a `/dev/fuse` device mounted into the workspace at build
89+
time. These devices are often used to mount specialized filesystems, such as
90+
Google Cloud Storage buckets, to your workspace.
91+
92+
Users may need root (or `sudo`) access within their workspace to be able to use
93+
the FUSE device and start a FUSE filesystem.
8194

8295
> At this time, Coder does not support FUSE devices for other workspace types
8396
> (such as EC2 or Docker).
8497
>
8598
> If you're working with EC2 workspaces, we recommend enabling privileged mode
8699
> in the workspace provider settings, which will allow users to create their own
87100
> FUSE device.
101+
102+
For example, you can mount a directory from a remote SSH server using `sshfs`:
103+
104+
```console
105+
mkdir /tmp/mnt
106+
sshfs user@host:/ /tmp/mnt
107+
```
108+
109+
Then in a second terminal run `ls /tmp/mnt` to list the files from the remote
110+
host. You should also be able to see a `fuse.sshfs` entry in the output from the
111+
`mount` command.

0 commit comments

Comments
 (0)