From 8ba2074ddb78629dee9e7c563f6c9e1b5326c0e0 Mon Sep 17 00:00:00 2001 From: Boemeltrein <130394941+Boemeltrein@users.noreply.github.com> Date: Fri, 7 Mar 2025 17:30:58 +0100 Subject: [PATCH] docs(wireguard): helmify docs (#32980) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit **Description** ⚒️ Fixes # **⚙️ Type of change** - [ ] ⚙️ Feature/App addition - [ ] 🪛 Bugfix - [ ] ⚠️ Breaking change (fix or feature that would cause existing functionality to not work as expected) - [ ] 🔃 Refactor of current code - [x] 📜 Documentation Changes **🧪 How Has This Been Tested?** **📃 Notes:** **✔️ Checklist:** - [ ] ⚖️ My code follows the style guidelines of this project - [ ] 👀 I have performed a self-review of my own code - [ ] #️⃣ I have commented my code, particularly in hard-to-understand areas - [x] 📄 I have made changes to the documentation - [ ] 🧪 I have added tests to this description that prove my fix is effective or that my feature works - [ ] ⬆️ I increased versions for any altered app according to semantic versioning - [x] I made sure the title starts with `feat(chart-name):`, `fix(chart-name):`, `chore(chart-name):`, `docs(chart-name):` or `fix(docs):` **➕ App addition** If this PR is an app addition please make sure you have done the following. - [ ] 🖼️ I have added an icon in the Chart's root directory called `icon.png` --- _Please don't blindly check all the boxes. Read them and only check those that apply. Those checkboxes are there for the reviewer to see what is this all about and the status of this PR with a quick glance._ --- charts/stable/wireguard/docs/how-to.md | 49 +++++++----------- .../wireguard/docs/img/wg-configuration.png | Bin 43069 -> 0 bytes 2 files changed, 19 insertions(+), 30 deletions(-) delete mode 100644 charts/stable/wireguard/docs/img/wg-configuration.png diff --git a/charts/stable/wireguard/docs/how-to.md b/charts/stable/wireguard/docs/how-to.md index 32f534d145c..68cbf3213d5 100644 --- a/charts/stable/wireguard/docs/how-to.md +++ b/charts/stable/wireguard/docs/how-to.md @@ -2,37 +2,9 @@ title: How-To --- -## Scale App +## Chart Configuration -TrueNAS Scale users, can configure this app from the easily from the UI. -Store your wireguard config file in a directory, on one of your pools. -Example `/mnt/pool/vpn.conf` (Name can be any name. eg `wg0.conf`, `x-site.conf`, etc) -Example config content: - -```toml -[Interface] -Address = 10.0.0.1/24 -ListenPort = 51820 -PrivateKey = PRIVATE_KEY - -[Peer] -PublicKey = PUBLIC_KEY -AllowedIPs = 0.0.0.0/0 -Endpoint = wg.example:51820 -``` - -UI Configuration is simple as that: - -![wg-configuration](./img/wg-configuration.png) - -Tick `Killswitch` if you want to kill traffic when VPN is down. -Add networks in `Excluded IPv{4,6} Networks` that you want to continue their traffic when VPN is down. - -That's it! - -## Native Helm - -Native helm users can modify `values.yaml` and add their wireguard config directly in there. +Wireguard config can be added directly in your `.Values`. Example: @@ -63,3 +35,20 @@ wg: AllowedIPs = 0.0.0.0/0 Endpoint = wg.example:51820 ``` +
+ +## External config file example +Example `/mnt/pool/vpn.conf` (Name can be any name. eg `wg0.conf`, `x-site.conf`, etc) +Example config content: + +```toml +[Interface] +Address = 10.0.0.1/24 +ListenPort = 51820 +PrivateKey = PRIVATE_KEY + +[Peer] +PublicKey = PUBLIC_KEY +AllowedIPs = 0.0.0.0/0 +Endpoint = wg.example:51820 +``` diff --git a/charts/stable/wireguard/docs/img/wg-configuration.png b/charts/stable/wireguard/docs/img/wg-configuration.png deleted file mode 100644 index dd6840c4c1e7e59e368e9d7e673dc378cb037592..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 43069 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