Commit Graph

21 Commits

Author SHA1 Message Date
Squidly271
173c388b0f Refactor: Don't time out on scripts that can continue in background and auto exit when finished 2025-08-13 22:56:45 -04:00
ljm42
6d6862fd0f refactor: use shared nchan publish function 2025-07-24 13:42:10 -07:00
Tom Mortensen
5f23f71faf fix: properly delete docker runtime directory including btrfs subvolumes and/or zfs datasets 2025-03-28 15:18:28 -07:00
Squidly271
a6aeb86c69 Update docker_init 2025-02-25 15:30:58 -05:00
Squidly271
f9e20d10b4 Prevent extraneous writes 2025-02-25 15:24:03 -05:00
Squidly271
0e0d7b8adf Fix: Last container wouldn't autostart 2025-02-25 15:10:13 -05:00
Squidly271
cc9c0329fc Add notification 2025-02-25 10:47:31 -05:00
Squidly271
78decb4597 Refactor: Coderabbit suggestions 2025-02-24 16:51:37 -05:00
Squidly271
5503affa44 Fix: Don't autostart containers on host network with TS enabled 2025-02-24 16:23:58 -05:00
root
e289d2ad7c Initial Tailscale Docker integration
- Remove exclusion from share directory from .gitignore
- Add Unraid specific container hook script
- Add Tailscale icon
- Add helptexts for Tailscale

This integration allows users to easily make use of Tailscale in their Docker containers by just clicking a switch on the Docker page.
The Tailscale plugin itself is not needed for this integration but for the best user experience it is strongly recommended to install the Tailscale plugin from Community Applications.

How this works:
1. Configure Tailscale in the Docker template in Unraid and click Apply
2. Unraid will extract the default Entrypoint and CMD from the container
3. The hook script will be mounted in the container to /opt/unraid/tailscale-hook and the Entrypoint from the container will be modified to /opt/unraid/tailscale-hook
4. The original Entrypoint and CMD from the container, alongside with the other necessary variables for Tailscale will be passed over to the container
5. When the container starts the hook script will be executed, install dependencies (currently Alpine, Arch and Debian based containers are supported), download the newest version from Tailscale and run it
6. After the first start with Tailscale the container will halt and wait for the user to click on the link which is presented in the log from the container to add the container to your Tailnet
(alternatively one could also open up a Console from the container and issue `tailscale status` which will also present the link to authenticate the container to your Tailnet)
7. The hook script will pass over the default Entrypoint and CMD which was extracted in step 2 and the container will start as usual

These steps will be repeated after Container update, force update from the Docker page and if changes in the template are made.
If the container is only Started/Restarted the hook script will detect that Tailscale is installed and only start it, if one wants to update Tailscale inside the container simply hit `force update` on the Docker page in Unraid (with Advanced View Enabled)

The integration will show a Tailscale icon on the Docker page for each Tailscale enabled Container and show some basic information from the container (Installed Tailscale Version, Online Status, Hostname, Main Relay, IPs, Exit Node, Auth Expiry,...)
When Serve or Funnel is enabled it will also generate `Tailscale WebUI` in the drop down for the container which you can open up if Tailscale is installed from the device you are accessing Unraid.
2024-10-21 23:07:11 +02:00
SimonFair
80d567dfde killall and pgrep updates.
Set --ns $$ on commands.
2024-10-10 19:18:54 +01:00
dlandon
c9109d61bf Set default value for DOCKER_PID_LIMIT. 2024-07-05 03:47:09 -05:00
Tom Mortensen
90cbff0058 Docker and libvirt disabled by default.
Permit removing unRAID array if no devices assigned.
2024-06-24 23:28:52 -07:00
ljm42
a7b1a6c12f Fix Docker notifications
and improve consistency in related files
2024-03-14 14:12:30 -07:00
Squidly271
f57c9b60d5 Update update_container 2024-01-25 19:27:37 -05:00
bergware
ceeb125ba9 Use "null coalescing assignment" operator for $docroot 2023-10-26 14:00:15 +02:00
bergware
cd190843ab container_size: rename $unit to $units 2023-10-17 09:51:28 +02:00
bergware
5e6f8656ac Fix container starts when no auto-start is set 2023-08-10 02:08:15 +02:00
bergware
5b102f5702 Make script executable 2023-08-09 19:38:18 +02:00
bergware
8c143304fe Create rebuild_container 2023-08-09 19:37:40 +02:00
Tom Mortensen
f9ec00b488 repo reorg 2023-06-02 12:49:33 -07:00