Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/tailscale/docker-extension
Docker Desktop extension adding Tailscale networking.
https://github.com/tailscale/docker-extension
docker docker-extension tailscale
Last synced: about 2 months ago
JSON representation
Docker Desktop extension adding Tailscale networking.
- Host: GitHub
- URL: https://github.com/tailscale/docker-extension
- Owner: tailscale
- Created: 2021-11-15T13:32:51.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2024-02-14T11:45:34.000Z (7 months ago)
- Last Synced: 2024-06-05T20:09:51.040Z (4 months ago)
- Topics: docker, docker-extension, tailscale
- Language: TypeScript
- Homepage:
- Size: 4.04 MB
- Stars: 60
- Watchers: 20
- Forks: 11
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Tailscale Docker Extension
This repository hosts the code for Tailscale's [Docker](https://docker.com) extension. The extension lets Docker users expose public ports from their local containers onto their Tailscale network.
### Developing
> :warning: Docker extensions are still in active development, and this information may change as it gets closer to release.
To get started with Docker Extensions you will need a specific Docker Desktop build that comes with extension capabilities and the Extensions CLI.
Install the following:
- A [custom build of Docker Desktop](https://github.com/docker/desktop-extension-samples/releases) with support for extensions
- An extension to the [Docker CLI](https://github.com/docker/desktop-extension-samples/releases)
- A local install of Node (v16.13.1 at the time of writing)
- A local install of yarn (v1.22.17 at the time of writing)### Setting up
Once you have all the prerequisite pieces installed, enable the extension beta.
```
docker extension enable
```Next, build and install the extension Docker container:
```
make install-extension
```Navigate to Docker Desktop, and you should now see a new "Tailscale" section in the sidebar menu.
### Developing the extension backend
Any changes to the extension metadata or backend will require you to rebuild the extension and install it. You can do both with:
```
make install-extension
```### Developing the extension UI
The extension UI is a React app that is statically bundled at build time. However, re-building the Docker container on each change is slow, so we can instead instruct the Docker Desktop app to use a local server to serve the UI instead.
```
make dev-extension
```This will spin up a local server on [localhost:3000](http://localhost:3000). Once running, it instructs Docker Desktop to use that server as your extension UI. Changes will be hot reloaded.