mirror of https://github.com/wg-easy/wg-easy
37 changed files with 17477 additions and 1071 deletions
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -1,16 +0,0 @@ |
|||
{ |
|||
"1": "Initial version. Enjoy!", |
|||
"2": "You can now rename a client & update the address. Enjoy!", |
|||
"3": "Many improvements and small changes. Enjoy!", |
|||
"4": "Now with pretty charts for client's network speed. Enjoy!", |
|||
"5": "Many small improvements & feature requests. Enjoy!", |
|||
"6": "Many small performance improvements & bug fixes. Enjoy!", |
|||
"7": "Improved the look & performance of the upload/download chart.", |
|||
"8": "Updated to Node.js v18.", |
|||
"9": "Fixed issue running on devices with older kernels.", |
|||
"10": "Added sessionless HTTP API auth & automatic dark mode.", |
|||
"11": "Multilanguage Support & various bugfixes.", |
|||
"12": "UI_TRAFFIC_STATS, Import json configurations with no PreShared-Key, allow clients with no privateKey & more.", |
|||
"13": "New framework (h3), UI_CHART_TYPE, some bugfixes & more.", |
|||
"14": "Home Assistent support, PASSWORD_HASH (inc. Helper), translation updates bugfixes & more." |
|||
} |
@ -22,7 +22,7 @@ |
|||
|
|||
|
|||
<link rel="icon" href="../../../assets/logo/favicon.png"> |
|||
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.8"> |
|||
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.14"> |
|||
|
|||
|
|||
|
|||
@ -30,7 +30,7 @@ |
|||
|
|||
|
|||
|
|||
<link rel="stylesheet" href="../../../assets/stylesheets/main.8608ea7d.min.css"> |
|||
<link rel="stylesheet" href="../../../assets/stylesheets/main.342714a4.min.css"> |
|||
|
|||
|
|||
<link rel="stylesheet" href="../../../assets/stylesheets/palette.06af60db.min.css"> |
|||
@ -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"> |
|||
@ -221,10 +224,12 @@ |
|||
|
|||
|
|||
|
|||
|
|||
<li class="md-tabs__item"> |
|||
<a href="../../.." class="md-tabs__link"> |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
Home |
|||
@ -238,10 +243,31 @@ |
|||
|
|||
|
|||
|
|||
|
|||
<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"> |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
Getting Started |
|||
@ -255,12 +281,14 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
<li class="md-tabs__item"> |
|||
<a href="../../../advanced/api/" class="md-tabs__link"> |
|||
|
|||
|
|||
|
|||
Advanced |
|||
|
|||
</a> |
|||
@ -273,12 +301,14 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
<li class="md-tabs__item"> |
|||
<a href="../../../contributing/general/" class="md-tabs__link"> |
|||
|
|||
|
|||
|
|||
Contributing |
|||
|
|||
</a> |
|||
@ -290,6 +320,7 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
@ -298,6 +329,7 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
@ -307,6 +339,7 @@ |
|||
<a href="../adguard/" class="md-tabs__link"> |
|||
|
|||
|
|||
|
|||
Examples |
|||
|
|||
</a> |
|||
@ -318,6 +351,26 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
<li class="md-tabs__item"> |
|||
<a href="../../../guides/2fa/" class="md-tabs__link"> |
|||
|
|||
|
|||
|
|||
Guides |
|||
|
|||
</a> |
|||
</li> |
|||
|
|||
|
|||
|
|||
|
|||
</ul> |
|||
</div> |
|||
</nav> |
|||
@ -372,6 +425,7 @@ |
|||
<a href="../../.." class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Home |
|||
|
|||
@ -389,10 +443,33 @@ |
|||
|
|||
|
|||
|
|||
<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"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Getting Started |
|||
|
|||
@ -413,6 +490,7 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
@ -423,12 +501,13 @@ |
|||
|
|||
|
|||
|
|||
<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"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Advanced |
|||
|
|||
@ -438,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> |
|||
@ -455,6 +534,7 @@ |
|||
<a href="../../../advanced/api/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
API |
|||
|
|||
@ -476,6 +556,7 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
@ -486,12 +567,13 @@ |
|||
|
|||
|
|||
|
|||
<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"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Config |
|||
|
|||
@ -501,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> |
|||
@ -518,6 +600,7 @@ |
|||
<a href="../../../advanced/config/optional-config/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Optional Configuration |
|||
|
|||
@ -540,6 +623,7 @@ |
|||
<a href="../../../advanced/config/unattended-setup/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Unattended Setup |
|||
|
|||
@ -569,6 +653,7 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
@ -579,12 +664,13 @@ |
|||
|
|||
|
|||
|
|||
<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"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Metrics |
|||
|
|||
@ -594,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> |
|||
@ -611,6 +697,7 @@ |
|||
<a href="../../../advanced/metrics/prometheus/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Prometheus |
|||
|
|||
@ -640,6 +727,7 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
@ -650,12 +738,13 @@ |
|||
|
|||
|
|||
|
|||
<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"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Migrate |
|||
|
|||
@ -665,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> |
|||
@ -682,6 +771,7 @@ |
|||
<a href="../../../advanced/migrate/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Migrate |
|||
|
|||
@ -704,6 +794,7 @@ |
|||
<a href="../../../advanced/migrate/from-14-to-15/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Migrate from v14 to v15 |
|||
|
|||
@ -740,6 +831,7 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
@ -750,12 +842,13 @@ |
|||
|
|||
|
|||
|
|||
<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"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Contributing |
|||
|
|||
@ -765,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> |
|||
@ -782,6 +875,7 @@ |
|||
<a href="../../../contributing/general/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
General Information |
|||
|
|||
@ -804,6 +898,7 @@ |
|||
<a href="../../../contributing/issues-and-pull-requests/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Issues and Pull Requests |
|||
|
|||
@ -834,6 +929,7 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
@ -845,12 +941,13 @@ |
|||
|
|||
|
|||
|
|||
<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=""> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Examples |
|||
|
|||
@ -860,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> |
|||
@ -878,6 +975,7 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
@ -886,12 +984,13 @@ |
|||
|
|||
|
|||
|
|||
<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"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Tutorials |
|||
|
|||
@ -901,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> |
|||
@ -918,6 +1017,7 @@ |
|||
<a href="../adguard/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
AdGuard Home |
|||
|
|||
@ -947,6 +1047,7 @@ |
|||
<label class="md-nav__link md-nav__link--active" for="__toc"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Auto Updates |
|||
|
|||
@ -959,6 +1060,7 @@ |
|||
<a href="./" class="md-nav__link md-nav__link--active"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Auto Updates |
|||
|
|||
@ -987,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"> |
|||
@ -1026,6 +1143,7 @@ |
|||
<a href="../basic-installation/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Basic Installation |
|||
|
|||
@ -1048,6 +1166,7 @@ |
|||
<a href="../caddy/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Caddy |
|||
|
|||
@ -1070,6 +1189,7 @@ |
|||
<a href="../docker-run/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Docker Run |
|||
|
|||
@ -1092,6 +1212,7 @@ |
|||
<a href="../dockerless/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Without Docker |
|||
|
|||
@ -1111,11 +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 |
|||
Podman + nftables |
|||
|
|||
</span> |
|||
|
|||
@ -1133,11 +1255,12 @@ |
|||
|
|||
|
|||
<li class="md-nav__item"> |
|||
<a href="../podman/" class="md-nav__link"> |
|||
<a href="../reverse-proxyless/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Podman |
|||
No Reverse Proxy |
|||
|
|||
</span> |
|||
|
|||
@ -1158,6 +1281,7 @@ |
|||
<a href="../traefik/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Traefik |
|||
|
|||
@ -1185,6 +1309,171 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
<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/admin/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Admin Panel |
|||
|
|||
</span> |
|||
|
|||
|
|||
</a> |
|||
</li> |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
<li class="md-nav__item"> |
|||
<a href="../../../guides/cli/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
CLI |
|||
|
|||
</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/setup/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Setup |
|||
|
|||
</span> |
|||
|
|||
|
|||
</a> |
|||
</li> |
|||
|
|||
|
|||
|
|||
|
|||
</ul> |
|||
</nav> |
|||
|
|||
</li> |
|||
|
|||
|
|||
|
|||
</ul> |
|||
</nav> |
|||
</div> |
|||
@ -1216,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"> |
|||
@ -1272,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 |
|||
# [email protected] |
|||
# [email protected] |
|||
# WATCHTOWER_NOTIFICATION_EMAIL_SERVER=smtp.example.com |
|||
# [email protected] |
|||
# WATCHTOWER_NOTIFICATION_EMAIL_SERVER_PASSWORD="SuperSecurePassword" |
|||
# 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 |
|||
@ -1346,10 +1679,12 @@ sudo<span class="w"> </span>docker<span class="w"> </span>pull<span class="w"> < |
|||
</div> |
|||
|
|||
|
|||
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.tabs", "navigation.top", "navigation.expand", "navigation.instant", "content.action.edit", "content.action.view", "content.code.annotate"], "search": "../../../assets/javascripts/workers/search.f8cc74c7.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": {"provider": "mike"}}</script> |
|||
|
|||
|
|||
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.tabs", "navigation.top", "navigation.expand", "navigation.instant", "content.action.edit", "content.action.view", "content.code.annotate"], "search": "../../../assets/javascripts/workers/search.d50fe291.min.js", "tags": null, "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": {"provider": "mike"}}</script> |
|||
|
|||
|
|||
<script src="../../../assets/javascripts/bundle.c8b220af.min.js"></script> |
|||
<script src="../../../assets/javascripts/bundle.13a4f30d.min.js"></script> |
|||
|
|||
|
|||
</body> |
|||
|
@ -22,7 +22,7 @@ |
|||
|
|||
|
|||
<link rel="icon" href="../../../assets/logo/favicon.png"> |
|||
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.8"> |
|||
<meta name="generator" content="mkdocs-1.6.1, mkdocs-material-9.6.14"> |
|||
|
|||
|
|||
|
|||
@ -30,7 +30,7 @@ |
|||
|
|||
|
|||
|
|||
<link rel="stylesheet" href="../../../assets/stylesheets/main.8608ea7d.min.css"> |
|||
<link rel="stylesheet" href="../../../assets/stylesheets/main.342714a4.min.css"> |
|||
|
|||
|
|||
<link rel="stylesheet" href="../../../assets/stylesheets/palette.06af60db.min.css"> |
|||
@ -77,6 +77,11 @@ |
|||
<label class="md-overlay" for="__drawer"></label> |
|||
<div data-md-component="skip"> |
|||
|
|||
|
|||
<a href="#create-a-docker-composition-for-caddy" class="md-skip"> |
|||
Skip to content |
|||
</a> |
|||
|
|||
</div> |
|||
<div data-md-component="announce"> |
|||
|
|||
@ -148,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"> |
|||
@ -184,6 +191,7 @@ |
|||
</div> |
|||
</div> |
|||
</div> |
|||
|
|||
|
|||
|
|||
<div class="md-header__source"> |
|||
@ -216,10 +224,12 @@ |
|||
|
|||
|
|||
|
|||
|
|||
<li class="md-tabs__item"> |
|||
<a href="../../.." class="md-tabs__link"> |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
Home |
|||
@ -233,10 +243,31 @@ |
|||
|
|||
|
|||
|
|||
|
|||
<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"> |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
Getting Started |
|||
@ -250,12 +281,14 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
<li class="md-tabs__item"> |
|||
<a href="../../../advanced/api/" class="md-tabs__link"> |
|||
|
|||
|
|||
|
|||
Advanced |
|||
|
|||
</a> |
|||
@ -268,12 +301,14 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
<li class="md-tabs__item"> |
|||
<a href="../../../contributing/general/" class="md-tabs__link"> |
|||
|
|||
|
|||
|
|||
Contributing |
|||
|
|||
</a> |
|||
@ -285,6 +320,7 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
@ -293,6 +329,7 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
@ -302,6 +339,7 @@ |
|||
<a href="../adguard/" class="md-tabs__link"> |
|||
|
|||
|
|||
|
|||
Examples |
|||
|
|||
</a> |
|||
@ -313,6 +351,26 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
<li class="md-tabs__item"> |
|||
<a href="../../../guides/2fa/" class="md-tabs__link"> |
|||
|
|||
|
|||
|
|||
Guides |
|||
|
|||
</a> |
|||
</li> |
|||
|
|||
|
|||
|
|||
|
|||
</ul> |
|||
</div> |
|||
</nav> |
|||
@ -367,6 +425,7 @@ |
|||
<a href="../../.." class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Home |
|||
|
|||
@ -384,10 +443,33 @@ |
|||
|
|||
|
|||
|
|||
<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"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Getting Started |
|||
|
|||
@ -408,6 +490,7 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
@ -418,12 +501,13 @@ |
|||
|
|||
|
|||
|
|||
<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"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Advanced |
|||
|
|||
@ -433,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> |
|||
@ -450,6 +534,7 @@ |
|||
<a href="../../../advanced/api/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
API |
|||
|
|||
@ -471,6 +556,7 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
@ -481,12 +567,13 @@ |
|||
|
|||
|
|||
|
|||
<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"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Config |
|||
|
|||
@ -496,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> |
|||
@ -513,6 +600,7 @@ |
|||
<a href="../../../advanced/config/optional-config/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Optional Configuration |
|||
|
|||
@ -535,6 +623,7 @@ |
|||
<a href="../../../advanced/config/unattended-setup/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Unattended Setup |
|||
|
|||
@ -564,6 +653,7 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
@ -574,12 +664,13 @@ |
|||
|
|||
|
|||
|
|||
<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"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Metrics |
|||
|
|||
@ -589,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> |
|||
@ -606,6 +697,7 @@ |
|||
<a href="../../../advanced/metrics/prometheus/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Prometheus |
|||
|
|||
@ -635,6 +727,7 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
@ -645,12 +738,13 @@ |
|||
|
|||
|
|||
|
|||
<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"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Migrate |
|||
|
|||
@ -660,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> |
|||
@ -677,6 +771,7 @@ |
|||
<a href="../../../advanced/migrate/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Migrate |
|||
|
|||
@ -699,6 +794,7 @@ |
|||
<a href="../../../advanced/migrate/from-14-to-15/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Migrate from v14 to v15 |
|||
|
|||
@ -735,6 +831,7 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
@ -745,12 +842,13 @@ |
|||
|
|||
|
|||
|
|||
<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"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Contributing |
|||
|
|||
@ -760,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> |
|||
@ -777,6 +875,7 @@ |
|||
<a href="../../../contributing/general/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
General Information |
|||
|
|||
@ -799,6 +898,7 @@ |
|||
<a href="../../../contributing/issues-and-pull-requests/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Issues and Pull Requests |
|||
|
|||
@ -829,6 +929,7 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
@ -840,12 +941,13 @@ |
|||
|
|||
|
|||
|
|||
<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=""> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Examples |
|||
|
|||
@ -855,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> |
|||
@ -873,6 +975,7 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
@ -881,12 +984,13 @@ |
|||
|
|||
|
|||
|
|||
<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"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Tutorials |
|||
|
|||
@ -896,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> |
|||
@ -913,6 +1017,7 @@ |
|||
<a href="../adguard/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
AdGuard Home |
|||
|
|||
@ -935,6 +1040,7 @@ |
|||
<a href="../auto-updates/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Auto Updates |
|||
|
|||
@ -957,6 +1063,7 @@ |
|||
<a href="../basic-installation/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Basic Installation |
|||
|
|||
@ -983,9 +1090,23 @@ |
|||
|
|||
|
|||
|
|||
<label class="md-nav__link md-nav__link--active" for="__toc"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Caddy |
|||
|
|||
</span> |
|||
|
|||
|
|||
<span class="md-nav__icon md-icon"></span> |
|||
</label> |
|||
|
|||
<a href="./" class="md-nav__link md-nav__link--active"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Caddy |
|||
|
|||
@ -994,6 +1115,41 @@ |
|||
|
|||
</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-a-docker-composition-for-caddy" class="md-nav__link"> |
|||
<span class="md-ellipsis"> |
|||
Create a docker composition for caddy |
|||
</span> |
|||
</a> |
|||
|
|||
</li> |
|||
|
|||
<li class="md-nav__item"> |
|||
<a href="#adapt-the-docker-composition-of-wg-easy" class="md-nav__link"> |
|||
<span class="md-ellipsis"> |
|||
Adapt the docker composition of wg-easy |
|||
</span> |
|||
</a> |
|||
|
|||
</li> |
|||
|
|||
</ul> |
|||
|
|||
</nav> |
|||
|
|||
</li> |
|||
|
|||
|
|||
@ -1009,6 +1165,7 @@ |
|||
<a href="../docker-run/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Docker Run |
|||
|
|||
@ -1031,6 +1188,7 @@ |
|||
<a href="../dockerless/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Without Docker |
|||
|
|||
@ -1050,11 +1208,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 |
|||
Podman + nftables |
|||
|
|||
</span> |
|||
|
|||
@ -1072,11 +1231,12 @@ |
|||
|
|||
|
|||
<li class="md-nav__item"> |
|||
<a href="../podman/" class="md-nav__link"> |
|||
<a href="../reverse-proxyless/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Podman |
|||
No Reverse Proxy |
|||
|
|||
</span> |
|||
|
|||
@ -1097,6 +1257,7 @@ |
|||
<a href="../traefik/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Traefik |
|||
|
|||
@ -1124,6 +1285,171 @@ |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
<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/admin/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Admin Panel |
|||
|
|||
</span> |
|||
|
|||
|
|||
</a> |
|||
</li> |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
|
|||
<li class="md-nav__item"> |
|||
<a href="../../../guides/cli/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
CLI |
|||
|
|||
</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/setup/" class="md-nav__link"> |
|||
|
|||
|
|||
|
|||
<span class="md-ellipsis"> |
|||
Setup |
|||
|
|||
</span> |
|||
|
|||
|
|||
</a> |
|||
</li> |
|||
|
|||
|
|||
|
|||
|
|||
</ul> |
|||
</nav> |
|||
|
|||
</li> |
|||
|
|||
|
|||
|
|||
</ul> |
|||
</nav> |
|||
</div> |
|||
@ -1142,6 +1468,32 @@ |
|||
|
|||
|
|||
|
|||
<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-a-docker-composition-for-caddy" class="md-nav__link"> |
|||
<span class="md-ellipsis"> |
|||
Create a docker composition for caddy |
|||
</span> |
|||
</a> |
|||
|
|||
</li> |
|||
|
|||
<li class="md-nav__item"> |
|||
<a href="#adapt-the-docker-composition-of-wg-easy" class="md-nav__link"> |
|||
<span class="md-ellipsis"> |
|||
Adapt the docker composition of wg-easy |
|||
</span> |
|||
</a> |
|||
|
|||
</li> |
|||
|
|||
</ul> |
|||
|
|||
</nav> |
|||
</div> |
|||
</div> |
|||
@ -1174,7 +1526,86 @@ |
|||
|
|||
<h1>Caddy</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> |
|||
<p>We're using <a href="https://caddyserver.com/">Caddy</a> here as reserve proxy to serve <code>wg-easy</code> on <a href="https://wg-easy.example.com">https://wg-easy.example.com</a> via TLS.</p> |
|||
<h2 id="create-a-docker-composition-for-caddy"><a class="toclink" href="#create-a-docker-composition-for-caddy">Create a docker composition for <code>caddy</code></a></h2> |
|||
<div class="highlight"><pre><span></span><code>. |
|||
├── compose.yml |
|||
└── Caddyfile |
|||
|
|||
1 directory, 2 files |
|||
</code></pre></div> |
|||
<div class="highlight"><pre><span></span><code><span class="c1"># compose.yml</span> |
|||
|
|||
<span class="nt">services</span><span class="p">:</span> |
|||
<span class="w"> </span><span class="nt">caddy</span><span class="p">:</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">caddy</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">caddy:2.10.0-alpine</span> |
|||
<span class="w"> </span><span class="c1"># publish everything you deem necessary</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">'80:80/tcp'</span> |
|||
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="s">'443:443/tcp'</span> |
|||
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="s">'443:443/udp'</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">caddy</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">volumes</span><span class="p">:</span> |
|||
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="s">'./Caddyfile:/etc/caddy/Caddyfile:ro'</span> |
|||
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">config:/config</span> |
|||
<span class="w"> </span><span class="p p-Indicator">-</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">data:/data</span> |
|||
|
|||
<span class="nt">networks</span><span class="p">:</span> |
|||
<span class="w"> </span><span class="nt">caddy</span><span class="p">:</span> |
|||
<span class="w"> </span><span class="nt">name</span><span class="p">:</span><span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">caddy</span> |
|||
|
|||
<span class="nt">volumes</span><span class="p">:</span> |
|||
<span class="w"> </span><span class="nt">config</span><span class="p">:</span> |
|||
<span class="w"> </span><span class="nt">data</span><span class="p">:</span> |
|||
</code></pre></div> |
|||
<div class="highlight"><pre><span></span><code># Caddyfile |
|||
|
|||
{ |
|||
# setup your email address |
|||
email [email protected] |
|||
} |
|||
|
|||
wg-easy.example.com { |
|||
# since the container will share the network with wg-easy |
|||
# we can use the proper container name |
|||
reverse_proxy wg-easy:80 |
|||
tls internal |
|||
} |
|||
</code></pre></div> |
|||
<p>...and start it with:</p> |
|||
<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> |
|||
<h2 id="adapt-the-docker-composition-of-wg-easy"><a class="toclink" href="#adapt-the-docker-composition-of-wg-easy">Adapt the docker composition of <code>wg-easy</code></a></h2> |
|||
<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="c1"># sync container name and port according to Caddyfile</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">wg-easy</span> |
|||
<span class="w"> </span><span class="nt">environment</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">PORT=80</span> |
|||
<span class="w"> </span><span class="c1"># no need to publish the HTTP server anymore</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">"51820:51820/udp"</span> |
|||
<span class="w"> </span><span class="c1"># add to caddy network</span> |
|||
<span class="w"> </span><span class="nt">networks</span><span class="p">:</span> |
|||
<span class="w"> </span><span class="nt">caddy</span><span class="p">:</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="nt">caddy</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> |
|||
<span class="w"> </span><span class="l l-Scalar l-Scalar-Plain">...</span> |
|||
</code></pre></div> |
|||
<p>...and restart it with:</p> |
|||
<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 now access <code>wg-easy</code> at <a href="https://wg-easy.example.com">https://wg-easy.example.com</a> and start the setup.</p> |
|||
|
|||
|
|||
|
|||
@ -1235,10 +1666,12 @@ |
|||
</div> |
|||
|
|||
|
|||
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.tabs", "navigation.top", "navigation.expand", "navigation.instant", "content.action.edit", "content.action.view", "content.code.annotate"], "search": "../../../assets/javascripts/workers/search.f8cc74c7.min.js", "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": {"provider": "mike"}}</script> |
|||
|
|||
|
|||
<script id="__config" type="application/json">{"base": "../../..", "features": ["navigation.tabs", "navigation.top", "navigation.expand", "navigation.instant", "content.action.edit", "content.action.view", "content.code.annotate"], "search": "../../../assets/javascripts/workers/search.d50fe291.min.js", "tags": null, "translations": {"clipboard.copied": "Copied to clipboard", "clipboard.copy": "Copy to clipboard", "search.result.more.one": "1 more on this page", "search.result.more.other": "# more on this page", "search.result.none": "No matching documents", "search.result.one": "1 matching document", "search.result.other": "# matching documents", "search.result.placeholder": "Type to start searching", "search.result.term.missing": "Missing", "select.version": "Select version"}, "version": {"provider": "mike"}}</script> |
|||
|
|||
|
|||
<script src="../../../assets/javascripts/bundle.c8b220af.min.js"></script> |
|||
<script src="../../../assets/javascripts/bundle.13a4f30d.min.js"></script> |
|||
|
|||
|
|||
</body> |
|||
|
File diff suppressed because one or more lines are too long
File diff suppressed because it is too large
File diff suppressed because it is too large
File diff suppressed because it is too large
File diff suppressed because it is too large
File diff suppressed because it is too large
File diff suppressed because it is too large
File diff suppressed because it is too large
File diff suppressed because one or more lines are too long
Binary file not shown.
Loading…
Reference in new issue