Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Publish Dockerfile to enable docker pull tailscale #295

Closed
cee-dub opened this issue Apr 13, 2020 · 17 comments
Closed

Publish Dockerfile to enable docker pull tailscale #295

cee-dub opened this issue Apr 13, 2020 · 17 comments

Comments

@cee-dub
Copy link

cee-dub commented Apr 13, 2020

Is your feature request related to a problem? Please describe.

It's fantastic that this repo has a Dockerfile. It is frustrating to have to clone the repo to use it.

Describe the solution you'd like

Publish the image on Docker Hub to make docker pull tailscale:tailscale work.

Describe alternatives you've considered

Self publishing from a fork? Seems like doing it from the source of truth is probably best.

Additional context

Issue requested by @bradfitz https://twitter.com/bradfitz/status/1249839926545281024?s=20

Front logo Front conversations

@bradfitz
Copy link
Member

I tried to register the "Docker ID" of "tailscale" on hub.docker.com but apparently it's already taken, but this is a 404: https://hub.docker.com/tailscale

Do I not understand what a "Docker ID" is?

This works differently than I remember doing this last.

/cc @danderson

@danderson
Copy link
Member

The "tailscale" org already exists, and we own it :). We just haven't pushed any repos yet, so the hub's weird about showing anything.

I created an empty tailscale repo, so https://hub.docker.com/r/tailscale/tailscale is visible now - albeit empty.

@bradfitz
Copy link
Member

Great. Want to invite me to push to it? https://hub.docker.com/u/bradfitz

@bradfitz
Copy link
Member

We're going to put this on hold until we have better container support (#504)

@kazazes
Copy link

kazazes commented Sep 9, 2020

In the mean time, (and for simple vanilla-docker use cases only) I wrote a balena service to test out for our edge nodes. It's been working great so far.

@joonas-fi
Copy link
Contributor

joonas-fi commented Dec 4, 2020

I also needed to run this via Docker, as Flatcar (former CoreOS) can pretty much only run container workloads.

I'm publishing Docker image for amd64 + ARM (Raspberry Pi etc.) here: https://github.com/function61/tailscale-dockerimage

(edit: added multi-arch images)

@skyred
Copy link

skyred commented Aug 17, 2021

@bradfitz #504 is closed. Can this request move forward?

@DentonGentry
Copy link
Contributor

I think a few things are left to be done:

  • we have sample Dockerfiles for environments with /dev/net/tun (https://tailscale.com/kb/1132/flydotio/) and with userspace-networking (https://tailscale.com/kb/1107/heroku/). I think we should come up with an adaptive startup script that checks for /dev/net/tun and falls back to userspace-networking otherwise.
  • userspace-networking uses SOCKS5, need to get an ALL_PROXY environment variable propagated

@stapelberg
Copy link
Contributor

  • I think we should come up with an adaptive startup script that checks for /dev/net/tun and falls back to userspace-networking otherwise.

Or could tailscale itself maybe do this fallback? That would fix the problem in other environments without /dev/net/tun, too.

@DentonGentry
Copy link
Contributor

Running with /dev/net/tun, tailscaled is a network interface supporting the usual socket programming paradigm. Running with userspace-networking, tailscaled is a SOCKS5 proxy which the application code has to be configured for. Applications which don't use SOCKS5, like even ping, don't work in userspace-networking mode.

If the two modes were more transparent I think we'd automatically fall back between them, but the rest of the system has to be ready for the differences in the two modes.

@DentonGentry
Copy link
Contributor

Tailscale 1.16 added http_proxy support alongside the existing SOCKS5 proxy support.

@mayakacz
Copy link
Contributor

We now publish an image on Docker Hub: https://hub.docker.com/r/tailscale/tailscale/tags

Please let us know what else you'd need to make this better (feel free to open new feature requests!), e.g.,

  • Do you need this image on GCR or GitHub Packages?
  • Do you need an image for a specific use case, e.g., a sidecar? Or for a specific environment, e.g., AWS Lambda or Cloud Run?
  • Do you need any specific signature or verification standards for the image?

@mayakacz
Copy link
Contributor

And it's in GitHub Packages now too: https://github.com/orgs/tailscale/packages/container/package/tailscale

@SurvivaLlama
Copy link

* Do you need this image on GCR or GitHub Packages?

* Do you need an image for a specific use case, e.g., a sidecar? Or for a specific environment, e.g., AWS Lambda or Cloud Run?

* Do you need any specific signature or verification standards for the image?

As a totally lazy stay at home dev, a community application for unRaid would be very helpful. Beyond that I need to know what parameters I need to run (and if its none, I need to know what I well). I don't see anything at the docker hub.

@DentonGentry
Copy link
Contributor

I'm going to close this issue as done, docker pull tailscale/tailscale:latest works. If you'd like to report bugs, request features, or request specific platforms, please file new issues.

https://tailscale.com/blog/kubecon-21/

@joonas-fi
Copy link
Contributor

Any plans to publish multi-arch Docker images, e.g. ARM build?

@mayakacz
Copy link
Contributor

@joonas-fi Created a new issue for multi-arch Docker images, since this one is closed: #4856. It's easier for us to track upvotes on new issues rather than on comments.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.