GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - tailscale/codespace: Tailscale for devcontainers and codespaces

BranchesTags
Open more actions menu

Latest commit

 

History

46 Commits
46 Commits

Folders and files

NameName
Last commit message
Last commit date
.github/workflows
.github/workflows
 
 
.vscode
.vscode
 
 
src/tailscale
src/tailscale
 
 
test/tailscale
test/tailscale
 
 
LICENSE
LICENSE
 
 
README.md
README.md
 
 
codespace.jpg
codespace.jpg
 
 

Repository files navigation

Codespace feature for Tailscale connectivity

This repository contains a feature for GitHub Codespaces to connect the running VM to a Tailscale network.

Start a new codespace

To get started, add the following feature to your devcontainer.json:

"features": {
  "ghcr.io/tailscale/codespace/tailscale": {
    "version": "latest"
  }
}

Starting Tailscale

The Tailscale daemon starts automatically as part of the devcontainer entrypoint.

Manual Log in

sudo tailscale up --accept-routes

More info: tailscale up

Automatic login

Create an auth key in the Tailscale admin panel.

Create a codespace secret called TS_AUTH_KEY in your codespaces configuration containing the auth key you made above.

Now whenever you launch a devcontainer with access to this secret, it will automatically perform a tailscale up --accept-routes --auth-key=$TS_AUTH_KEY.

Details

  • A mount is added called tailscale-${devcontainerId} mapped to /var/lib/tailscale to persist taislcaled state across devcontainer rebuilds, so a single devcontainer will remain logged in for the devcontainer lifetime.
  • The feature requires CAP_NET_ADMIN in order to configure certain network properties for kernel mode tailscale.
  • The feature requires kernel tun support in the runtime and CAP_MKNOD so that it can create a tun device node if needed.
  • CAP_NET_RAW enables the feature to send ICMP.

Development

A convenient way to develop this feature is to use codespaces, as they start by default with many of the dependencies required (at least Docker and npx).

Inside a codespace you can use the Tasks:Run Test Task command.

On a standalone machine tests can be run with:

npx @devcontainers/cli features test

About

Tailscale for devcontainers and codespaces

Topics

codespacedevcontainermeshtailscalevpn

Resources

Readme
BSD-3-Clause license

Code of conduct

Code of conduct

Security policy

Security policy
Activity
Custom properties

Stars

130 stars

Watchers

19 watching

Forks

67 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.