mirror of
https://github.com/openziti/zrok.git
synced 2025-01-08 23:20:04 +01:00
deploy: 0c8ba2a404
This commit is contained in:
parent
00e613f07a
commit
9f417613ac
3
.gitignore
vendored
3
.gitignore
vendored
@ -1 +1,2 @@
|
||||
.env
|
||||
.env
|
||||
compose.override.yml
|
File diff suppressed because one or more lines are too long
1
assets/js/2e812224.68c0f545.js
Normal file
1
assets/js/2e812224.68c0f545.js
Normal file
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 +1 @@
|
||||
(()=>{"use strict";var e,t,r,a,o,b={},f={};function c(e){var t=f[e];if(void 0!==t)return t.exports;var r=f[e]={id:e,loaded:!1,exports:{}};return b[e].call(r.exports,r,r.exports,c),r.loaded=!0,r.exports}c.m=b,c.c=f,e=[],c.O=(t,r,a,o)=>{if(!r){var b=1/0;for(i=0;i<e.length;i++){r=e[i][0],a=e[i][1],o=e[i][2];for(var f=!0,n=0;n<r.length;n++)(!1&o||b>=o)&&Object.keys(c.O).every((e=>c.O[e](r[n])))?r.splice(n--,1):(f=!1,o<b&&(b=o));if(f){e.splice(i--,1);var d=a();void 0!==d&&(t=d)}}return t}o=o||0;for(var i=e.length;i>0&&e[i-1][2]>o;i--)e[i]=e[i-1];e[i]=[r,a,o]},c.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return c.d(t,{a:t}),t},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,c.t=function(e,a){if(1&a&&(e=this(e)),8&a)return e;if("object"==typeof e&&e){if(4&a&&e.__esModule)return e;if(16&a&&"function"==typeof e.then)return e}var o=Object.create(null);c.r(o);var b={};t=t||[null,r({}),r([]),r(r)];for(var f=2&a&&e;"object"==typeof f&&!~t.indexOf(f);f=r(f))Object.getOwnPropertyNames(f).forEach((t=>b[t]=()=>e[t]));return b.default=()=>e,c.d(o,b),o},c.d=(e,t)=>{for(var r in t)c.o(t,r)&&!c.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},c.f={},c.e=e=>Promise.all(Object.keys(c.f).reduce(((t,r)=>(c.f[r](e,t),t)),[])),c.u=e=>"assets/js/"+({22:"0654c903",53:"935f2afb",55:"613b9d03",76:"2e812224",108:"288b1075",161:"04b79425",176:"6272ba0e",182:"6e881e32",195:"c4f5d8e4",196:"bbbe662c",198:"50ef9c44",209:"881eafa3",212:"8ae7f3b1",218:"8d0344ba",318:"8ef4b25e",360:"34e1d3b9",364:"60d45520",402:"5b30ef33",514:"1be78505",711:"9a9d4214",732:"c015c796",817:"14eb3368",828:"48230885",838:"75b20590",848:"e6ffb4b4",889:"339d500a",900:"600b2345",905:"07d0b302",918:"17896441",920:"1a4e3797",945:"bc747cac",992:"f2348458"}[e]||e)+"."+{22:"e229c3d5",53:"0bd28c69",55:"70520b78",76:"f1e4de88",108:"1b64f613",161:"0f2ce82e",176:"80ce924b",182:"c3e442d8",195:"6798201d",196:"53fdfa2c",198:"d7719acf",209:"b2106c29",212:"0cb2d38d",218:"82e680d3",318:"6f594527",360:"cbef2106",364:"b80527ca",402:"a06b8233",426:"43a8a139",514:"e685df7d",711:"1eaae2f3",732:"67d24e4e",817:"06e63f41",828:"08a480a5",838:"da313344",848:"23b860d7",889:"f0aa2810",894:"e787cecf",900:"db82f02f",905:"cb0d3b7a",918:"59595327",920:"47055360",945:"0ba762cf",969:"ba5129f7",972:"908d7342",992:"e27de763"}[e]+".js",c.miniCssF=e=>{},c.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),c.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a={},o="website:",c.l=(e,t,r,b)=>{if(a[e])a[e].push(t);else{var f,n;if(void 0!==r)for(var d=document.getElementsByTagName("script"),i=0;i<d.length;i++){var u=d[i];if(u.getAttribute("src")==e||u.getAttribute("data-webpack")==o+r){f=u;break}}f||(n=!0,(f=document.createElement("script")).charset="utf-8",f.timeout=120,c.nc&&f.setAttribute("nonce",c.nc),f.setAttribute("data-webpack",o+r),f.src=e),a[e]=[t];var l=(t,r)=>{f.onerror=f.onload=null,clearTimeout(s);var o=a[e];if(delete a[e],f.parentNode&&f.parentNode.removeChild(f),o&&o.forEach((e=>e(r))),t)return t(r)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:f}),12e4);f.onerror=l.bind(null,f.onerror),f.onload=l.bind(null,f.onload),n&&document.head.appendChild(f)}},c.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},c.p="/",c.gca=function(e){return e={17896441:"918",48230885:"828","0654c903":"22","935f2afb":"53","613b9d03":"55","2e812224":"76","288b1075":"108","04b79425":"161","6272ba0e":"176","6e881e32":"182",c4f5d8e4:"195",bbbe662c:"196","50ef9c44":"198","881eafa3":"209","8ae7f3b1":"212","8d0344ba":"218","8ef4b25e":"318","34e1d3b9":"360","60d45520":"364","5b30ef33":"402","1be78505":"514","9a9d4214":"711",c015c796:"732","14eb3368":"817","75b20590":"838",e6ffb4b4:"848","339d500a":"889","600b2345":"900","07d0b302":"905","1a4e3797":"920",bc747cac:"945",f2348458:"992"}[e]||e,c.p+c.u(e)},(()=>{var e={303:0,532:0};c.f.j=(t,r)=>{var a=c.o(e,t)?e[t]:void 0;if(0!==a)if(a)r.push(a[2]);else if(/^(303|532)$/.test(t))e[t]=0;else{var o=new Promise(((r,o)=>a=e[t]=[r,o]));r.push(a[2]=o);var b=c.p+c.u(t),f=new Error;c.l(b,(r=>{if(c.o(e,t)&&(0!==(a=e[t])&&(e[t]=void 0),a)){var o=r&&("load"===r.type?"missing":r.type),b=r&&r.target&&r.target.src;f.message="Loading chunk "+t+" failed.\n("+o+": "+b+")",f.name="ChunkLoadError",f.type=o,f.request=b,a[1](f)}}),"chunk-"+t,t)}},c.O.j=t=>0===e[t];var t=(t,r)=>{var a,o,b=r[0],f=r[1],n=r[2],d=0;if(b.some((t=>0!==e[t]))){for(a in f)c.o(f,a)&&(c.m[a]=f[a]);if(n)var i=n(c)}for(t&&t(r);d<b.length;d++)o=b[d],c.o(e,o)&&e[o]&&e[o][0](),e[o]=0;return c.O(i)},r=self.webpackChunkwebsite=self.webpackChunkwebsite||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})()})();
|
||||
(()=>{"use strict";var e,t,r,a,o,b={},f={};function n(e){var t=f[e];if(void 0!==t)return t.exports;var r=f[e]={id:e,loaded:!1,exports:{}};return b[e].call(r.exports,r,r.exports,n),r.loaded=!0,r.exports}n.m=b,n.c=f,e=[],n.O=(t,r,a,o)=>{if(!r){var b=1/0;for(i=0;i<e.length;i++){r=e[i][0],a=e[i][1],o=e[i][2];for(var f=!0,c=0;c<r.length;c++)(!1&o||b>=o)&&Object.keys(n.O).every((e=>n.O[e](r[c])))?r.splice(c--,1):(f=!1,o<b&&(b=o));if(f){e.splice(i--,1);var d=a();void 0!==d&&(t=d)}}return t}o=o||0;for(var i=e.length;i>0&&e[i-1][2]>o;i--)e[i]=e[i-1];e[i]=[r,a,o]},n.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return n.d(t,{a:t}),t},r=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,n.t=function(e,a){if(1&a&&(e=this(e)),8&a)return e;if("object"==typeof e&&e){if(4&a&&e.__esModule)return e;if(16&a&&"function"==typeof e.then)return e}var o=Object.create(null);n.r(o);var b={};t=t||[null,r({}),r([]),r(r)];for(var f=2&a&&e;"object"==typeof f&&!~t.indexOf(f);f=r(f))Object.getOwnPropertyNames(f).forEach((t=>b[t]=()=>e[t]));return b.default=()=>e,n.d(o,b),o},n.d=(e,t)=>{for(var r in t)n.o(t,r)&&!n.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},n.f={},n.e=e=>Promise.all(Object.keys(n.f).reduce(((t,r)=>(n.f[r](e,t),t)),[])),n.u=e=>"assets/js/"+({22:"0654c903",53:"935f2afb",55:"613b9d03",76:"2e812224",108:"288b1075",161:"04b79425",176:"6272ba0e",182:"6e881e32",195:"c4f5d8e4",196:"bbbe662c",198:"50ef9c44",209:"881eafa3",212:"8ae7f3b1",218:"8d0344ba",318:"8ef4b25e",360:"34e1d3b9",364:"60d45520",402:"5b30ef33",514:"1be78505",711:"9a9d4214",732:"c015c796",817:"14eb3368",828:"48230885",838:"75b20590",848:"e6ffb4b4",889:"339d500a",900:"600b2345",905:"07d0b302",918:"17896441",920:"1a4e3797",945:"bc747cac",992:"f2348458"}[e]||e)+"."+{22:"e229c3d5",53:"0e5281be",55:"70520b78",76:"68c0f545",108:"1b64f613",161:"0f2ce82e",176:"80ce924b",182:"c3e442d8",195:"6798201d",196:"f57c0c1b",198:"d7719acf",209:"b2106c29",212:"0cb2d38d",218:"82e680d3",318:"6f594527",360:"cbef2106",364:"b80527ca",402:"a06b8233",426:"43a8a139",514:"e685df7d",711:"1eaae2f3",732:"67d24e4e",817:"06e63f41",828:"08a480a5",838:"da313344",848:"23b860d7",889:"f0aa2810",894:"e787cecf",900:"db82f02f",905:"cb0d3b7a",918:"59595327",920:"47055360",945:"0ba762cf",969:"ba5129f7",972:"908d7342",992:"e27de763"}[e]+".js",n.miniCssF=e=>{},n.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(e){if("object"==typeof window)return window}}(),n.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),a={},o="website:",n.l=(e,t,r,b)=>{if(a[e])a[e].push(t);else{var f,c;if(void 0!==r)for(var d=document.getElementsByTagName("script"),i=0;i<d.length;i++){var u=d[i];if(u.getAttribute("src")==e||u.getAttribute("data-webpack")==o+r){f=u;break}}f||(c=!0,(f=document.createElement("script")).charset="utf-8",f.timeout=120,n.nc&&f.setAttribute("nonce",n.nc),f.setAttribute("data-webpack",o+r),f.src=e),a[e]=[t];var l=(t,r)=>{f.onerror=f.onload=null,clearTimeout(s);var o=a[e];if(delete a[e],f.parentNode&&f.parentNode.removeChild(f),o&&o.forEach((e=>e(r))),t)return t(r)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:f}),12e4);f.onerror=l.bind(null,f.onerror),f.onload=l.bind(null,f.onload),c&&document.head.appendChild(f)}},n.r=e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.p="/",n.gca=function(e){return e={17896441:"918",48230885:"828","0654c903":"22","935f2afb":"53","613b9d03":"55","2e812224":"76","288b1075":"108","04b79425":"161","6272ba0e":"176","6e881e32":"182",c4f5d8e4:"195",bbbe662c:"196","50ef9c44":"198","881eafa3":"209","8ae7f3b1":"212","8d0344ba":"218","8ef4b25e":"318","34e1d3b9":"360","60d45520":"364","5b30ef33":"402","1be78505":"514","9a9d4214":"711",c015c796:"732","14eb3368":"817","75b20590":"838",e6ffb4b4:"848","339d500a":"889","600b2345":"900","07d0b302":"905","1a4e3797":"920",bc747cac:"945",f2348458:"992"}[e]||e,n.p+n.u(e)},(()=>{var e={303:0,532:0};n.f.j=(t,r)=>{var a=n.o(e,t)?e[t]:void 0;if(0!==a)if(a)r.push(a[2]);else if(/^(303|532)$/.test(t))e[t]=0;else{var o=new Promise(((r,o)=>a=e[t]=[r,o]));r.push(a[2]=o);var b=n.p+n.u(t),f=new Error;n.l(b,(r=>{if(n.o(e,t)&&(0!==(a=e[t])&&(e[t]=void 0),a)){var o=r&&("load"===r.type?"missing":r.type),b=r&&r.target&&r.target.src;f.message="Loading chunk "+t+" failed.\n("+o+": "+b+")",f.name="ChunkLoadError",f.type=o,f.request=b,a[1](f)}}),"chunk-"+t,t)}},n.O.j=t=>0===e[t];var t=(t,r)=>{var a,o,b=r[0],f=r[1],c=r[2],d=0;if(b.some((t=>0!==e[t]))){for(a in f)n.o(f,a)&&(n.m[a]=f[a]);if(c)var i=c(n)}for(t&&t(r);d<b.length;d++)o=b[d],n.o(e,o)&&e[o]&&e[o][0](),e[o]=0;return n.O(i)},r=self.webpackChunkwebsite=self.webpackChunkwebsite||[];r.forEach(t.bind(null,0)),r.push=t.bind(null,r.push.bind(r))})()})();
|
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
@ -9,8 +9,8 @@
|
||||
<script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","G-V2KMEXWJ10",{anonymize_ip:!0})</script>
|
||||
|
||||
|
||||
<link rel="search" type="application/opensearchdescription+xml" title="Zrok" href="/opensearch.xml"><link rel="stylesheet" href="/assets/css/styles.80b840c1.css">
|
||||
<link rel="preload" href="/assets/js/runtime~main.0fdfd4f1.js" as="script">
|
||||
<link rel="search" type="application/opensearchdescription+xml" title="Zrok" href="/opensearch.xml"><link rel="stylesheet" href="/assets/css/styles.79588027.css">
|
||||
<link rel="preload" href="/assets/js/runtime~main.bf7971cb.js" as="script">
|
||||
<link rel="preload" href="/assets/js/main.64a011f7.js" as="script">
|
||||
</head>
|
||||
<body class="navigation-with-keyboard">
|
||||
@ -19,7 +19,7 @@
|
||||
also freely available as open source software hosted by GitHub under a very permissive Apache v2 license.</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="managed-service">Managed Service<a href="#managed-service" class="hash-link" aria-label="Direct link to Managed Service" title="Direct link to Managed Service"></a></h2><p><code>zrok</code> is also offered as a cloud service, making it instantly accessible to a large population immediately.
|
||||
NetFoundry provides a manged version of <code>zrok</code> at <a href="https://zrok.io." target="_blank" rel="noopener noreferrer">https://zrok.io.</a> This provides the easy-to-use,
|
||||
quick to demonstrate features of <code>zrok</code> without needing to deploy and host <code>zrok</code> yourself.</p></div><footer class="theme-doc-footer docusaurus-mt-lg"><div class="theme-doc-footer-edit-meta-row row"><div class="col"><a href="https://github.com/openziti/zrok/blob/main/docs/../docs/concepts/hosting.md" target="_blank" rel="noreferrer noopener" class="theme-edit-this-page"><svg fill="currentColor" height="20" width="20" viewBox="0 0 40 40" class="iconEdit_Z9Sw" aria-hidden="true"><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"></path></g></svg>Edit this page</a></div><div class="col lastUpdated_vwxv"></div></div></footer></article><nav class="pagination-nav docusaurus-mt-lg" aria-label="Docs pages"><a class="pagination-nav__link pagination-nav__link--prev" href="/docs/concepts/opensource/"><div class="pagination-nav__sublabel">Previous</div><div class="pagination-nav__label">Open Source</div></a><a class="pagination-nav__link pagination-nav__link--next" href="/docs/category/guides/"><div class="pagination-nav__sublabel">Next</div><div class="pagination-nav__label">Guides</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_bqdL thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href="#self-hosted" class="table-of-contents__link toc-highlight">Self-Hosted</a></li><li><a href="#managed-service" class="table-of-contents__link toc-highlight">Managed Service</a></li></ul></div></div></div></div></main></div></div><footer class="footer footer--dark"><div class="container container-fluid"><div class="footer__bottom text--center"><div class="footer__copyright">Copyright © 2023 NetFoundry Inc. Built with Docusaurus.</div></div></div></footer></div>
|
||||
<script src="/assets/js/runtime~main.0fdfd4f1.js"></script>
|
||||
<script src="/assets/js/runtime~main.bf7971cb.js"></script>
|
||||
<script src="/assets/js/main.64a011f7.js"></script>
|
||||
</body>
|
||||
</html>
|
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@ -9,8 +9,8 @@
|
||||
<script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","G-V2KMEXWJ10",{anonymize_ip:!0})</script>
|
||||
|
||||
|
||||
<link rel="search" type="application/opensearchdescription+xml" title="Zrok" href="/opensearch.xml"><link rel="stylesheet" href="/assets/css/styles.80b840c1.css">
|
||||
<link rel="preload" href="/assets/js/runtime~main.0fdfd4f1.js" as="script">
|
||||
<link rel="search" type="application/opensearchdescription+xml" title="Zrok" href="/opensearch.xml"><link rel="stylesheet" href="/assets/css/styles.79588027.css">
|
||||
<link rel="preload" href="/assets/js/runtime~main.bf7971cb.js" as="script">
|
||||
<link rel="preload" href="/assets/js/main.64a011f7.js" as="script">
|
||||
</head>
|
||||
<body class="navigation-with-keyboard">
|
||||
@ -21,7 +21,7 @@ you want to help spread the word of <code>zrok</code> give the project a star. I
|
||||
project.</p><p>The project also uses a very permissive license: Apache v2. We encourage people to fork the repo and use <code>zrok</code> for your own purposes how you see fit or contribute back to the project.</p><h2 class="anchor anchorWithStickyNavbar_LWe7" id="built-on-openziti">Built on OpenZiti<a href="#built-on-openziti" class="hash-link" aria-label="Direct link to Built on OpenZiti" title="Direct link to Built on OpenZiti"></a></h2><p>The power of <code>zrok</code> really lies in <code>private</code> sharing. It's increasingly clear that security needs to be a first-class
|
||||
member of any organization. To enable <code>private</code> sharing, <code>zrok</code> was built on top of another excellent open source project named OpenZiti. </p><p>OpenZiti is a secure overlay network focusing on bringing zero trust to applications. It is the <strong>backbone</strong> of <code>zrok</code>.
|
||||
In fact, <code>zrok</code> proudly proclaims itself as an Ziti <em>native</em> application.</p><p>If you are interested in learning more about OpenZiti head over to <a href="https://docs.openziti.io/docs/learn/introduction/" target="_blank" rel="noopener noreferrer">the docs</a>, try the quickstart, and don't forget to star that project too. We couldn't build <code>zrok</code> without OpenZiti!</p></div><footer class="theme-doc-footer docusaurus-mt-lg"><div class="theme-doc-footer-edit-meta-row row"><div class="col"><a href="https://github.com/openziti/zrok/blob/main/docs/../docs/concepts/opensource.md" target="_blank" rel="noreferrer noopener" class="theme-edit-this-page"><svg fill="currentColor" height="20" width="20" viewBox="0 0 40 40" class="iconEdit_Z9Sw" aria-hidden="true"><g><path d="m34.5 11.7l-3 3.1-6.3-6.3 3.1-3q0.5-0.5 1.2-0.5t1.1 0.5l3.9 3.9q0.5 0.4 0.5 1.1t-0.5 1.2z m-29.5 17.1l18.4-18.5 6.3 6.3-18.4 18.4h-6.3v-6.2z"></path></g></svg>Edit this page</a></div><div class="col lastUpdated_vwxv"></div></div></footer></article><nav class="pagination-nav docusaurus-mt-lg" aria-label="Docs pages"><a class="pagination-nav__link pagination-nav__link--prev" href="/docs/concepts/files/"><div class="pagination-nav__sublabel">Previous</div><div class="pagination-nav__label">Sharing Websites and Files</div></a><a class="pagination-nav__link pagination-nav__link--next" href="/docs/concepts/hosting/"><div class="pagination-nav__sublabel">Next</div><div class="pagination-nav__label">Hosting</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_bqdL thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href="#built-on-openziti" class="table-of-contents__link toc-highlight">Built on OpenZiti</a></li></ul></div></div></div></div></main></div></div><footer class="footer footer--dark"><div class="container container-fluid"><div class="footer__bottom text--center"><div class="footer__copyright">Copyright © 2023 NetFoundry Inc. Built with Docusaurus.</div></div></div></footer></div>
|
||||
<script src="/assets/js/runtime~main.0fdfd4f1.js"></script>
|
||||
<script src="/assets/js/runtime~main.bf7971cb.js"></script>
|
||||
<script src="/assets/js/main.64a011f7.js"></script>
|
||||
</body>
|
||||
</html>
|
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
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
@ -9,14 +9,14 @@
|
||||
<script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","G-V2KMEXWJ10",{anonymize_ip:!0})</script>
|
||||
|
||||
|
||||
<link rel="search" type="application/opensearchdescription+xml" title="Zrok" href="/opensearch.xml"><link rel="stylesheet" href="/assets/css/styles.80b840c1.css">
|
||||
<link rel="preload" href="/assets/js/runtime~main.0fdfd4f1.js" as="script">
|
||||
<link rel="search" type="application/opensearchdescription+xml" title="Zrok" href="/opensearch.xml"><link rel="stylesheet" href="/assets/css/styles.79588027.css">
|
||||
<link rel="preload" href="/assets/js/runtime~main.bf7971cb.js" as="script">
|
||||
<link rel="preload" href="/assets/js/main.64a011f7.js" as="script">
|
||||
</head>
|
||||
<body class="navigation-with-keyboard">
|
||||
<script>!function(){function t(t){document.documentElement.setAttribute("data-theme",t)}var e=function(){var t=null;try{t=new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}return t}()||function(){var t=null;try{t=localStorage.getItem("theme")}catch(t){}return t}();t(null!==e?e:"dark")}()</script><div id="__docusaurus">
|
||||
<div id="__docusaurus-base-url-issue-banner-container"></div></div>
|
||||
<script src="/assets/js/runtime~main.0fdfd4f1.js"></script>
|
||||
<script src="/assets/js/runtime~main.bf7971cb.js"></script>
|
||||
<script src="/assets/js/main.64a011f7.js"></script>
|
||||
</body>
|
||||
</html>
|
File diff suppressed because one or more lines are too long
@ -1,37 +1,37 @@
|
||||
version: '3'
|
||||
services:
|
||||
zrok-enable-init:
|
||||
zrok-init:
|
||||
image: busybox
|
||||
# matches uid:gid of "nobody" in zrok container image
|
||||
command: chown -Rc 65534:65534 /mnt/.zrok
|
||||
user: root
|
||||
volumes:
|
||||
- zrok_env:/mnt/.zrok
|
||||
|
||||
zrok-enable:
|
||||
image: docker.io/openziti/zrok
|
||||
image: ${ZROK_CONTAINER_IMAGE:-docker.io/openziti/zrok}
|
||||
depends_on:
|
||||
zrok-enable-init:
|
||||
zrok-init:
|
||||
condition: service_completed_successfully
|
||||
entrypoint:
|
||||
- bash
|
||||
- -c
|
||||
- -euc
|
||||
- |
|
||||
if [[ -s /mnt/.zrok/environment.json ]]; then
|
||||
echo "INFO: noop: zrok environment is already enabled"
|
||||
if [[ -n "$(jq '.ziti_identity' ~/.zrok/environment.json 2>/dev/null)" ]]; then
|
||||
echo "INFO: zrok environment is already enabled"
|
||||
exit 0
|
||||
else
|
||||
zrok config set apiEndpoint ${ZROK_API_ENDPOINT:-https://api.zrok.io}
|
||||
echo "INFO: running: zrok $$(sed -E "s/${ZROK_ENABLE_TOKEN}/************/" <<< $${@})"
|
||||
exec zrok $${@}
|
||||
exec zrok "$${@}"
|
||||
fi
|
||||
command: -- enable --headless ${ZROK_ENABLE_TOKEN}
|
||||
command: -- enable --headless --description "${ZROK_ENVIRONMENT_NAME:-docker private access}" ${ZROK_ENABLE_TOKEN}
|
||||
volumes:
|
||||
- zrok_env:/mnt/.zrok
|
||||
environment:
|
||||
HOME: /mnt
|
||||
ZROK_ENABLE_TOKEN:
|
||||
ZROK_API_ENDPOINT: ${ZROK_API_ENDPOINT:-https://api.zrok.io/}
|
||||
zrok-private-access:
|
||||
image: docker.io/openziti/zrok
|
||||
|
||||
zrok-access:
|
||||
image: ${ZROK_CONTAINER_IMAGE:-docker.io/openziti/zrok}
|
||||
command: access private --headless --bind 0.0.0.0:9191 ${ZROK_ACCESS_TOKEN}
|
||||
depends_on:
|
||||
zrok-enable:
|
||||
@ -43,12 +43,11 @@ services:
|
||||
environment:
|
||||
HOME: /mnt
|
||||
PFXLOG_NO_JSON: "true"
|
||||
ZROK_ACCESS_TOKEN:
|
||||
|
||||
# alternatively, access the zrok private access proxy from another container
|
||||
demo-client:
|
||||
depends_on:
|
||||
- zrok-private-access
|
||||
- zrok-access
|
||||
image: busybox
|
||||
entrypoint:
|
||||
- sh
|
||||
@ -56,7 +55,7 @@ services:
|
||||
- |
|
||||
while true; do
|
||||
echo 'INFO: trying wget';
|
||||
wget -q -O - http://zrok-private-access:9191/ip;
|
||||
wget -q -O - http://zrok-access:9191/ip;
|
||||
sleep 3;
|
||||
done
|
||||
|
@ -1,38 +1,38 @@
|
||||
version: '3'
|
||||
services:
|
||||
zrok-enable-init:
|
||||
zrok-init:
|
||||
image: busybox
|
||||
# matches uid:gid of "nobody" in zrok container image
|
||||
command: chown -Rc 65534:65534 /mnt/.zrok
|
||||
user: root
|
||||
volumes:
|
||||
- zrok_env:/mnt/.zrok
|
||||
|
||||
zrok-enable:
|
||||
image: docker.io/openziti/zrok
|
||||
image: ${ZROK_CONTAINER_IMAGE:-docker.io/openziti/zrok}
|
||||
depends_on:
|
||||
zrok-enable-init:
|
||||
zrok-init:
|
||||
condition: service_completed_successfully
|
||||
entrypoint:
|
||||
- bash
|
||||
- -c
|
||||
- -euc
|
||||
- |
|
||||
if [[ -s /mnt/.zrok/environment.json ]]; then
|
||||
echo "INFO: noop: zrok environment is already enabled"
|
||||
if [[ -n "$(jq '.ziti_identity' ~/.zrok/environment.json 2>/dev/null)" ]]; then
|
||||
echo "INFO: zrok environment is already enabled"
|
||||
exit 0
|
||||
else
|
||||
zrok config set apiEndpoint ${ZROK_API_ENDPOINT:-https://api.zrok.io}
|
||||
echo "INFO: running: zrok $$(sed -E "s/${ZROK_ENABLE_TOKEN}/************/" <<< $${@})"
|
||||
exec zrok $${@}
|
||||
exec zrok "$${@}"
|
||||
fi
|
||||
command: -- enable --headless ${ZROK_ENABLE_TOKEN}
|
||||
command: -- enable --headless --description "${ZROK_ENVIRONMENT_NAME:-docker private share}" ${ZROK_ENABLE_TOKEN}
|
||||
volumes:
|
||||
- zrok_env:/mnt/.zrok
|
||||
environment:
|
||||
HOME: /mnt
|
||||
ZROK_ENABLE_TOKEN:
|
||||
ZROK_API_ENDPOINT: ${ZROK_API_ENDPOINT:-https://api.zrok.io/}
|
||||
zrok-private-share:
|
||||
image: docker.io/openziti/zrok
|
||||
command: share private --headless http://zrok-test:9090
|
||||
|
||||
zrok-share:
|
||||
image: ${ZROK_CONTAINER_IMAGE:-docker.io/openziti/zrok}
|
||||
command: share private --headless --backend-mode proxy ${ZROK_BACKEND:-http://zrok-test:9090/}
|
||||
depends_on:
|
||||
zrok-enable:
|
||||
condition: service_completed_successfully
|
||||
@ -44,10 +44,8 @@ services:
|
||||
|
||||
# demo servers you can share with zrok
|
||||
zrok-test:
|
||||
image: docker.io/openziti/zrok
|
||||
image: ${ZROK_CONTAINER_IMAGE:-docker.io/openziti/zrok}
|
||||
command: test endpoint --address 0.0.0.0 # 9090
|
||||
httpbin-test:
|
||||
image: mccutchen/go-httpbin # 8080/tcp
|
||||
|
||||
volumes:
|
||||
zrok_env:
|
173
zrok-public-reserved/compose.yml
Normal file
173
zrok-public-reserved/compose.yml
Normal file
@ -0,0 +1,173 @@
|
||||
services:
|
||||
# create Caddyfile
|
||||
zrok-caddyfile:
|
||||
image: busybox
|
||||
# create Caddyfile
|
||||
entrypoint:
|
||||
- sh
|
||||
- -euc
|
||||
- |
|
||||
ZROK_UPSTREAM_URL="${ZROK_BACKEND:-http://zrok-test:9090}"
|
||||
ZROK_UPSTREAM_HOST="$(echo $${ZROK_UPSTREAM_URL}|sed -E 's#^https?://([^/:]+).*#\1#')"
|
||||
mkdir -p /mnt/.zrok
|
||||
cat <<CADDYFILE >| /mnt/.zrok/Caddyfile
|
||||
{
|
||||
# GET /config/ and POST /load on this API to reload Caddy config
|
||||
admin 0.0.0.0:2019
|
||||
}
|
||||
http:// {
|
||||
bind {{ .ZrokBindAddress }}
|
||||
handle_path /zrok-test/* {
|
||||
reverse_proxy http://zrok-test:9090 {
|
||||
header_up Host zrok-test
|
||||
}
|
||||
}
|
||||
handle_path /zrok-static/* {
|
||||
root * /mnt/.zrok/html
|
||||
file_server browse
|
||||
}
|
||||
reverse_proxy /* $${ZROK_UPSTREAM_URL} {
|
||||
header_up Host $${ZROK_UPSTREAM_HOST}
|
||||
}
|
||||
}
|
||||
CADDYFILE
|
||||
user: root
|
||||
volumes:
|
||||
- zrok_env:/mnt
|
||||
|
||||
# set file ownership
|
||||
zrok-init:
|
||||
image: busybox
|
||||
depends_on:
|
||||
zrok-caddyfile:
|
||||
condition: service_completed_successfully
|
||||
# matches uid:gid of "nobody" in zrok container image
|
||||
command: chown -Rc 65534:65534 /mnt/
|
||||
user: root
|
||||
volumes:
|
||||
- zrok_env:/mnt
|
||||
|
||||
# enable zrok environment
|
||||
zrok-enable:
|
||||
image: ${ZROK_CONTAINER_IMAGE:-docker.io/openziti/zrok}
|
||||
depends_on:
|
||||
zrok-init:
|
||||
condition: service_completed_successfully
|
||||
entrypoint:
|
||||
- bash
|
||||
- -euc
|
||||
- |
|
||||
if [[ -s ~/.zrok/environment.json ]]; then
|
||||
ZITI_ID="$(jq '.ziti_identity' ~/.zrok/environment.json 2>/dev/null)"
|
||||
if [[ -z "$${ZITI_ID}" || "$${ZITI_ID}" == null ]]; then
|
||||
echo "ERROR: invalid environment; consider a reset with 'docker compose down --volumes'" >&2
|
||||
exit 1
|
||||
else
|
||||
echo "INFO: zrok environment is already enabled"
|
||||
exit 0
|
||||
fi
|
||||
else
|
||||
if [[ -z "${ZROK_ENABLE_TOKEN}" ]]; then
|
||||
echo "ERROR: ZROK_ENABLE_TOKEN is not defined" >&2
|
||||
exit 1
|
||||
else
|
||||
zrok config set apiEndpoint ${ZROK_API_ENDPOINT:-https://api.zrok.io}
|
||||
echo "INFO: running: zrok $(sed -E "s/${ZROK_ENABLE_TOKEN}/************/" <<< $${@})"
|
||||
exec zrok "$${@}"
|
||||
fi
|
||||
fi
|
||||
command: -- enable --headless --description "${ZROK_ENVIRONMENT_NAME:-docker reserved public share}" ${ZROK_ENABLE_TOKEN}
|
||||
volumes:
|
||||
- zrok_env:/mnt
|
||||
environment:
|
||||
HOME: /mnt
|
||||
|
||||
# reserve zrok frontend url for the zrok backend config
|
||||
zrok-reserve:
|
||||
image: ${ZROK_CONTAINER_IMAGE:-docker.io/openziti/zrok}
|
||||
entrypoint:
|
||||
- bash
|
||||
- -euc
|
||||
- |
|
||||
if [[ -s ~/.zrok/reserved.json ]]; then
|
||||
ZROK_RESERVE_TOKEN="$(jq '.token' ~/.zrok/reserved.json 2>/dev/null)"
|
||||
if [[ -z "$${ZROK_RESERVE_TOKEN}" || "$${ZROK_RESERVE_TOKEN}" == null ]]; then
|
||||
echo "ERROR: invalid reserved.json: $(jq -c . ~/.zrok/reserved.json)" >&2
|
||||
exit 1
|
||||
else
|
||||
echo "INFO: zrok backend is already reserved: $${ZROK_RESERVE_TOKEN}"
|
||||
exit 0
|
||||
fi
|
||||
else
|
||||
set -o pipefail
|
||||
ZROK_CMD="reserve public --json-output"
|
||||
if [[ -n "${ZROK_SHARE_OPTS:-}" ]]; then
|
||||
ZROK_CMD+=" ${ZROK_SHARE_OPTS}"
|
||||
fi
|
||||
if [[ -n "${ZROK_OAUTH_PROVIDER:-}" ]]; then
|
||||
ZROK_CMD+=" --oauth-provider ${ZROK_OAUTH_PROVIDER}"
|
||||
fi
|
||||
if [[ -n "${ZROK_BACKEND_MODE:-}" && "${ZROK_BACKEND_MODE}" != caddy ]]; then
|
||||
ZROK_CMD+=" --backend-mode ${ZROK_BACKEND_MODE} ${ZROK_BACKEND:-http://zrok-test:9090}"
|
||||
else
|
||||
ZROK_CMD+=" --backend-mode caddy /mnt/.zrok/Caddyfile"
|
||||
fi
|
||||
echo "INFO: running: zrok $${ZROK_CMD}"
|
||||
zrok $${ZROK_CMD} | jq -rc | tee ~/.zrok/reserved.json
|
||||
fi
|
||||
depends_on:
|
||||
zrok-enable:
|
||||
condition: service_completed_successfully
|
||||
volumes:
|
||||
- zrok_env:/mnt
|
||||
environment:
|
||||
HOME: /mnt
|
||||
|
||||
# start share on reserved public frontend url
|
||||
zrok-share:
|
||||
image: ${ZROK_CONTAINER_IMAGE:-docker.io/openziti/zrok}
|
||||
entrypoint:
|
||||
- bash
|
||||
- -euc
|
||||
- |
|
||||
if ! [[ -s ~/.zrok/reserved.json ]]; then
|
||||
echo "ERROR: empty or missing reserved.json" >&2
|
||||
exit 1
|
||||
else
|
||||
ZROK_PUBLIC_URLS=$(jq -cr '.frontend_endpoints' ~/.zrok/reserved.json 2>/dev/null)
|
||||
if [[ -z "$${ZROK_PUBLIC_URLS}" || "$${ZROK_PUBLIC_URLS}" == null ]]; then
|
||||
echo "ERROR: frontend endpoints not defined" >&2
|
||||
exit 1
|
||||
else
|
||||
echo "INFO: zrok public URLs: $${ZROK_PUBLIC_URLS}"
|
||||
fi
|
||||
ZROK_RESERVE_TOKEN=$(jq -r '.token' ~/.zrok/reserved.json 2>/dev/null)
|
||||
if [[ -z "$${ZROK_RESERVE_TOKEN}" && "$${ZROK_RESERVE_TOKEN}" == null ]]; then
|
||||
echo "ERROR: zrok reservation token not defined" >&2
|
||||
exit 1
|
||||
else
|
||||
echo "INFO: zrok reservation token: $${ZROK_RESERVE_TOKEN}"
|
||||
fi
|
||||
|
||||
echo "INFO: running: zrok $${@} $${ZROK_RESERVE_TOKEN}"
|
||||
exec zrok "$${@}" $${ZROK_RESERVE_TOKEN}
|
||||
fi
|
||||
command: -- share reserved --headless
|
||||
depends_on:
|
||||
zrok-reserve:
|
||||
condition: service_completed_successfully
|
||||
volumes:
|
||||
- zrok_env:/mnt
|
||||
ports:
|
||||
- 127.0.0.1:2019:2019
|
||||
environment:
|
||||
HOME: /mnt
|
||||
PFXLOG_NO_JSON: "true"
|
||||
|
||||
# demo server
|
||||
zrok-test:
|
||||
image: ${ZROK_CONTAINER_IMAGE:-docker.io/openziti/zrok}
|
||||
command: test endpoint --address 0.0.0.0 # 9090
|
||||
|
||||
volumes:
|
||||
zrok_env:
|
69
zrok-public-share/compose.yml
Normal file
69
zrok-public-share/compose.yml
Normal file
@ -0,0 +1,69 @@
|
||||
services:
|
||||
|
||||
# set file ownership
|
||||
zrok-init:
|
||||
image: busybox
|
||||
# matches uid:gid of "nobody" in zrok container image
|
||||
command: chown -Rc 65534:65534 /mnt/.zrok
|
||||
user: root
|
||||
volumes:
|
||||
- zrok_env:/mnt/.zrok
|
||||
|
||||
# enable zrok environment
|
||||
zrok-enable:
|
||||
image: ${ZROK_CONTAINER_IMAGE:-docker.io/openziti/zrok}
|
||||
depends_on:
|
||||
zrok-init:
|
||||
condition: service_completed_successfully
|
||||
entrypoint:
|
||||
- bash
|
||||
- -euc
|
||||
- |
|
||||
if [[ -n "$(jq '.ziti_identity' ~/.zrok/environment.json 2>/dev/null)" ]]; then
|
||||
echo "INFO: zrok environment is already enabled"
|
||||
exit 0
|
||||
else
|
||||
zrok config set apiEndpoint ${ZROK_API_ENDPOINT:-https://api.zrok.io}
|
||||
echo "INFO: running: zrok $$(sed -E "s/${ZROK_ENABLE_TOKEN}/************/" <<< $${@})"
|
||||
exec zrok "$${@}"
|
||||
fi
|
||||
command: -- enable --headless --description "${ZROK_ENVIRONMENT_NAME:-docker temp public share}" ${ZROK_ENABLE_TOKEN}
|
||||
volumes:
|
||||
- zrok_env:/mnt/.zrok
|
||||
environment:
|
||||
HOME: /mnt
|
||||
|
||||
# start share on temporary public frontend url
|
||||
zrok-share:
|
||||
image: ${ZROK_CONTAINER_IMAGE:-docker.io/openziti/zrok}
|
||||
entrypoint:
|
||||
- bash
|
||||
- -euc
|
||||
- |
|
||||
set -o pipefail
|
||||
ZROK_CMD="share public --headless"
|
||||
if [[ -n "${ZROK_SHARE_OPTS:-}" ]]; then
|
||||
ZROK_CMD+=" ${ZROK_SHARE_OPTS}"
|
||||
fi
|
||||
if [[ -n "${ZROK_OAUTH_PROVIDER:-}" ]]; then
|
||||
ZROK_CMD+=" --oauth-provider ${ZROK_OAUTH_PROVIDER}"
|
||||
fi
|
||||
ZROK_CMD+=" --backend-mode proxy ${ZROK_BACKEND:-http://zrok-test:9090/}"
|
||||
echo "INFO: running: zrok $${ZROK_CMD}"
|
||||
exec zrok $${ZROK_CMD}
|
||||
depends_on:
|
||||
zrok-enable:
|
||||
condition: service_completed_successfully
|
||||
volumes:
|
||||
- zrok_env:/mnt/.zrok
|
||||
environment:
|
||||
HOME: /mnt
|
||||
PFXLOG_NO_JSON: "true"
|
||||
|
||||
# demo servers you can share with zrok
|
||||
zrok-test:
|
||||
image: ${ZROK_CONTAINER_IMAGE:-docker.io/openziti/zrok}
|
||||
command: test endpoint --address 0.0.0.0 # 9090
|
||||
|
||||
volumes:
|
||||
zrok_env:
|
@ -1,53 +0,0 @@
|
||||
version: '3'
|
||||
services:
|
||||
zrok-enable-init:
|
||||
image: busybox
|
||||
# matches uid:gid of "nobody" in zrok container image
|
||||
command: chown -Rc 65534:65534 /mnt/.zrok
|
||||
user: root
|
||||
volumes:
|
||||
- zrok_env:/mnt/.zrok
|
||||
zrok-enable:
|
||||
image: docker.io/openziti/zrok
|
||||
depends_on:
|
||||
zrok-enable-init:
|
||||
condition: service_completed_successfully
|
||||
entrypoint:
|
||||
- bash
|
||||
- -c
|
||||
- |
|
||||
if [[ -s /mnt/.zrok/environment.json ]]; then
|
||||
echo "INFO: noop: zrok environment is already enabled"
|
||||
exit 0
|
||||
else
|
||||
echo "INFO: running: zrok $$(sed -E "s/${ZROK_ENABLE_TOKEN}/************/" <<< $${@})"
|
||||
exec zrok $${@}
|
||||
fi
|
||||
command: -- enable --headless ${ZROK_ENABLE_TOKEN}
|
||||
volumes:
|
||||
- zrok_env:/mnt/.zrok
|
||||
environment:
|
||||
HOME: /mnt
|
||||
ZROK_ENABLE_TOKEN:
|
||||
ZROK_API_ENDPOINT: ${ZROK_API_ENDPOINT:-https://api.zrok.io/}
|
||||
zrok-public-share:
|
||||
image: docker.io/openziti/zrok
|
||||
command: share public --headless http://zrok-test:9090
|
||||
depends_on:
|
||||
zrok-enable:
|
||||
condition: service_completed_successfully
|
||||
volumes:
|
||||
- zrok_env:/mnt/.zrok
|
||||
environment:
|
||||
HOME: /mnt
|
||||
PFXLOG_NO_JSON: "true"
|
||||
|
||||
# demo servers you can share with zrok
|
||||
zrok-test:
|
||||
image: docker.io/openziti/zrok
|
||||
command: test endpoint --address 0.0.0.0 # 9090
|
||||
httpbin-test:
|
||||
image: mccutchen/go-httpbin # 8080/tcp
|
||||
|
||||
volumes:
|
||||
zrok_env:
|
Loading…
Reference in New Issue
Block a user