Deployed 3ef258a to Pre-release with MkDocs 1.6.1 and mike 2.1.3

This commit is contained in:
github-actions[bot]
2025-04-11 21:45:18 +00:00
parent 973ccd6dbc
commit a9bb7f49b5
30 changed files with 16055 additions and 1439 deletions
+291 -60
View File
@@ -22,7 +22,7 @@
<link rel="icon" href="../../../assets/logo/favicon.png">
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.10">
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.11">
@@ -148,11 +148,13 @@
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" name="search">
@@ -184,6 +186,7 @@
</div>
</div>
</div>
<div class="md-header__source">
@@ -236,6 +239,25 @@
<li class="md-tabs__item">
<a href="../../../faq/" class="md-tabs__link">
FAQ
</a>
</li>
<li class="md-tabs__item">
<a href="../../../getting-started/" class="md-tabs__link">
@@ -324,6 +346,26 @@
<li class="md-tabs__item">
<a href="../../../guides/2fa/" class="md-tabs__link">
Guides
</a>
</li>
</ul>
</div>
</nav>
@@ -396,6 +438,28 @@
<li class="md-nav__item">
<a href="../../../faq/" class="md-nav__link">
<span class="md-ellipsis">
FAQ
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../getting-started/" class="md-nav__link">
@@ -432,10 +496,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4" >
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
@@ -448,8 +512,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<span class="md-nav__icon md-icon"></span>
Advanced
</label>
@@ -498,10 +562,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_2" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_2" >
<label class="md-nav__link" for="__nav_3_2" id="__nav_3_2_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_2" id="__nav_4_2_label" tabindex="0">
@@ -514,8 +578,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_2">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_2">
<span class="md-nav__icon md-icon"></span>
Config
</label>
@@ -595,10 +659,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_3" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_3" >
<label class="md-nav__link" for="__nav_3_3" id="__nav_3_3_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_3" id="__nav_4_3_label" tabindex="0">
@@ -611,8 +675,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_3">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_3">
<span class="md-nav__icon md-icon"></span>
Metrics
</label>
@@ -669,10 +733,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_4" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_4" >
<label class="md-nav__link" for="__nav_3_4" id="__nav_3_4_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_4" id="__nav_4_4_label" tabindex="0">
@@ -685,8 +749,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_4">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_4">
<span class="md-nav__icon md-icon"></span>
Migrate
</label>
@@ -773,10 +837,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5" >
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
@@ -789,8 +853,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5">
<span class="md-nav__icon md-icon"></span>
Contributing
</label>
@@ -872,10 +936,10 @@
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" checked>
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" checked>
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="">
<label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="">
@@ -888,8 +952,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_5">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_6">
<span class="md-nav__icon md-icon"></span>
Examples
</label>
@@ -915,10 +979,10 @@
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_1" checked>
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_1" checked>
<label class="md-nav__link" for="__nav_5_1" id="__nav_5_1_label" tabindex="0">
<label class="md-nav__link" for="__nav_6_1" id="__nav_6_1_label" tabindex="0">
@@ -931,8 +995,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_1_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_5_1">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_1_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_6_1">
<span class="md-nav__icon md-icon"></span>
Tutorials
</label>
@@ -1091,35 +1155,12 @@
<li class="md-nav__item">
<a href="../nginx/" class="md-nav__link">
<a href="../podman-nft/" class="md-nav__link">
<span class="md-ellipsis">
NGINX
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../podman/" class="md-nav__link">
<span class="md-ellipsis">
Podman
Podman + nftables
</span>
@@ -1168,6 +1209,194 @@
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_7" >
<label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
<span class="md-ellipsis">
Guides
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_7">
<span class="md-nav__icon md-icon"></span>
Guides
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../../guides/2fa/" class="md-nav__link">
<span class="md-ellipsis">
2FA
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/account/" class="md-nav__link">
<span class="md-ellipsis">
Edit Account
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/admin/" class="md-nav__link">
<span class="md-ellipsis">
Admin Panel
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/clients/" class="md-nav__link">
<span class="md-ellipsis">
Edit Client
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/login/" class="md-nav__link">
<span class="md-ellipsis">
Login
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/setup/" class="md-nav__link">
<span class="md-ellipsis">
Setup
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</div>
@@ -1218,7 +1447,9 @@
<h1>AdGuard Home</h1>
<p>TODO</p>
<p>It seems like the Docs on how to setup AdGuard Home are not available yet.</p>
<p>Feel free to create a PR and add them here.</p>
<!-- TODO -->
@@ -22,7 +22,7 @@
<link rel="icon" href="../../../assets/logo/favicon.png">
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.10">
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.11">
@@ -153,11 +153,13 @@
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" name="search">
@@ -189,6 +191,7 @@
</div>
</div>
</div>
<div class="md-header__source">
@@ -241,6 +244,25 @@
<li class="md-tabs__item">
<a href="../../../faq/" class="md-tabs__link">
FAQ
</a>
</li>
<li class="md-tabs__item">
<a href="../../../getting-started/" class="md-tabs__link">
@@ -329,6 +351,26 @@
<li class="md-tabs__item">
<a href="../../../guides/2fa/" class="md-tabs__link">
Guides
</a>
</li>
</ul>
</div>
</nav>
@@ -401,6 +443,28 @@
<li class="md-nav__item">
<a href="../../../faq/" class="md-nav__link">
<span class="md-ellipsis">
FAQ
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../getting-started/" class="md-nav__link">
@@ -437,10 +501,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4" >
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
@@ -453,8 +517,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<span class="md-nav__icon md-icon"></span>
Advanced
</label>
@@ -503,10 +567,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_2" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_2" >
<label class="md-nav__link" for="__nav_3_2" id="__nav_3_2_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_2" id="__nav_4_2_label" tabindex="0">
@@ -519,8 +583,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_2">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_2">
<span class="md-nav__icon md-icon"></span>
Config
</label>
@@ -600,10 +664,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_3" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_3" >
<label class="md-nav__link" for="__nav_3_3" id="__nav_3_3_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_3" id="__nav_4_3_label" tabindex="0">
@@ -616,8 +680,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_3">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_3">
<span class="md-nav__icon md-icon"></span>
Metrics
</label>
@@ -674,10 +738,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_4" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_4" >
<label class="md-nav__link" for="__nav_3_4" id="__nav_3_4_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_4" id="__nav_4_4_label" tabindex="0">
@@ -690,8 +754,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_4">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_4">
<span class="md-nav__icon md-icon"></span>
Migrate
</label>
@@ -778,10 +842,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5" >
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
@@ -794,8 +858,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5">
<span class="md-nav__icon md-icon"></span>
Contributing
</label>
@@ -877,10 +941,10 @@
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" checked>
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" checked>
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="">
<label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="">
@@ -893,8 +957,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_5">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_6">
<span class="md-nav__icon md-icon"></span>
Examples
</label>
@@ -920,10 +984,10 @@
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_1" checked>
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_1" checked>
<label class="md-nav__link" for="__nav_5_1" id="__nav_5_1_label" tabindex="0">
<label class="md-nav__link" for="__nav_6_1" id="__nav_6_1_label" tabindex="0">
@@ -936,8 +1000,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_1_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_5_1">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_1_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_6_1">
<span class="md-nav__icon md-icon"></span>
Tutorials
</label>
@@ -1025,6 +1089,21 @@
</span>
</a>
<nav class="md-nav" aria-label="Docker Compose">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#watchtower" class="md-nav__link">
<span class="md-ellipsis">
Watchtower
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
@@ -1153,35 +1232,12 @@
<li class="md-nav__item">
<a href="../nginx/" class="md-nav__link">
<a href="../podman-nft/" class="md-nav__link">
<span class="md-ellipsis">
NGINX
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../podman/" class="md-nav__link">
<span class="md-ellipsis">
Podman
Podman + nftables
</span>
@@ -1230,6 +1286,194 @@
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_7" >
<label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
<span class="md-ellipsis">
Guides
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_7">
<span class="md-nav__icon md-icon"></span>
Guides
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../../guides/2fa/" class="md-nav__link">
<span class="md-ellipsis">
2FA
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/account/" class="md-nav__link">
<span class="md-ellipsis">
Edit Account
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/admin/" class="md-nav__link">
<span class="md-ellipsis">
Admin Panel
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/clients/" class="md-nav__link">
<span class="md-ellipsis">
Edit Client
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/login/" class="md-nav__link">
<span class="md-ellipsis">
Login
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/setup/" class="md-nav__link">
<span class="md-ellipsis">
Setup
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</div>
@@ -1261,6 +1505,21 @@
</span>
</a>
<nav class="md-nav" aria-label="Docker Compose">
<ul class="md-nav__list">
<li class="md-nav__item">
<a href="#watchtower" class="md-nav__link">
<span class="md-ellipsis">
Watchtower
</span>
</a>
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
@@ -1317,10 +1576,39 @@
<h2 id="docker-compose"><a class="toclink" href="#docker-compose">Docker Compose</a></h2>
<p>With Docker Compose <code>wg-easy</code> can be updated with a single command:</p>
<p>Replace <code>$DIR</code> with the directory where your <code>docker-compose.yml</code> is located.</p>
<div class="highlight"><pre><span></span><code><span class="nb">cd</span><span class="w"> </span><span class="nv">$DIR</span>
<div class="highlight"><pre><span></span><code><span class="nb">cd</span><span class="w"> </span>/etc/docker/containers/wg-easy
sudo<span class="w"> </span>docker<span class="w"> </span>compose<span class="w"> </span>up<span class="w"> </span>-d<span class="w"> </span>--pull<span class="w"> </span>always
</code></pre></div>
<h3 id="watchtower"><a class="toclink" href="#watchtower">Watchtower</a></h3>
<p>If you want the updates to be fully automatic you can install Watchtower. This will check for updates every day at 4:00 AM and update the container if a new version is available.</p>
<p>File: <code>/etc/docker/containers/watchtower/docker-compose.yml</code></p>
<div class="highlight"><pre><span></span><code><span class="nt">services</span><span class="p">:</span>
<span class="w"> </span><span class="nt">watchtower</span><span class="p">:</span>
<span class="w"> </span><span class="nt">image</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">containrrr/watchtower:latest</span>
<span class="w"> </span><span class="nt">volumes</span><span class="p">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">/var/run/docker.sock:/var/run/docker.sock</span>
<span class="w"> </span><span class="nt">env_file</span><span class="p">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">watchtower.env</span>
<span class="w"> </span><span class="nt">restart</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">unless-stopped</span>
</code></pre></div>
<p>File: <code>/etc/docker/containers/watchtower/watchtower.env</code></p>
<div class="highlight"><pre><span></span><code>WATCHTOWER_CLEANUP=true
WATCHTOWER_SCHEDULE=0 0 4 * * *
TZ=Europe/Berlin
# Email
# WATCHTOWER_NOTIFICATIONS_LEVEL=info
# WATCHTOWER_NOTIFICATIONS=email
# WATCHTOWER_NOTIFICATION_EMAIL_FROM=mail@example.com
# WATCHTOWER_NOTIFICATION_EMAIL_TO=mail@example.com
# WATCHTOWER_NOTIFICATION_EMAIL_SERVER=smtp.example.com
# WATCHTOWER_NOTIFICATION_EMAIL_SERVER_USER=mail@example.com
# WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PASSWORD=&quot;SuperSecurePassword&quot;
# WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PORT=587
</code></pre></div>
<div class="highlight"><pre><span></span><code><span class="nb">cd</span><span class="w"> </span>/etc/docker/containers/watchtower
sudo<span class="w"> </span>docker<span class="w"> </span>compose<span class="w"> </span>up<span class="w"> </span>-d
</code></pre></div>
<h2 id="docker-run"><a class="toclink" href="#docker-run">Docker Run</a></h2>
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>docker<span class="w"> </span>stop<span class="w"> </span>wg-easy
sudo<span class="w"> </span>docker<span class="w"> </span>rm<span class="w"> </span>wg-easy
@@ -22,7 +22,7 @@
<link rel="icon" href="../../../assets/logo/favicon.png">
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.10">
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.11">
@@ -153,11 +153,13 @@
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" name="search">
@@ -189,6 +191,7 @@
</div>
</div>
</div>
<div class="md-header__source">
@@ -241,6 +244,25 @@
<li class="md-tabs__item">
<a href="../../../faq/" class="md-tabs__link">
FAQ
</a>
</li>
<li class="md-tabs__item">
<a href="../../../getting-started/" class="md-tabs__link">
@@ -329,6 +351,26 @@
<li class="md-tabs__item">
<a href="../../../guides/2fa/" class="md-tabs__link">
Guides
</a>
</li>
</ul>
</div>
</nav>
@@ -401,6 +443,28 @@
<li class="md-nav__item">
<a href="../../../faq/" class="md-nav__link">
<span class="md-ellipsis">
FAQ
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../getting-started/" class="md-nav__link">
@@ -437,10 +501,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4" >
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
@@ -453,8 +517,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<span class="md-nav__icon md-icon"></span>
Advanced
</label>
@@ -503,10 +567,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_2" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_2" >
<label class="md-nav__link" for="__nav_3_2" id="__nav_3_2_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_2" id="__nav_4_2_label" tabindex="0">
@@ -519,8 +583,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_2">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_2">
<span class="md-nav__icon md-icon"></span>
Config
</label>
@@ -600,10 +664,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_3" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_3" >
<label class="md-nav__link" for="__nav_3_3" id="__nav_3_3_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_3" id="__nav_4_3_label" tabindex="0">
@@ -616,8 +680,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_3">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_3">
<span class="md-nav__icon md-icon"></span>
Metrics
</label>
@@ -674,10 +738,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_4" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_4" >
<label class="md-nav__link" for="__nav_3_4" id="__nav_3_4_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_4" id="__nav_4_4_label" tabindex="0">
@@ -690,8 +754,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_4">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_4">
<span class="md-nav__icon md-icon"></span>
Migrate
</label>
@@ -778,10 +842,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5" >
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
@@ -794,8 +858,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5">
<span class="md-nav__icon md-icon"></span>
Contributing
</label>
@@ -877,10 +941,10 @@
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" checked>
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" checked>
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="">
<label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="">
@@ -893,8 +957,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_5">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_6">
<span class="md-nav__icon md-icon"></span>
Examples
</label>
@@ -920,10 +984,10 @@
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_1" checked>
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_1" checked>
<label class="md-nav__link" for="__nav_5_1" id="__nav_5_1_label" tabindex="0">
<label class="md-nav__link" for="__nav_6_1" id="__nav_6_1_label" tabindex="0">
@@ -936,8 +1000,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_1_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_5_1">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_1_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_6_1">
<span class="md-nav__icon md-icon"></span>
Tutorials
</label>
@@ -1084,15 +1148,6 @@
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#access-the-web-ui" class="md-nav__link">
<span class="md-ellipsis">
Access the Web UI
</span>
</a>
</li>
<li class="md-nav__item">
@@ -1198,35 +1253,12 @@
<li class="md-nav__item">
<a href="../nginx/" class="md-nav__link">
<a href="../podman-nft/" class="md-nav__link">
<span class="md-ellipsis">
NGINX
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../podman/" class="md-nav__link">
<span class="md-ellipsis">
Podman
Podman + nftables
</span>
@@ -1275,6 +1307,194 @@
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_7" >
<label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
<span class="md-ellipsis">
Guides
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_7">
<span class="md-nav__icon md-icon"></span>
Guides
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../../guides/2fa/" class="md-nav__link">
<span class="md-ellipsis">
2FA
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/account/" class="md-nav__link">
<span class="md-ellipsis">
Edit Account
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/admin/" class="md-nav__link">
<span class="md-ellipsis">
Admin Panel
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/clients/" class="md-nav__link">
<span class="md-ellipsis">
Edit Client
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/login/" class="md-nav__link">
<span class="md-ellipsis">
Login
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/setup/" class="md-nav__link">
<span class="md-ellipsis">
Setup
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</div>
@@ -1342,15 +1562,6 @@
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#access-the-web-ui" class="md-nav__link">
<span class="md-ellipsis">
Access the Web UI
</span>
</a>
</li>
<li class="md-nav__item">
@@ -1420,35 +1631,35 @@
<ol>
<li>Create a directory for the configuration files (you can choose any directory you like):</li>
</ol>
<div class="highlight"><pre><span></span><code><span class="nv">DIR</span><span class="o">=</span>/docker/wg-easy
sudo<span class="w"> </span>mkdir<span class="w"> </span>-p<span class="w"> </span><span class="nv">$DIR</span>
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>mkdir<span class="w"> </span>-p<span class="w"> </span>/etc/docker/containers/wg-easy
</code></pre></div>
<ol>
<li>Download docker compose file</li>
</ol>
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>curl<span class="w"> </span>-o<span class="w"> </span><span class="nv">$DIR</span>/docker-compose.yml<span class="w"> </span>https://raw.githubusercontent.com/wg-easy/wg-easy/master/docker-compose.yml
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>curl<span class="w"> </span>-o<span class="w"> </span>/etc/docker/containers/wg-easy/docker-compose.yml<span class="w"> </span>https://raw.githubusercontent.com/wg-easy/wg-easy/master/docker-compose.yml
</code></pre></div>
<ol>
<li>Start <code>wg-easy</code></li>
</ol>
<div class="highlight"><pre><span></span><code><span class="w"> </span>sudo<span class="w"> </span>docker-compose<span class="w"> </span>-f<span class="w"> </span><span class="nv">$DIR</span>/docker-compose.yml<span class="w"> </span>up<span class="w"> </span>-d
<div class="highlight"><pre><span></span><code><span class="w"> </span><span class="nb">cd</span><span class="w"> </span>/etc/docker/containers/wg-easy
<span class="w"> </span>sudo<span class="w"> </span>docker-compose<span class="w"> </span>up<span class="w"> </span>-d
</code></pre></div>
<h2 id="setup-firewall"><a class="toclink" href="#setup-firewall">Setup Firewall</a></h2>
<p>If you are using a firewall, you need to open the following ports:</p>
<ul>
<li>UDP 51820 (WireGuard)</li>
<li>TCP 51821 (Web UI)</li>
</ul>
<p>These ports can be changed, so if you change them you have to update your firewall rules accordingly.</p>
<h2 id="setup-reverse-proxy"><a class="toclink" href="#setup-reverse-proxy">Setup Reverse Proxy</a></h2>
<p>TODO</p>
<h2 id="access-the-web-ui"><a class="toclink" href="#access-the-web-ui">Access the Web UI</a></h2>
<p>Open your browser and navigate to <code>https://&lt;your-domain&gt;:51821</code> or <code>https://&lt;your-ip&gt;:51821</code>.</p>
<p>Follow the instructions to set up your WireGuard VPN.</p>
<ul>
<li>To setup traefik follow the instructions here: <a href="../traefik/">Traefik</a></li>
<li>To setup caddy follow the instructions here: <a href="../caddy/">Caddy</a></li>
</ul>
<h2 id="update-wg-easy"><a class="toclink" href="#update-wg-easy">Update <code>wg-easy</code></a></h2>
<p>To update <code>wg-easy</code> to the latest version, run:</p>
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>docker-compose<span class="w"> </span>-f<span class="w"> </span><span class="nv">$DIR</span>/docker-compose.yml<span class="w"> </span>pull
sudo<span class="w"> </span>docker-compose<span class="w"> </span>-f<span class="w"> </span><span class="nv">$DIR</span>/docker-compose.yml<span class="w"> </span>up<span class="w"> </span>-d
<div class="highlight"><pre><span></span><code><span class="nb">cd</span><span class="w"> </span>/etc/docker/containers/wg-easy
sudo<span class="w"> </span>docker-compose<span class="w"> </span>pull
sudo<span class="w"> </span>docker-compose<span class="w"> </span>up<span class="w"> </span>-d
</code></pre></div>
<h2 id="auto-update"><a class="toclink" href="#auto-update">Auto Update</a></h2>
<p>If you want to enable auto-updates, follow the instructions here: <a href="../auto-updates/">Auto Updates</a></p>
+291 -60
View File
@@ -22,7 +22,7 @@
<link rel="icon" href="../../../assets/logo/favicon.png">
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.10">
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.11">
@@ -148,11 +148,13 @@
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" name="search">
@@ -184,6 +186,7 @@
</div>
</div>
</div>
<div class="md-header__source">
@@ -236,6 +239,25 @@
<li class="md-tabs__item">
<a href="../../../faq/" class="md-tabs__link">
FAQ
</a>
</li>
<li class="md-tabs__item">
<a href="../../../getting-started/" class="md-tabs__link">
@@ -324,6 +346,26 @@
<li class="md-tabs__item">
<a href="../../../guides/2fa/" class="md-tabs__link">
Guides
</a>
</li>
</ul>
</div>
</nav>
@@ -396,6 +438,28 @@
<li class="md-nav__item">
<a href="../../../faq/" class="md-nav__link">
<span class="md-ellipsis">
FAQ
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../getting-started/" class="md-nav__link">
@@ -432,10 +496,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4" >
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
@@ -448,8 +512,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<span class="md-nav__icon md-icon"></span>
Advanced
</label>
@@ -498,10 +562,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_2" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_2" >
<label class="md-nav__link" for="__nav_3_2" id="__nav_3_2_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_2" id="__nav_4_2_label" tabindex="0">
@@ -514,8 +578,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_2">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_2">
<span class="md-nav__icon md-icon"></span>
Config
</label>
@@ -595,10 +659,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_3" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_3" >
<label class="md-nav__link" for="__nav_3_3" id="__nav_3_3_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_3" id="__nav_4_3_label" tabindex="0">
@@ -611,8 +675,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_3">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_3">
<span class="md-nav__icon md-icon"></span>
Metrics
</label>
@@ -669,10 +733,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_4" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_4" >
<label class="md-nav__link" for="__nav_3_4" id="__nav_3_4_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_4" id="__nav_4_4_label" tabindex="0">
@@ -685,8 +749,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_4">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_4">
<span class="md-nav__icon md-icon"></span>
Migrate
</label>
@@ -773,10 +837,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5" >
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
@@ -789,8 +853,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5">
<span class="md-nav__icon md-icon"></span>
Contributing
</label>
@@ -872,10 +936,10 @@
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" checked>
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" checked>
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="">
<label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="">
@@ -888,8 +952,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_5">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_6">
<span class="md-nav__icon md-icon"></span>
Examples
</label>
@@ -915,10 +979,10 @@
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_1" checked>
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_1" checked>
<label class="md-nav__link" for="__nav_5_1" id="__nav_5_1_label" tabindex="0">
<label class="md-nav__link" for="__nav_6_1" id="__nav_6_1_label" tabindex="0">
@@ -931,8 +995,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_1_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_5_1">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_1_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_6_1">
<span class="md-nav__icon md-icon"></span>
Tutorials
</label>
@@ -1091,35 +1155,12 @@
<li class="md-nav__item">
<a href="../nginx/" class="md-nav__link">
<a href="../podman-nft/" class="md-nav__link">
<span class="md-ellipsis">
NGINX
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../podman/" class="md-nav__link">
<span class="md-ellipsis">
Podman
Podman + nftables
</span>
@@ -1168,6 +1209,194 @@
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_7" >
<label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
<span class="md-ellipsis">
Guides
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_7">
<span class="md-nav__icon md-icon"></span>
Guides
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../../guides/2fa/" class="md-nav__link">
<span class="md-ellipsis">
2FA
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/account/" class="md-nav__link">
<span class="md-ellipsis">
Edit Account
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/admin/" class="md-nav__link">
<span class="md-ellipsis">
Admin Panel
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/clients/" class="md-nav__link">
<span class="md-ellipsis">
Edit Client
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/login/" class="md-nav__link">
<span class="md-ellipsis">
Login
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/setup/" class="md-nav__link">
<span class="md-ellipsis">
Setup
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</div>
@@ -1218,7 +1447,9 @@
<h1>Caddy</h1>
<p>TODO</p>
<p>It seems like the Docs on how to setup Caddy are not available yet.</p>
<p>Feel free to create a PR and add them here.</p>
<!-- TODO -->
@@ -22,7 +22,7 @@
<link rel="icon" href="../../../assets/logo/favicon.png">
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.10">
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.11">
@@ -148,11 +148,13 @@
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" name="search">
@@ -184,6 +186,7 @@
</div>
</div>
</div>
<div class="md-header__source">
@@ -236,6 +239,25 @@
<li class="md-tabs__item">
<a href="../../../faq/" class="md-tabs__link">
FAQ
</a>
</li>
<li class="md-tabs__item">
<a href="../../../getting-started/" class="md-tabs__link">
@@ -324,6 +346,26 @@
<li class="md-tabs__item">
<a href="../../../guides/2fa/" class="md-tabs__link">
Guides
</a>
</li>
</ul>
</div>
</nav>
@@ -396,6 +438,28 @@
<li class="md-nav__item">
<a href="../../../faq/" class="md-nav__link">
<span class="md-ellipsis">
FAQ
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../getting-started/" class="md-nav__link">
@@ -432,10 +496,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4" >
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
@@ -448,8 +512,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<span class="md-nav__icon md-icon"></span>
Advanced
</label>
@@ -498,10 +562,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_2" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_2" >
<label class="md-nav__link" for="__nav_3_2" id="__nav_3_2_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_2" id="__nav_4_2_label" tabindex="0">
@@ -514,8 +578,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_2">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_2">
<span class="md-nav__icon md-icon"></span>
Config
</label>
@@ -595,10 +659,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_3" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_3" >
<label class="md-nav__link" for="__nav_3_3" id="__nav_3_3_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_3" id="__nav_4_3_label" tabindex="0">
@@ -611,8 +675,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_3">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_3">
<span class="md-nav__icon md-icon"></span>
Metrics
</label>
@@ -669,10 +733,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_4" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_4" >
<label class="md-nav__link" for="__nav_3_4" id="__nav_3_4_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_4" id="__nav_4_4_label" tabindex="0">
@@ -685,8 +749,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_4">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_4">
<span class="md-nav__icon md-icon"></span>
Migrate
</label>
@@ -773,10 +837,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5" >
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
@@ -789,8 +853,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5">
<span class="md-nav__icon md-icon"></span>
Contributing
</label>
@@ -872,10 +936,10 @@
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" checked>
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" checked>
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="">
<label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="">
@@ -888,8 +952,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_5">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_6">
<span class="md-nav__icon md-icon"></span>
Examples
</label>
@@ -915,10 +979,10 @@
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_1" checked>
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_1" checked>
<label class="md-nav__link" for="__nav_5_1" id="__nav_5_1_label" tabindex="0">
<label class="md-nav__link" for="__nav_6_1" id="__nav_6_1_label" tabindex="0">
@@ -931,8 +995,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_1_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_5_1">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_1_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_6_1">
<span class="md-nav__icon md-icon"></span>
Tutorials
</label>
@@ -1091,35 +1155,12 @@
<li class="md-nav__item">
<a href="../nginx/" class="md-nav__link">
<a href="../podman-nft/" class="md-nav__link">
<span class="md-ellipsis">
NGINX
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../podman/" class="md-nav__link">
<span class="md-ellipsis">
Podman
Podman + nftables
</span>
@@ -1168,6 +1209,194 @@
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_7" >
<label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
<span class="md-ellipsis">
Guides
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_7">
<span class="md-nav__icon md-icon"></span>
Guides
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../../guides/2fa/" class="md-nav__link">
<span class="md-ellipsis">
2FA
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/account/" class="md-nav__link">
<span class="md-ellipsis">
Edit Account
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/admin/" class="md-nav__link">
<span class="md-ellipsis">
Admin Panel
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/clients/" class="md-nav__link">
<span class="md-ellipsis">
Edit Client
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/login/" class="md-nav__link">
<span class="md-ellipsis">
Login
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/setup/" class="md-nav__link">
<span class="md-ellipsis">
Setup
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</div>
@@ -1219,7 +1448,7 @@
<h1>Docker Run</h1>
<p>To setup the IPv6 Network, simply run once:</p>
<div class="highlight"><pre><span></span><code><span class="w"> </span>docker<span class="w"> </span>network<span class="w"> </span>create<span class="w"> </span><span class="se">\</span>
<div class="highlight"><pre><span></span><code>docker<span class="w"> </span>network<span class="w"> </span>create<span class="w"> </span><span class="se">\</span>
<span class="w"> </span>-d<span class="w"> </span>bridge<span class="w"> </span>--ipv6<span class="w"> </span><span class="se">\</span>
<span class="w"> </span>-d<span class="w"> </span>default<span class="w"> </span><span class="se">\</span>
<span class="w"> </span>--subnet<span class="w"> </span><span class="m">10</span>.42.42.0/24<span class="w"> </span><span class="se">\</span>
@@ -1227,8 +1456,8 @@
</code></pre></div>
<!-- ref: major version -->
<p>To automatically install &amp; run ``wg-easy, simply run:</p>
<div class="highlight"><pre><span></span><code><span class="w"> </span>docker<span class="w"> </span>run<span class="w"> </span>-d<span class="w"> </span><span class="se">\</span>
<p>To automatically install &amp; run <code>wg-easy</code>, simply run:</p>
<div class="highlight"><pre><span></span><code>docker<span class="w"> </span>run<span class="w"> </span>-d<span class="w"> </span><span class="se">\</span>
<span class="w"> </span>--net<span class="w"> </span>wg<span class="w"> </span><span class="se">\</span>
<span class="w"> </span>-e<span class="w"> </span><span class="nv">INSECURE</span><span class="o">=</span><span class="nb">true</span><span class="w"> </span><span class="se">\</span>
<span class="w"> </span>--name<span class="w"> </span>wg-easy<span class="w"> </span><span class="se">\</span>
@@ -1248,10 +1477,7 @@
<span class="w"> </span>--restart<span class="w"> </span>unless-stopped<span class="w"> </span><span class="se">\</span>
<span class="w"> </span>ghcr.io/wg-easy/wg-easy:15
</code></pre></div>
<p>The Web UI will now be available on <code>http://0.0.0.0:51821</code>.</p>
<blockquote>
<p>💡 Your configuration files will be saved in <code>~/.wg-easy</code></p>
</blockquote>
<p>The Web UI will now be available at <a href="http://0.0.0.0:51821">http://0.0.0.0:51821</a>.</p>
@@ -18,11 +18,11 @@
<link rel="prev" href="../docker-run/">
<link rel="next" href="../nginx/">
<link rel="next" href="../podman-nft/">
<link rel="icon" href="../../../assets/logo/favicon.png">
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.10">
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.11">
@@ -148,11 +148,13 @@
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" name="search">
@@ -184,6 +186,7 @@
</div>
</div>
</div>
<div class="md-header__source">
@@ -236,6 +239,25 @@
<li class="md-tabs__item">
<a href="../../../faq/" class="md-tabs__link">
FAQ
</a>
</li>
<li class="md-tabs__item">
<a href="../../../getting-started/" class="md-tabs__link">
@@ -324,6 +346,26 @@
<li class="md-tabs__item">
<a href="../../../guides/2fa/" class="md-tabs__link">
Guides
</a>
</li>
</ul>
</div>
</nav>
@@ -396,6 +438,28 @@
<li class="md-nav__item">
<a href="../../../faq/" class="md-nav__link">
<span class="md-ellipsis">
FAQ
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../getting-started/" class="md-nav__link">
@@ -432,10 +496,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4" >
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
@@ -448,8 +512,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<span class="md-nav__icon md-icon"></span>
Advanced
</label>
@@ -498,10 +562,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_2" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_2" >
<label class="md-nav__link" for="__nav_3_2" id="__nav_3_2_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_2" id="__nav_4_2_label" tabindex="0">
@@ -514,8 +578,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_2">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_2">
<span class="md-nav__icon md-icon"></span>
Config
</label>
@@ -595,10 +659,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_3" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_3" >
<label class="md-nav__link" for="__nav_3_3" id="__nav_3_3_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_3" id="__nav_4_3_label" tabindex="0">
@@ -611,8 +675,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_3">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_3">
<span class="md-nav__icon md-icon"></span>
Metrics
</label>
@@ -669,10 +733,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_4" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_4" >
<label class="md-nav__link" for="__nav_3_4" id="__nav_3_4_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_4" id="__nav_4_4_label" tabindex="0">
@@ -685,8 +749,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_4">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_4">
<span class="md-nav__icon md-icon"></span>
Migrate
</label>
@@ -773,10 +837,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5" >
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
@@ -789,8 +853,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5">
<span class="md-nav__icon md-icon"></span>
Contributing
</label>
@@ -872,10 +936,10 @@
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" checked>
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" checked>
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="">
<label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="">
@@ -888,8 +952,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_5">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_6">
<span class="md-nav__icon md-icon"></span>
Examples
</label>
@@ -915,10 +979,10 @@
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_1" checked>
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_1" checked>
<label class="md-nav__link" for="__nav_5_1" id="__nav_5_1_label" tabindex="0">
<label class="md-nav__link" for="__nav_6_1" id="__nav_6_1_label" tabindex="0">
@@ -931,8 +995,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_1_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_5_1">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_1_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_6_1">
<span class="md-nav__icon md-icon"></span>
Tutorials
</label>
@@ -1091,35 +1155,12 @@
<li class="md-nav__item">
<a href="../nginx/" class="md-nav__link">
<a href="../podman-nft/" class="md-nav__link">
<span class="md-ellipsis">
NGINX
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../podman/" class="md-nav__link">
<span class="md-ellipsis">
Podman
Podman + nftables
</span>
@@ -1168,6 +1209,194 @@
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_7" >
<label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
<span class="md-ellipsis">
Guides
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_7">
<span class="md-nav__icon md-icon"></span>
Guides
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../../guides/2fa/" class="md-nav__link">
<span class="md-ellipsis">
2FA
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/account/" class="md-nav__link">
<span class="md-ellipsis">
Edit Account
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/admin/" class="md-nav__link">
<span class="md-ellipsis">
Admin Panel
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/clients/" class="md-nav__link">
<span class="md-ellipsis">
Edit Client
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/login/" class="md-nav__link">
<span class="md-ellipsis">
Login
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/setup/" class="md-nav__link">
<span class="md-ellipsis">
Setup
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</div>
@@ -1218,7 +1447,8 @@
<h1>Without Docker</h1>
<p>TODO</p>
<p>This is currently not yet supported.</p>
<!-- TODO -->
File diff suppressed because it is too large Load Diff
File diff suppressed because one or more lines are too long
+642 -61
View File
@@ -15,12 +15,14 @@
<link rel="canonical" href="https://wg-easy.github.io/wg-easy/Pre-release/examples/tutorials/traefik/">
<link rel="prev" href="../podman/">
<link rel="prev" href="../podman-nft/">
<link rel="next" href="../../../guides/2fa/">
<link rel="icon" href="../../../assets/logo/favicon.png">
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.10">
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.11">
@@ -75,6 +77,11 @@
<label class="md-overlay" for="__drawer"></label>
<div data-md-component="skip">
<a href="#create-docker-compose-project" class="md-skip">
Skip to content
</a>
</div>
<div data-md-component="announce">
@@ -146,11 +153,13 @@
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-header__button md-icon" for="__search">
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"><path d="M9.5 3A6.5 6.5 0 0 1 16 9.5c0 1.61-.59 3.09-1.56 4.23l.27.27h.79l5 5-1.5 1.5-5-5v-.79l-.27-.27A6.52 6.52 0 0 1 9.5 16 6.5 6.5 0 0 1 3 9.5 6.5 6.5 0 0 1 9.5 3m0 2C7 5 5 7 5 9.5S7 14 9.5 14 14 12 14 9.5 12 5 9.5 5"/></svg>
</label>
<div class="md-search" data-md-component="search" role="dialog">
<label class="md-search__overlay" for="__search"></label>
<div class="md-search__inner" role="search">
<form class="md-search__form" name="search">
@@ -182,6 +191,7 @@
</div>
</div>
</div>
<div class="md-header__source">
@@ -234,6 +244,25 @@
<li class="md-tabs__item">
<a href="../../../faq/" class="md-tabs__link">
FAQ
</a>
</li>
<li class="md-tabs__item">
<a href="../../../getting-started/" class="md-tabs__link">
@@ -322,6 +351,26 @@
<li class="md-tabs__item">
<a href="../../../guides/2fa/" class="md-tabs__link">
Guides
</a>
</li>
</ul>
</div>
</nav>
@@ -394,6 +443,28 @@
<li class="md-nav__item">
<a href="../../../faq/" class="md-nav__link">
<span class="md-ellipsis">
FAQ
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../getting-started/" class="md-nav__link">
@@ -430,10 +501,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4" >
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
@@ -446,8 +517,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<span class="md-nav__icon md-icon"></span>
Advanced
</label>
@@ -496,10 +567,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_2" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_2" >
<label class="md-nav__link" for="__nav_3_2" id="__nav_3_2_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_2" id="__nav_4_2_label" tabindex="0">
@@ -512,8 +583,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_2">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_2">
<span class="md-nav__icon md-icon"></span>
Config
</label>
@@ -593,10 +664,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_3" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_3" >
<label class="md-nav__link" for="__nav_3_3" id="__nav_3_3_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_3" id="__nav_4_3_label" tabindex="0">
@@ -609,8 +680,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_3">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_3_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_3">
<span class="md-nav__icon md-icon"></span>
Metrics
</label>
@@ -667,10 +738,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_3_4" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4_4" >
<label class="md-nav__link" for="__nav_3_4" id="__nav_3_4_label" tabindex="0">
<label class="md-nav__link" for="__nav_4_4" id="__nav_4_4_label" tabindex="0">
@@ -683,8 +754,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_3_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_3_4">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_4_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4_4">
<span class="md-nav__icon md-icon"></span>
Migrate
</label>
@@ -771,10 +842,10 @@
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_4" >
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_5" >
<label class="md-nav__link" for="__nav_4" id="__nav_4_label" tabindex="0">
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
@@ -787,8 +858,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_4_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_4">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_5">
<span class="md-nav__icon md-icon"></span>
Contributing
</label>
@@ -870,10 +941,10 @@
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" checked>
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" checked>
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="">
<label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="">
@@ -886,8 +957,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_5">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_6">
<span class="md-nav__icon md-icon"></span>
Examples
</label>
@@ -913,10 +984,10 @@
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5_1" checked>
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6_1" checked>
<label class="md-nav__link" for="__nav_5_1" id="__nav_5_1_label" tabindex="0">
<label class="md-nav__link" for="__nav_6_1" id="__nav_6_1_label" tabindex="0">
@@ -929,8 +1000,8 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_5_1_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_5_1">
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_6_1_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_6_1">
<span class="md-nav__icon md-icon"></span>
Tutorials
</label>
@@ -1081,35 +1152,12 @@
<li class="md-nav__item">
<a href="../nginx/" class="md-nav__link">
<a href="../podman-nft/" class="md-nav__link">
<span class="md-ellipsis">
NGINX
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../podman/" class="md-nav__link">
<span class="md-ellipsis">
Podman
Podman + nftables
</span>
@@ -1134,6 +1182,19 @@
<label class="md-nav__link md-nav__link--active" for="__toc">
<span class="md-ellipsis">
Traefik
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<a href="./" class="md-nav__link md-nav__link--active">
@@ -1146,6 +1207,104 @@
</a>
<nav class="md-nav md-nav--secondary" aria-label="Table of contents">
<label class="md-nav__title" for="__toc">
<span class="md-nav__icon md-icon"></span>
Table of contents
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#create-docker-compose-project" class="md-nav__link">
<span class="md-ellipsis">
Create docker compose project
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#create-docker-compose-file" class="md-nav__link">
<span class="md-ellipsis">
Create docker compose file
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#create-traefikyml" class="md-nav__link">
<span class="md-ellipsis">
Create traefik.yml
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#create-traefik_dynamicyml" class="md-nav__link">
<span class="md-ellipsis">
Create traefik_dynamic.yml
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#create-acmejson" class="md-nav__link">
<span class="md-ellipsis">
Create acme.json
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#create-network" class="md-nav__link">
<span class="md-ellipsis">
Create network
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#start-traefik" class="md-nav__link">
<span class="md-ellipsis">
Start traefik
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#add-labels-to-wg-easy" class="md-nav__link">
<span class="md-ellipsis">
Add Labels to wg-easy
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#restart-wg-easy" class="md-nav__link">
<span class="md-ellipsis">
Restart wg-easy
</span>
</a>
</li>
</ul>
</nav>
</li>
@@ -1166,6 +1325,194 @@
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle md-toggle--indeterminate" type="checkbox" id="__nav_7" >
<label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
<span class="md-ellipsis">
Guides
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_7">
<span class="md-nav__icon md-icon"></span>
Guides
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../../guides/2fa/" class="md-nav__link">
<span class="md-ellipsis">
2FA
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/account/" class="md-nav__link">
<span class="md-ellipsis">
Edit Account
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/admin/" class="md-nav__link">
<span class="md-ellipsis">
Admin Panel
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/clients/" class="md-nav__link">
<span class="md-ellipsis">
Edit Client
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/login/" class="md-nav__link">
<span class="md-ellipsis">
Login
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../../guides/setup/" class="md-nav__link">
<span class="md-ellipsis">
Setup
</span>
</a>
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</div>
@@ -1184,6 +1531,95 @@
<label class="md-nav__title" for="__toc">
<span class="md-nav__icon md-icon"></span>
Table of contents
</label>
<ul class="md-nav__list" data-md-component="toc" data-md-scrollfix>
<li class="md-nav__item">
<a href="#create-docker-compose-project" class="md-nav__link">
<span class="md-ellipsis">
Create docker compose project
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#create-docker-compose-file" class="md-nav__link">
<span class="md-ellipsis">
Create docker compose file
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#create-traefikyml" class="md-nav__link">
<span class="md-ellipsis">
Create traefik.yml
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#create-traefik_dynamicyml" class="md-nav__link">
<span class="md-ellipsis">
Create traefik_dynamic.yml
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#create-acmejson" class="md-nav__link">
<span class="md-ellipsis">
Create acme.json
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#create-network" class="md-nav__link">
<span class="md-ellipsis">
Create network
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#start-traefik" class="md-nav__link">
<span class="md-ellipsis">
Start traefik
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#add-labels-to-wg-easy" class="md-nav__link">
<span class="md-ellipsis">
Add Labels to wg-easy
</span>
</a>
</li>
<li class="md-nav__item">
<a href="#restart-wg-easy" class="md-nav__link">
<span class="md-ellipsis">
Restart wg-easy
</span>
</a>
</li>
</ul>
</nav>
</div>
</div>
@@ -1216,7 +1652,152 @@
<h1>Traefik</h1>
<p>TODO</p>
<div class="admonition note">
<p class="admonition-title">Opinionated</p>
<p>This guide is opinionated. If you use other conventions or folder layouts, feel free to change the commands and paths.</p>
</div>
<h2 id="create-docker-compose-project"><a class="toclink" href="#create-docker-compose-project">Create docker compose project</a></h2>
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>mkdir<span class="w"> </span>-p<span class="w"> </span>/etc/docker/containers/traefik
<span class="nb">cd</span><span class="w"> </span>/etc/docker/containers/traefik
</code></pre></div>
<h2 id="create-docker-compose-file"><a class="toclink" href="#create-docker-compose-file">Create docker compose file</a></h2>
<p>File: <code>/etc/docker/containers/traefik/docker-compose.yml</code></p>
<div class="highlight"><pre><span></span><code><span class="nt">services</span><span class="p">:</span>
<span class="w"> </span><span class="nt">traefik</span><span class="p">:</span>
<span class="w"> </span><span class="nt">image</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">traefik:3.3</span>
<span class="w"> </span><span class="nt">container_name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">traefik</span>
<span class="w"> </span><span class="nt">restart</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">unless-stopped</span>
<span class="w"> </span><span class="nt">ports</span><span class="p">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="s">&quot;80:80&quot;</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="s">&quot;443:443/tcp&quot;</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="s">&quot;443:443/udp&quot;</span>
<span class="w"> </span><span class="nt">volumes</span><span class="p">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">/var/run/docker.sock:/var/run/docker.sock</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">/etc/docker/volumes/traefik/traefik.yml:/traefik.yml:ro</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">/etc/docker/volumes/traefik/traefik_dynamic.yml:/traefik_dynamic.yml:ro</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">/etc/docker/volumes/traefik/acme.json:/acme.json</span>
<span class="w"> </span><span class="nt">networks</span><span class="p">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">traefik</span>
<span class="nt">networks</span><span class="p">:</span>
<span class="w"> </span><span class="nt">traefik</span><span class="p">:</span>
<span class="w"> </span><span class="nt">external</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
</code></pre></div>
<h2 id="create-traefikyml"><a class="toclink" href="#create-traefikyml">Create traefik.yml</a></h2>
<p>File: <code>/etc/docker/volumes/traefik/traefik.yml</code></p>
<div class="highlight"><pre><span></span><code><span class="nt">log</span><span class="p">:</span>
<span class="w"> </span><span class="nt">level</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">INFO</span>
<span class="nt">entryPoints</span><span class="p">:</span>
<span class="w"> </span><span class="nt">web</span><span class="p">:</span>
<span class="w"> </span><span class="nt">address</span><span class="p">:</span><span class="w"> </span><span class="s">&quot;:80/tcp&quot;</span>
<span class="w"> </span><span class="nt">http</span><span class="p">:</span>
<span class="w"> </span><span class="nt">redirections</span><span class="p">:</span>
<span class="w"> </span><span class="nt">entryPoint</span><span class="p">:</span>
<span class="w"> </span><span class="nt">to</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">websecure</span>
<span class="w"> </span><span class="nt">scheme</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">https</span>
<span class="w"> </span><span class="nt">websecure</span><span class="p">:</span>
<span class="w"> </span><span class="nt">address</span><span class="p">:</span><span class="w"> </span><span class="s">&quot;:443/tcp&quot;</span>
<span class="w"> </span><span class="nt">http</span><span class="p">:</span>
<span class="w"> </span><span class="nt">middlewares</span><span class="p">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">compress@file</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">hsts@file</span>
<span class="w"> </span><span class="nt">tls</span><span class="p">:</span>
<span class="w"> </span><span class="nt">certResolver</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">letsencrypt</span>
<span class="w"> </span><span class="nt">http3</span><span class="p">:</span><span class="w"> </span><span class="p p-Indicator">{}</span>
<span class="nt">api</span><span class="p">:</span>
<span class="w"> </span><span class="nt">dashboard</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
<span class="nt">certificatesResolvers</span><span class="p">:</span>
<span class="w"> </span><span class="nt">letsencrypt</span><span class="p">:</span>
<span class="w"> </span><span class="nt">acme</span><span class="p">:</span>
<span class="w"> </span><span class="nt">email</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">$mail@example.com$</span>
<span class="w"> </span><span class="nt">storage</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">acme.json</span>
<span class="w"> </span><span class="nt">httpChallenge</span><span class="p">:</span>
<span class="w"> </span><span class="nt">entryPoint</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">web</span>
<span class="nt">providers</span><span class="p">:</span>
<span class="w"> </span><span class="nt">docker</span><span class="p">:</span>
<span class="w"> </span><span class="nt">watch</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
<span class="w"> </span><span class="nt">network</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">traefik</span>
<span class="w"> </span><span class="nt">exposedByDefault</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">false</span>
<span class="w"> </span><span class="nt">file</span><span class="p">:</span>
<span class="w"> </span><span class="nt">filename</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">traefik_dynamic.yml</span>
<span class="nt">serversTransport</span><span class="p">:</span>
<span class="w"> </span><span class="nt">insecureSkipVerify</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
</code></pre></div>
<h2 id="create-traefik_dynamicyml"><a class="toclink" href="#create-traefik_dynamicyml">Create traefik_dynamic.yml</a></h2>
<p>File: <code>/etc/docker/volumes/traefik/traefik_dynamic.yml</code></p>
<div class="highlight"><pre><span></span><code><span class="nt">http</span><span class="p">:</span>
<span class="w"> </span><span class="nt">middlewares</span><span class="p">:</span>
<span class="w"> </span><span class="nt">services</span><span class="p">:</span>
<span class="w"> </span><span class="nt">basicAuth</span><span class="p">:</span>
<span class="w"> </span><span class="nt">users</span><span class="p">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="s">&quot;$username$:$password$&quot;</span>
<span class="w"> </span><span class="nt">compress</span><span class="p">:</span>
<span class="w"> </span><span class="nt">compress</span><span class="p">:</span><span class="w"> </span><span class="p p-Indicator">{}</span>
<span class="w"> </span><span class="nt">hsts</span><span class="p">:</span>
<span class="w"> </span><span class="nt">headers</span><span class="p">:</span>
<span class="w"> </span><span class="nt">stsSeconds</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">2592000</span>
<span class="w"> </span><span class="nt">routers</span><span class="p">:</span>
<span class="w"> </span><span class="nt">api</span><span class="p">:</span>
<span class="w"> </span><span class="nt">rule</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">Host(`traefik.$example.com$`)</span>
<span class="w"> </span><span class="nt">entrypoints</span><span class="p">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">websecure</span>
<span class="w"> </span><span class="nt">middlewares</span><span class="p">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">services</span>
<span class="w"> </span><span class="nt">service</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">api@internal</span>
<span class="nt">tls</span><span class="p">:</span>
<span class="w"> </span><span class="nt">options</span><span class="p">:</span>
<span class="w"> </span><span class="nt">default</span><span class="p">:</span>
<span class="w"> </span><span class="nt">cipherSuites</span><span class="p">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256</span>
<span class="w"> </span><span class="nt">sniStrict</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
</code></pre></div>
<h2 id="create-acmejson"><a class="toclink" href="#create-acmejson">Create acme.json</a></h2>
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>touch<span class="w"> </span>/etc/docker/volumes/traefik/acme.json
sudo<span class="w"> </span>chmod<span class="w"> </span><span class="m">600</span><span class="w"> </span>/etc/docker/volumes/traefik/acme.json
</code></pre></div>
<h2 id="create-network"><a class="toclink" href="#create-network">Create network</a></h2>
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>docker<span class="w"> </span>network<span class="w"> </span>create<span class="w"> </span>traefik
</code></pre></div>
<h2 id="start-traefik"><a class="toclink" href="#start-traefik">Start traefik</a></h2>
<div class="highlight"><pre><span></span><code>sudo<span class="w"> </span>docker-compose<span class="w"> </span>up<span class="w"> </span>-d
</code></pre></div>
<p>You can no access the Traefik dashboard at <code>https://traefik.$example.com$</code> with the credentials you set in <code>traefik_dynamic.yml</code>.</p>
<h2 id="add-labels-to-wg-easy"><a class="toclink" href="#add-labels-to-wg-easy">Add Labels to <code>wg-easy</code></a></h2>
<p>To add labels to your <code>wg-easy</code> service, you can add the following to your <code>docker-compose.yml</code> file:</p>
<p>File: <code>/etc/docker/containers/wg-easy/docker-compose.yml</code></p>
<div class="highlight"><pre><span></span><code><span class="nt">services</span><span class="p">:</span>
<span class="w"> </span><span class="nt">wg-easy</span><span class="p">:</span>
<span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">...</span>
<span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">container_name</span><span class="p p-Indicator">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">wg-easy</span>
<span class="w"> </span><span class="nt">networks</span><span class="p">:</span>
<span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">...</span>
<span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">traefik</span><span class="p p-Indicator">:</span><span class="w"> </span><span class="p p-Indicator">{}</span>
<span class="w"> </span><span class="nt">labels</span><span class="p">:</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="s">&quot;traefik.enable=true&quot;</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="s">&quot;traefik.http.routers.wg-easy.rule=Host(`wg-easy.$example.com$`)&quot;</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="s">&quot;traefik.http.routers.wg-easy.entrypoints=websecure&quot;</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="s">&quot;traefik.http.routers.wg-easy.service=wg-easy&quot;</span>
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="s">&quot;traefik.http.services.wg-easy.loadbalancer.server.port=51821&quot;</span>
<span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">...</span>
<span class="nt">networks</span><span class="p">:</span>
<span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">...</span>
<span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">traefik</span><span class="p p-Indicator">:</span>
<span class="w"> </span><span class="nt">external</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">true</span>
</code></pre></div>
<h2 id="restart-wg-easy"><a class="toclink" href="#restart-wg-easy">Restart <code>wg-easy</code></a></h2>
<div class="highlight"><pre><span></span><code><span class="nb">cd</span><span class="w"> </span>/etc/docker/containers/wg-easy
sudo<span class="w"> </span>docker-compose<span class="w"> </span>up<span class="w"> </span>-d
</code></pre></div>
<p>You can now access <code>wg-easy</code> at <code>https://wg-easy.$example.com$</code> and start the setup.</p>