Test
This commit is contained in:
@@ -1,7 +1,211 @@
|
|||||||
<!doctype html><html lang=en dir=auto data-theme=auto><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>404 Page not found | Ask KennyB</title><meta name=keywords content><meta name=description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta name=author content="Kenny Bondelie"><link rel=canonical href=https://askkennyb.com/404.html><link crossorigin=anonymous href=/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as=style><link rel=icon href=https://askkennyb.com/favicon.ico><link rel=icon type=image/png sizes=16x16 href=https://askkennyb.com/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=https://askkennyb.com/favicon-32x32.png><link rel=apple-touch-icon href=https://askkennyb.com/apple-touch-icon.png><link rel=mask-icon href=https://askkennyb.com/safari-pinned-tab.svg><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate hreflang=en href=https://askkennyb.com/404.html><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51);color-scheme:dark}.list{background:var(--theme)}.toc{background:var(--entry)}}@media(prefers-color-scheme:light){.list::-webkit-scrollbar-thumb{border-color:var(--code-bg)}}</style></noscript><script>localStorage.getItem("pref-theme")==="dark"?document.querySelector("html").dataset.theme="dark":localStorage.getItem("pref-theme")==="light"?document.querySelector("html").dataset.theme="light":window.matchMedia("(prefers-color-scheme: dark)").matches?document.querySelector("html").dataset.theme="dark":document.querySelector("html").dataset.theme="light"</script><link rel=preconnect href=https://fonts.googleapis.com><link rel=preconnect href=https://fonts.gstatic.com crossorigin><link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel=stylesheet><link rel=icon href=/favicon.ico sizes=any><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=apple-touch-icon href=/apple-touch-icon.png><link rel=manifest href=/site.webmanifest><meta name=theme-color content="#007a70"><script defer src=https://stats.askkennyb.com/script.js data-website-id=9ff21094-6881-404e-a30e-534c23dde9f8></script><meta property="og:url" content="https://askkennyb.com/404.html"><meta property="og:site_name" content="Ask KennyB"><meta property="og:title" content="404 Page not found"><meta property="og:description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="404 Page not found"><meta name=twitter:description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://askkennyb.com/ accesskey=h title=" (Alt + H)"><img src=https://askkennyb.com/images/logo_words.svg alt aria-label=logo height=75></a><div class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)" aria-label="Toggle theme">
|
<!DOCTYPE html>
|
||||||
<svg id="moon" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg>
|
<html lang="en" dir="auto" data-theme="auto">
|
||||||
<svg id="sun" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></div></div><ul id=menu><li><a href=https://askkennyb.com/posts/ title=Posts><span>Posts</span></a></li><li><a href=https://askkennyb.com/about/ title=About><span>About</span></a></li></ul></nav></header><main class=main><div class=not-found>404</div></main><footer class=footer><span>© 2025 <a href=https://askkennyb.com/>Ask KennyB</a></span> ·
|
|
||||||
<span>Powered by
|
<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script><meta charset="utf-8">
|
||||||
<a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> &
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<a href=https://github.com/adityatelange/hugo-PaperMod/ rel=noopener target=_blank>PaperMod</a></span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||||
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script><script>document.getElementById("theme-toggle").addEventListener("click",()=>{const e=document.querySelector("html");e.dataset.theme==="dark"?(e.dataset.theme="light",localStorage.setItem("pref-theme","light")):(e.dataset.theme="dark",localStorage.setItem("pref-theme","dark"))})</script></body></html>
|
<meta name="robots" content="noindex, nofollow">
|
||||||
|
<title>404 Page not found | Ask KennyB</title>
|
||||||
|
<meta name="keywords" content="">
|
||||||
|
<meta name="description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security.">
|
||||||
|
<meta name="author" content="Kenny Bondelie">
|
||||||
|
<link rel="canonical" href="http://localhost:1313/404.html">
|
||||||
|
<link crossorigin="anonymous" href="/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css" integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as="style">
|
||||||
|
<link rel="icon" href="http://localhost:1313/favicon.ico">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/favicon-16x16.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/favicon-32x32.png">
|
||||||
|
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
|
||||||
|
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
|
||||||
|
<meta name="theme-color" content="#2e2e33">
|
||||||
|
<meta name="msapplication-TileColor" content="#2e2e33">
|
||||||
|
<link rel="alternate" hreflang="en" href="http://localhost:1313/404.html">
|
||||||
|
<noscript>
|
||||||
|
<style>
|
||||||
|
#theme-toggle,
|
||||||
|
.top-link {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
<style>
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
:root {
|
||||||
|
--theme: rgb(29, 30, 32);
|
||||||
|
--entry: rgb(46, 46, 51);
|
||||||
|
--primary: rgb(218, 218, 219);
|
||||||
|
--secondary: rgb(155, 156, 157);
|
||||||
|
--tertiary: rgb(65, 66, 68);
|
||||||
|
--content: rgb(196, 196, 197);
|
||||||
|
--code-block-bg: rgb(46, 46, 51);
|
||||||
|
--code-bg: rgb(55, 56, 62);
|
||||||
|
--border: rgb(51, 51, 51);
|
||||||
|
color-scheme: dark;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list {
|
||||||
|
background: var(--theme);
|
||||||
|
}
|
||||||
|
|
||||||
|
.toc {
|
||||||
|
background: var(--entry);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (prefers-color-scheme: light) {
|
||||||
|
.list::-webkit-scrollbar-thumb {
|
||||||
|
border-color: var(--code-bg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
</noscript>
|
||||||
|
<script>
|
||||||
|
if (localStorage.getItem("pref-theme") === "dark") {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else if (localStorage.getItem("pref-theme") === "light") {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
}
|
||||||
|
|
||||||
|
</script><link rel="preconnect" href="https://fonts.googleapis.com">
|
||||||
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||||
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel="stylesheet">
|
||||||
|
|
||||||
|
<link rel="icon" href="/favicon.ico" sizes="any">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
||||||
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
|
||||||
|
<link rel="manifest" href="/site.webmanifest">
|
||||||
|
<meta name="theme-color" content="#007a70">
|
||||||
|
|
||||||
|
<script defer src="https://stats.askkennyb.com/script.js" data-website-id="9ff21094-6881-404e-a30e-534c23dde9f8"></script>
|
||||||
|
</head>
|
||||||
|
<body class="list" id="top">
|
||||||
|
<header class="header">
|
||||||
|
<nav class="nav">
|
||||||
|
<div class="logo">
|
||||||
|
<a href="http://localhost:1313/" accesskey="h" title=" (Alt + H)">
|
||||||
|
<img src="http://localhost:1313/images/logo_words.svg" alt="" aria-label="logo"
|
||||||
|
height="75"> </a>
|
||||||
|
<div class="logo-switches">
|
||||||
|
<button id="theme-toggle" accesskey="t" title="(Alt + T)" aria-label="Toggle theme">
|
||||||
|
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
||||||
|
</svg>
|
||||||
|
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<circle cx="12" cy="12" r="5"></circle>
|
||||||
|
<line x1="12" y1="1" x2="12" y2="3"></line>
|
||||||
|
<line x1="12" y1="21" x2="12" y2="23"></line>
|
||||||
|
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
||||||
|
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
||||||
|
<line x1="1" y1="12" x2="3" y2="12"></line>
|
||||||
|
<line x1="21" y1="12" x2="23" y2="12"></line>
|
||||||
|
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
||||||
|
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ul id="menu">
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/posts/" title="Posts">
|
||||||
|
<span>Posts</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/about/" title="About">
|
||||||
|
<span>About</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</header>
|
||||||
|
<main class="main">
|
||||||
|
<div class="not-found">404</div>
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<span>© 2025 <a href="http://localhost:1313/">Ask KennyB</a></span> ·
|
||||||
|
|
||||||
|
<span>
|
||||||
|
Powered by
|
||||||
|
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
|
||||||
|
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
|
||||||
|
</span>
|
||||||
|
</footer>
|
||||||
|
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
|
||||||
|
<path d="M12 6H0l6-6z" />
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
let menu = document.getElementById('menu');
|
||||||
|
if (menu) {
|
||||||
|
|
||||||
|
const scrollPosition = localStorage.getItem("menu-scroll-position");
|
||||||
|
if (scrollPosition) {
|
||||||
|
menu.scrollLeft = parseInt(scrollPosition, 10);
|
||||||
|
}
|
||||||
|
|
||||||
|
menu.onscroll = function () {
|
||||||
|
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
|
||||||
|
anchor.addEventListener("click", function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var id = this.getAttribute("href").substr(1);
|
||||||
|
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
|
||||||
|
behavior: "smooth"
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
|
||||||
|
}
|
||||||
|
if (id === "top") {
|
||||||
|
history.replaceState(null, null, " ");
|
||||||
|
} else {
|
||||||
|
history.pushState(null, null, `#${id}`);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
var mybutton = document.getElementById("top-link");
|
||||||
|
window.onscroll = function () {
|
||||||
|
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
|
||||||
|
mybutton.style.visibility = "visible";
|
||||||
|
mybutton.style.opacity = "1";
|
||||||
|
} else {
|
||||||
|
mybutton.style.visibility = "hidden";
|
||||||
|
mybutton.style.opacity = "0";
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
document.getElementById("theme-toggle").addEventListener("click", () => {
|
||||||
|
const html = document.querySelector("html");
|
||||||
|
if (html.dataset.theme === "dark") {
|
||||||
|
html.dataset.theme = 'light';
|
||||||
|
localStorage.setItem("pref-theme", 'light');
|
||||||
|
} else {
|
||||||
|
html.dataset.theme = 'dark';
|
||||||
|
localStorage.setItem("pref-theme", 'dark');
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1,7 +1,225 @@
|
|||||||
<!doctype html><html lang=en dir=auto data-theme=auto><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>About | Ask KennyB</title><meta name=keywords content><meta name=description content="Who I am and what Ask Kenny B is about."><meta name=author content="Kenny Bondelie"><link rel=canonical href=https://askkennyb.com/about/><link crossorigin=anonymous href=/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as=style><link rel=icon href=https://askkennyb.com/favicon.ico><link rel=icon type=image/png sizes=16x16 href=https://askkennyb.com/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=https://askkennyb.com/favicon-32x32.png><link rel=apple-touch-icon href=https://askkennyb.com/apple-touch-icon.png><link rel=mask-icon href=https://askkennyb.com/safari-pinned-tab.svg><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://askkennyb.com/about/index.xml title=rss><link rel=alternate hreflang=en href=https://askkennyb.com/about/><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51);color-scheme:dark}.list{background:var(--theme)}.toc{background:var(--entry)}}@media(prefers-color-scheme:light){.list::-webkit-scrollbar-thumb{border-color:var(--code-bg)}}</style></noscript><script>localStorage.getItem("pref-theme")==="dark"?document.querySelector("html").dataset.theme="dark":localStorage.getItem("pref-theme")==="light"?document.querySelector("html").dataset.theme="light":window.matchMedia("(prefers-color-scheme: dark)").matches?document.querySelector("html").dataset.theme="dark":document.querySelector("html").dataset.theme="light"</script><link rel=preconnect href=https://fonts.googleapis.com><link rel=preconnect href=https://fonts.gstatic.com crossorigin><link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel=stylesheet><link rel=icon href=/favicon.ico sizes=any><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=apple-touch-icon href=/apple-touch-icon.png><link rel=manifest href=/site.webmanifest><meta name=theme-color content="#007a70"><script defer src=https://stats.askkennyb.com/script.js data-website-id=9ff21094-6881-404e-a30e-534c23dde9f8></script><meta property="og:url" content="https://askkennyb.com/about/"><meta property="og:site_name" content="Ask KennyB"><meta property="og:title" content="About"><meta property="og:description" content="Who I am and what Ask Kenny B is about."><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="About"><meta name=twitter:description content="Who I am and what Ask Kenny B is about."><script type=application/ld+json>{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"About","item":"https://askkennyb.com/about/"}]}</script></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://askkennyb.com/ accesskey=h title=" (Alt + H)"><img src=https://askkennyb.com/images/logo_words.svg alt aria-label=logo height=75></a><div class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)" aria-label="Toggle theme">
|
<!DOCTYPE html>
|
||||||
<svg id="moon" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg>
|
<html lang="en" dir="auto" data-theme="auto">
|
||||||
<svg id="sun" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></div></div><ul id=menu><li><a href=https://askkennyb.com/posts/ title=Posts><span>Posts</span></a></li><li><a href=https://askkennyb.com/about/ title=About><span class=active>About</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=https://askkennyb.com/>Home</a></div><h1>About</h1><div class=post-description>Who I am and what Ask Kenny B is about.</div></header><div class=post-content><p>Hi, I’m Kenny. I build reliable, human-centered systems—nonprofit finance → homelab resilience → cloud + security.</p><p>This site is my public lab notebook: practical guides, reproducible setups, and leadership patterns that scale.</p><p>Let’s go.</p></div></main><footer class=footer><span>© 2025 <a href=https://askkennyb.com/>Ask KennyB</a></span> ·
|
|
||||||
<span>Powered by
|
<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script><meta charset="utf-8">
|
||||||
<a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> &
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<a href=https://github.com/adityatelange/hugo-PaperMod/ rel=noopener target=_blank>PaperMod</a></span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||||
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script><script>document.getElementById("theme-toggle").addEventListener("click",()=>{const e=document.querySelector("html");e.dataset.theme==="dark"?(e.dataset.theme="light",localStorage.setItem("pref-theme","light")):(e.dataset.theme="dark",localStorage.setItem("pref-theme","dark"))})</script></body></html>
|
<meta name="robots" content="noindex, nofollow">
|
||||||
|
<title>About | Ask KennyB</title>
|
||||||
|
<meta name="keywords" content="">
|
||||||
|
<meta name="description" content="Who I am and what Ask Kenny B is about.">
|
||||||
|
<meta name="author" content="Kenny Bondelie">
|
||||||
|
<link rel="canonical" href="http://localhost:1313/about/">
|
||||||
|
<link crossorigin="anonymous" href="/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css" integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as="style">
|
||||||
|
<link rel="icon" href="http://localhost:1313/favicon.ico">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/favicon-16x16.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/favicon-32x32.png">
|
||||||
|
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
|
||||||
|
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
|
||||||
|
<meta name="theme-color" content="#2e2e33">
|
||||||
|
<meta name="msapplication-TileColor" content="#2e2e33">
|
||||||
|
<link rel="alternate" type="application/rss+xml" href="http://localhost:1313/about/index.xml" title="rss">
|
||||||
|
<link rel="alternate" hreflang="en" href="http://localhost:1313/about/">
|
||||||
|
<noscript>
|
||||||
|
<style>
|
||||||
|
#theme-toggle,
|
||||||
|
.top-link {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
<style>
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
:root {
|
||||||
|
--theme: rgb(29, 30, 32);
|
||||||
|
--entry: rgb(46, 46, 51);
|
||||||
|
--primary: rgb(218, 218, 219);
|
||||||
|
--secondary: rgb(155, 156, 157);
|
||||||
|
--tertiary: rgb(65, 66, 68);
|
||||||
|
--content: rgb(196, 196, 197);
|
||||||
|
--code-block-bg: rgb(46, 46, 51);
|
||||||
|
--code-bg: rgb(55, 56, 62);
|
||||||
|
--border: rgb(51, 51, 51);
|
||||||
|
color-scheme: dark;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list {
|
||||||
|
background: var(--theme);
|
||||||
|
}
|
||||||
|
|
||||||
|
.toc {
|
||||||
|
background: var(--entry);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (prefers-color-scheme: light) {
|
||||||
|
.list::-webkit-scrollbar-thumb {
|
||||||
|
border-color: var(--code-bg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
</noscript>
|
||||||
|
<script>
|
||||||
|
if (localStorage.getItem("pref-theme") === "dark") {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else if (localStorage.getItem("pref-theme") === "light") {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
}
|
||||||
|
|
||||||
|
</script><link rel="preconnect" href="https://fonts.googleapis.com">
|
||||||
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||||
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel="stylesheet">
|
||||||
|
|
||||||
|
<link rel="icon" href="/favicon.ico" sizes="any">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
||||||
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
|
||||||
|
<link rel="manifest" href="/site.webmanifest">
|
||||||
|
<meta name="theme-color" content="#007a70">
|
||||||
|
|
||||||
|
<script defer src="https://stats.askkennyb.com/script.js" data-website-id="9ff21094-6881-404e-a30e-534c23dde9f8"></script>
|
||||||
|
</head>
|
||||||
|
<body class="list" id="top">
|
||||||
|
<header class="header">
|
||||||
|
<nav class="nav">
|
||||||
|
<div class="logo">
|
||||||
|
<a href="http://localhost:1313/" accesskey="h" title=" (Alt + H)">
|
||||||
|
<img src="http://localhost:1313/images/logo_words.svg" alt="" aria-label="logo"
|
||||||
|
height="75"> </a>
|
||||||
|
<div class="logo-switches">
|
||||||
|
<button id="theme-toggle" accesskey="t" title="(Alt + T)" aria-label="Toggle theme">
|
||||||
|
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
||||||
|
</svg>
|
||||||
|
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<circle cx="12" cy="12" r="5"></circle>
|
||||||
|
<line x1="12" y1="1" x2="12" y2="3"></line>
|
||||||
|
<line x1="12" y1="21" x2="12" y2="23"></line>
|
||||||
|
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
||||||
|
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
||||||
|
<line x1="1" y1="12" x2="3" y2="12"></line>
|
||||||
|
<line x1="21" y1="12" x2="23" y2="12"></line>
|
||||||
|
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
||||||
|
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ul id="menu">
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/posts/" title="Posts">
|
||||||
|
<span>Posts</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/about/" title="About">
|
||||||
|
<span class="active">About</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</header>
|
||||||
|
<main class="main">
|
||||||
|
<header class="page-header"><div class="breadcrumbs"><a href="http://localhost:1313/">Home</a></div>
|
||||||
|
<h1>
|
||||||
|
About
|
||||||
|
</h1>
|
||||||
|
<div class="post-description">
|
||||||
|
Who I am and what Ask Kenny B is about.
|
||||||
|
</div>
|
||||||
|
</header>
|
||||||
|
<div class="post-content"><p>Hi, I’m Kenny. I build reliable, human-centered systems—nonprofit finance → homelab resilience → cloud + security.</p>
|
||||||
|
<p>This site is my public lab notebook: practical guides, reproducible setups, and leadership patterns that scale.</p>
|
||||||
|
<p>Let’s go.</p>
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<span>© 2025 <a href="http://localhost:1313/">Ask KennyB</a></span> ·
|
||||||
|
|
||||||
|
<span>
|
||||||
|
Powered by
|
||||||
|
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
|
||||||
|
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
|
||||||
|
</span>
|
||||||
|
</footer>
|
||||||
|
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
|
||||||
|
<path d="M12 6H0l6-6z" />
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
let menu = document.getElementById('menu');
|
||||||
|
if (menu) {
|
||||||
|
|
||||||
|
const scrollPosition = localStorage.getItem("menu-scroll-position");
|
||||||
|
if (scrollPosition) {
|
||||||
|
menu.scrollLeft = parseInt(scrollPosition, 10);
|
||||||
|
}
|
||||||
|
|
||||||
|
menu.onscroll = function () {
|
||||||
|
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
|
||||||
|
anchor.addEventListener("click", function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var id = this.getAttribute("href").substr(1);
|
||||||
|
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
|
||||||
|
behavior: "smooth"
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
|
||||||
|
}
|
||||||
|
if (id === "top") {
|
||||||
|
history.replaceState(null, null, " ");
|
||||||
|
} else {
|
||||||
|
history.pushState(null, null, `#${id}`);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
var mybutton = document.getElementById("top-link");
|
||||||
|
window.onscroll = function () {
|
||||||
|
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
|
||||||
|
mybutton.style.visibility = "visible";
|
||||||
|
mybutton.style.opacity = "1";
|
||||||
|
} else {
|
||||||
|
mybutton.style.visibility = "hidden";
|
||||||
|
mybutton.style.opacity = "0";
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
document.getElementById("theme-toggle").addEventListener("click", () => {
|
||||||
|
const html = document.querySelector("html");
|
||||||
|
if (html.dataset.theme === "dark") {
|
||||||
|
html.dataset.theme = 'light';
|
||||||
|
localStorage.setItem("pref-theme", 'light');
|
||||||
|
} else {
|
||||||
|
html.dataset.theme = 'dark';
|
||||||
|
localStorage.setItem("pref-theme", 'dark');
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1 +1,12 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>About on Ask KennyB</title><link>https://askkennyb.com/about/</link><description>Recent content in About on Ask KennyB</description><generator>Hugo -- 0.152.2</generator><language>en-us</language><lastBuildDate/><atom:link href="https://askkennyb.com/about/index.xml" rel="self" type="application/rss+xml"/></channel></rss>
|
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||||
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
|
||||||
|
<channel>
|
||||||
|
<title>About on Ask KennyB</title>
|
||||||
|
<link>http://localhost:1313/about/</link>
|
||||||
|
<description>Recent content in About on Ask KennyB</description>
|
||||||
|
<generator>Hugo -- 0.152.2</generator>
|
||||||
|
<language>en-us</language>
|
||||||
|
<lastBuildDate></lastBuildDate>
|
||||||
|
<atom:link href="http://localhost:1313/about/index.xml" rel="self" type="application/rss+xml" />
|
||||||
|
</channel>
|
||||||
|
</rss>
|
||||||
|
|||||||
@@ -1 +1,9 @@
|
|||||||
<!doctype html><html lang=en-us><head><title>https://askkennyb.com/about/</title><link rel=canonical href=https://askkennyb.com/about/><meta charset=utf-8><meta http-equiv=refresh content="0; url=https://askkennyb.com/about/"></head></html>
|
<!DOCTYPE html>
|
||||||
|
<html lang="en-us">
|
||||||
|
<head>
|
||||||
|
<title>http://localhost:1313/about/</title>
|
||||||
|
<link rel="canonical" href="http://localhost:1313/about/">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="refresh" content="0; url=http://localhost:1313/about/">
|
||||||
|
</head>
|
||||||
|
</html>
|
||||||
|
|||||||
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -1,12 +1,233 @@
|
|||||||
<!doctype html><html lang=en dir=auto data-theme=auto><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>DevOps | Ask KennyB</title><meta name=keywords content><meta name=description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta name=author content="Kenny Bondelie"><link rel=canonical href=https://askkennyb.com/categories/devops/><link crossorigin=anonymous href=/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as=style><link rel=icon href=https://askkennyb.com/favicon.ico><link rel=icon type=image/png sizes=16x16 href=https://askkennyb.com/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=https://askkennyb.com/favicon-32x32.png><link rel=apple-touch-icon href=https://askkennyb.com/apple-touch-icon.png><link rel=mask-icon href=https://askkennyb.com/safari-pinned-tab.svg><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://askkennyb.com/categories/devops/index.xml title=rss><link rel=alternate hreflang=en href=https://askkennyb.com/categories/devops/><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51);color-scheme:dark}.list{background:var(--theme)}.toc{background:var(--entry)}}@media(prefers-color-scheme:light){.list::-webkit-scrollbar-thumb{border-color:var(--code-bg)}}</style></noscript><script>localStorage.getItem("pref-theme")==="dark"?document.querySelector("html").dataset.theme="dark":localStorage.getItem("pref-theme")==="light"?document.querySelector("html").dataset.theme="light":window.matchMedia("(prefers-color-scheme: dark)").matches?document.querySelector("html").dataset.theme="dark":document.querySelector("html").dataset.theme="light"</script><link rel=preconnect href=https://fonts.googleapis.com><link rel=preconnect href=https://fonts.gstatic.com crossorigin><link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel=stylesheet><link rel=icon href=/favicon.ico sizes=any><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=apple-touch-icon href=/apple-touch-icon.png><link rel=manifest href=/site.webmanifest><meta name=theme-color content="#007a70"><script defer src=https://stats.askkennyb.com/script.js data-website-id=9ff21094-6881-404e-a30e-534c23dde9f8></script><meta property="og:url" content="https://askkennyb.com/categories/devops/"><meta property="og:site_name" content="Ask KennyB"><meta property="og:title" content="DevOps"><meta property="og:description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="DevOps"><meta name=twitter:description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://askkennyb.com/ accesskey=h title=" (Alt + H)"><img src=https://askkennyb.com/images/logo_words.svg alt aria-label=logo height=75></a><div class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)" aria-label="Toggle theme">
|
<!DOCTYPE html>
|
||||||
<svg id="moon" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg>
|
<html lang="en" dir="auto" data-theme="auto">
|
||||||
<svg id="sun" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></div></div><ul id=menu><li><a href=https://askkennyb.com/posts/ title=Posts><span>Posts</span></a></li><li><a href=https://askkennyb.com/about/ title=About><span>About</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=https://askkennyb.com/>Home</a> » <a href=https://askkennyb.com/categories/>Categories</a></div><h1>DevOps</h1></header><article class="post-entry tag-entry"><header class=entry-header><h2 class=entry-hint-parent>Project Log: Docker Dreams and YAML Nightmares</h2></header><div class=entry-content><p>Sometimes the difference between a ‘production-ready stack’ and ‘why is my NAS on fire?’ is one missing space in a YAML file.
|
|
||||||
|
<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script><meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||||
|
<meta name="robots" content="noindex, nofollow">
|
||||||
|
<title>DevOps | Ask KennyB</title>
|
||||||
|
<meta name="keywords" content="">
|
||||||
|
<meta name="description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security.">
|
||||||
|
<meta name="author" content="Kenny Bondelie">
|
||||||
|
<link rel="canonical" href="http://localhost:1313/categories/devops/">
|
||||||
|
<link crossorigin="anonymous" href="/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css" integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as="style">
|
||||||
|
<link rel="icon" href="http://localhost:1313/favicon.ico">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/favicon-16x16.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/favicon-32x32.png">
|
||||||
|
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
|
||||||
|
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
|
||||||
|
<meta name="theme-color" content="#2e2e33">
|
||||||
|
<meta name="msapplication-TileColor" content="#2e2e33">
|
||||||
|
<link rel="alternate" type="application/rss+xml" href="http://localhost:1313/categories/devops/index.xml" title="rss">
|
||||||
|
<link rel="alternate" hreflang="en" href="http://localhost:1313/categories/devops/">
|
||||||
|
<noscript>
|
||||||
|
<style>
|
||||||
|
#theme-toggle,
|
||||||
|
.top-link {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
<style>
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
:root {
|
||||||
|
--theme: rgb(29, 30, 32);
|
||||||
|
--entry: rgb(46, 46, 51);
|
||||||
|
--primary: rgb(218, 218, 219);
|
||||||
|
--secondary: rgb(155, 156, 157);
|
||||||
|
--tertiary: rgb(65, 66, 68);
|
||||||
|
--content: rgb(196, 196, 197);
|
||||||
|
--code-block-bg: rgb(46, 46, 51);
|
||||||
|
--code-bg: rgb(55, 56, 62);
|
||||||
|
--border: rgb(51, 51, 51);
|
||||||
|
color-scheme: dark;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list {
|
||||||
|
background: var(--theme);
|
||||||
|
}
|
||||||
|
|
||||||
|
.toc {
|
||||||
|
background: var(--entry);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (prefers-color-scheme: light) {
|
||||||
|
.list::-webkit-scrollbar-thumb {
|
||||||
|
border-color: var(--code-bg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
</noscript>
|
||||||
|
<script>
|
||||||
|
if (localStorage.getItem("pref-theme") === "dark") {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else if (localStorage.getItem("pref-theme") === "light") {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
}
|
||||||
|
|
||||||
|
</script><link rel="preconnect" href="https://fonts.googleapis.com">
|
||||||
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||||
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel="stylesheet">
|
||||||
|
|
||||||
|
<link rel="icon" href="/favicon.ico" sizes="any">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
||||||
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
|
||||||
|
<link rel="manifest" href="/site.webmanifest">
|
||||||
|
<meta name="theme-color" content="#007a70">
|
||||||
|
|
||||||
|
<script defer src="https://stats.askkennyb.com/script.js" data-website-id="9ff21094-6881-404e-a30e-534c23dde9f8"></script>
|
||||||
|
</head>
|
||||||
|
<body class="list" id="top">
|
||||||
|
<header class="header">
|
||||||
|
<nav class="nav">
|
||||||
|
<div class="logo">
|
||||||
|
<a href="http://localhost:1313/" accesskey="h" title=" (Alt + H)">
|
||||||
|
<img src="http://localhost:1313/images/logo_words.svg" alt="" aria-label="logo"
|
||||||
|
height="75"> </a>
|
||||||
|
<div class="logo-switches">
|
||||||
|
<button id="theme-toggle" accesskey="t" title="(Alt + T)" aria-label="Toggle theme">
|
||||||
|
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
||||||
|
</svg>
|
||||||
|
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<circle cx="12" cy="12" r="5"></circle>
|
||||||
|
<line x1="12" y1="1" x2="12" y2="3"></line>
|
||||||
|
<line x1="12" y1="21" x2="12" y2="23"></line>
|
||||||
|
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
||||||
|
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
||||||
|
<line x1="1" y1="12" x2="3" y2="12"></line>
|
||||||
|
<line x1="21" y1="12" x2="23" y2="12"></line>
|
||||||
|
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
||||||
|
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ul id="menu">
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/posts/" title="Posts">
|
||||||
|
<span>Posts</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/about/" title="About">
|
||||||
|
<span>About</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</header>
|
||||||
|
<main class="main">
|
||||||
|
<header class="page-header"><div class="breadcrumbs"><a href="http://localhost:1313/">Home</a> » <a href="http://localhost:1313/categories/">Categories</a></div>
|
||||||
|
<h1>
|
||||||
|
DevOps
|
||||||
|
</h1>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<article class="post-entry tag-entry">
|
||||||
|
<header class="entry-header">
|
||||||
|
<h2 class="entry-hint-parent">Project Log: Docker Dreams and YAML Nightmares
|
||||||
|
</h2>
|
||||||
|
</header>
|
||||||
|
<div class="entry-content">
|
||||||
|
<p> Sometimes the difference between a ‘production-ready stack’ and ‘why is my NAS on fire?’ is one missing space in a YAML file.
|
||||||
It started innocently enough:
|
It started innocently enough:
|
||||||
a single docker-compose.yml, neat and tidy, humming along like a well-trained orchestra. Then I added one new service—my self-hosted note app—and everything fell apart.
|
a single docker-compose.yml, neat and tidy, humming along like a well-trained orchestra. Then I added one new service—my self-hosted note app—and everything fell apart.
|
||||||
The Symptoms Containers refusing to start with no useful logs DNS loops that made my router question its purpose My wife asking, “Why is our TV buffering when you touch the server?” The Diagnosis Turns out, I nested a volume mount under the wrong key.
|
The Symptoms Containers refusing to start with no useful logs DNS loops that made my router question its purpose My wife asking, “Why is our TV buffering when you touch the server?” The Diagnosis Turns out, I nested a volume mount under the wrong key.
|
||||||
YAML: 1 — Human: 0.
|
YAML: 1 — Human: 0.
|
||||||
...</p></div><footer class=entry-footer><span title='2025-11-05 00:00:00 +0000 UTC'>November 5, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer><a class=entry-link aria-label="post link to Project Log: Docker Dreams and YAML Nightmares" href=https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/></a></article></main><footer class=footer><span>© 2025 <a href=https://askkennyb.com/>Ask KennyB</a></span> ·
|
...</p>
|
||||||
<span>Powered by
|
</div>
|
||||||
<a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> &
|
<footer class="entry-footer"><span title='2025-11-05 00:00:00 +0000 UTC'>November 5, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer>
|
||||||
<a href=https://github.com/adityatelange/hugo-PaperMod/ rel=noopener target=_blank>PaperMod</a></span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
|
<a class="entry-link" aria-label="post link to Project Log: Docker Dreams and YAML Nightmares" href="http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/"></a>
|
||||||
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script><script>document.getElementById("theme-toggle").addEventListener("click",()=>{const e=document.querySelector("html");e.dataset.theme==="dark"?(e.dataset.theme="light",localStorage.setItem("pref-theme","light")):(e.dataset.theme="dark",localStorage.setItem("pref-theme","dark"))})</script></body></html>
|
</article>
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<span>© 2025 <a href="http://localhost:1313/">Ask KennyB</a></span> ·
|
||||||
|
|
||||||
|
<span>
|
||||||
|
Powered by
|
||||||
|
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
|
||||||
|
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
|
||||||
|
</span>
|
||||||
|
</footer>
|
||||||
|
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
|
||||||
|
<path d="M12 6H0l6-6z" />
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
let menu = document.getElementById('menu');
|
||||||
|
if (menu) {
|
||||||
|
|
||||||
|
const scrollPosition = localStorage.getItem("menu-scroll-position");
|
||||||
|
if (scrollPosition) {
|
||||||
|
menu.scrollLeft = parseInt(scrollPosition, 10);
|
||||||
|
}
|
||||||
|
|
||||||
|
menu.onscroll = function () {
|
||||||
|
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
|
||||||
|
anchor.addEventListener("click", function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var id = this.getAttribute("href").substr(1);
|
||||||
|
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
|
||||||
|
behavior: "smooth"
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
|
||||||
|
}
|
||||||
|
if (id === "top") {
|
||||||
|
history.replaceState(null, null, " ");
|
||||||
|
} else {
|
||||||
|
history.pushState(null, null, `#${id}`);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
var mybutton = document.getElementById("top-link");
|
||||||
|
window.onscroll = function () {
|
||||||
|
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
|
||||||
|
mybutton.style.visibility = "visible";
|
||||||
|
mybutton.style.opacity = "1";
|
||||||
|
} else {
|
||||||
|
mybutton.style.visibility = "hidden";
|
||||||
|
mybutton.style.opacity = "0";
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
document.getElementById("theme-toggle").addEventListener("click", () => {
|
||||||
|
const html = document.querySelector("html");
|
||||||
|
if (html.dataset.theme === "dark") {
|
||||||
|
html.dataset.theme = 'light';
|
||||||
|
localStorage.setItem("pref-theme", 'light');
|
||||||
|
} else {
|
||||||
|
html.dataset.theme = 'dark';
|
||||||
|
localStorage.setItem("pref-theme", 'dark');
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1 +1,19 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>DevOps on Ask KennyB</title><link>https://askkennyb.com/categories/devops/</link><description>Recent content in DevOps on Ask KennyB</description><generator>Hugo -- 0.152.2</generator><language>en-us</language><lastBuildDate>Wed, 05 Nov 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://askkennyb.com/categories/devops/index.xml" rel="self" type="application/rss+xml"/><item><title>Project Log: Docker Dreams and YAML Nightmares</title><link>https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/</link><pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/</guid><description>A totally serious update on my local lab, featuring unexpected container drama, a misbehaving reverse proxy, and lessons in patience.</description></item></channel></rss>
|
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||||
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
|
||||||
|
<channel>
|
||||||
|
<title>DevOps on Ask KennyB</title>
|
||||||
|
<link>http://localhost:1313/categories/devops/</link>
|
||||||
|
<description>Recent content in DevOps on Ask KennyB</description>
|
||||||
|
<generator>Hugo -- 0.152.2</generator>
|
||||||
|
<language>en-us</language>
|
||||||
|
<lastBuildDate>Wed, 05 Nov 2025 00:00:00 +0000</lastBuildDate>
|
||||||
|
<atom:link href="http://localhost:1313/categories/devops/index.xml" rel="self" type="application/rss+xml" />
|
||||||
|
<item>
|
||||||
|
<title>Project Log: Docker Dreams and YAML Nightmares</title>
|
||||||
|
<link>http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/</link>
|
||||||
|
<pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/</guid>
|
||||||
|
<description>A totally serious update on my local lab, featuring unexpected container drama, a misbehaving reverse proxy, and lessons in patience.</description>
|
||||||
|
</item>
|
||||||
|
</channel>
|
||||||
|
</rss>
|
||||||
|
|||||||
@@ -1 +1,9 @@
|
|||||||
<!doctype html><html lang=en-us><head><title>https://askkennyb.com/categories/devops/</title><link rel=canonical href=https://askkennyb.com/categories/devops/><meta charset=utf-8><meta http-equiv=refresh content="0; url=https://askkennyb.com/categories/devops/"></head></html>
|
<!DOCTYPE html>
|
||||||
|
<html lang="en-us">
|
||||||
|
<head>
|
||||||
|
<title>http://localhost:1313/categories/devops/</title>
|
||||||
|
<link rel="canonical" href="http://localhost:1313/categories/devops/">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="refresh" content="0; url=http://localhost:1313/categories/devops/">
|
||||||
|
</head>
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1,7 +1,223 @@
|
|||||||
<!doctype html><html lang=en dir=auto data-theme=auto><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Categories | Ask KennyB</title><meta name=keywords content><meta name=description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta name=author content="Kenny Bondelie"><link rel=canonical href=https://askkennyb.com/categories/><link crossorigin=anonymous href=/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as=style><link rel=icon href=https://askkennyb.com/favicon.ico><link rel=icon type=image/png sizes=16x16 href=https://askkennyb.com/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=https://askkennyb.com/favicon-32x32.png><link rel=apple-touch-icon href=https://askkennyb.com/apple-touch-icon.png><link rel=mask-icon href=https://askkennyb.com/safari-pinned-tab.svg><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://askkennyb.com/categories/index.xml title=rss><link rel=alternate hreflang=en href=https://askkennyb.com/categories/><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51);color-scheme:dark}.list{background:var(--theme)}.toc{background:var(--entry)}}@media(prefers-color-scheme:light){.list::-webkit-scrollbar-thumb{border-color:var(--code-bg)}}</style></noscript><script>localStorage.getItem("pref-theme")==="dark"?document.querySelector("html").dataset.theme="dark":localStorage.getItem("pref-theme")==="light"?document.querySelector("html").dataset.theme="light":window.matchMedia("(prefers-color-scheme: dark)").matches?document.querySelector("html").dataset.theme="dark":document.querySelector("html").dataset.theme="light"</script><link rel=preconnect href=https://fonts.googleapis.com><link rel=preconnect href=https://fonts.gstatic.com crossorigin><link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel=stylesheet><link rel=icon href=/favicon.ico sizes=any><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=apple-touch-icon href=/apple-touch-icon.png><link rel=manifest href=/site.webmanifest><meta name=theme-color content="#007a70"><script defer src=https://stats.askkennyb.com/script.js data-website-id=9ff21094-6881-404e-a30e-534c23dde9f8></script><meta property="og:url" content="https://askkennyb.com/categories/"><meta property="og:site_name" content="Ask KennyB"><meta property="og:title" content="Categories"><meta property="og:description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Categories"><meta name=twitter:description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://askkennyb.com/ accesskey=h title=" (Alt + H)"><img src=https://askkennyb.com/images/logo_words.svg alt aria-label=logo height=75></a><div class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)" aria-label="Toggle theme">
|
<!DOCTYPE html>
|
||||||
<svg id="moon" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg>
|
<html lang="en" dir="auto" data-theme="auto">
|
||||||
<svg id="sun" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></div></div><ul id=menu><li><a href=https://askkennyb.com/posts/ title=Posts><span>Posts</span></a></li><li><a href=https://askkennyb.com/about/ title=About><span>About</span></a></li></ul></nav></header><main class=main><header class=page-header><h1>Categories</h1></header><ul class=terms-tags><li><a href=https://askkennyb.com/categories/devops/>DevOps <sup><strong><sup>1</sup></strong></sup></a></li><li><a href=https://askkennyb.com/categories/meta/>Meta <sup><strong><sup>1</sup></strong></sup></a></li></ul></main><footer class=footer><span>© 2025 <a href=https://askkennyb.com/>Ask KennyB</a></span> ·
|
|
||||||
<span>Powered by
|
<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script><meta charset="utf-8">
|
||||||
<a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> &
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<a href=https://github.com/adityatelange/hugo-PaperMod/ rel=noopener target=_blank>PaperMod</a></span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||||
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script><script>document.getElementById("theme-toggle").addEventListener("click",()=>{const e=document.querySelector("html");e.dataset.theme==="dark"?(e.dataset.theme="light",localStorage.setItem("pref-theme","light")):(e.dataset.theme="dark",localStorage.setItem("pref-theme","dark"))})</script></body></html>
|
<meta name="robots" content="noindex, nofollow">
|
||||||
|
<title>Categories | Ask KennyB</title>
|
||||||
|
<meta name="keywords" content="">
|
||||||
|
<meta name="description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security.">
|
||||||
|
<meta name="author" content="Kenny Bondelie">
|
||||||
|
<link rel="canonical" href="http://localhost:1313/categories/">
|
||||||
|
<link crossorigin="anonymous" href="/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css" integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as="style">
|
||||||
|
<link rel="icon" href="http://localhost:1313/favicon.ico">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/favicon-16x16.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/favicon-32x32.png">
|
||||||
|
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
|
||||||
|
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
|
||||||
|
<meta name="theme-color" content="#2e2e33">
|
||||||
|
<meta name="msapplication-TileColor" content="#2e2e33">
|
||||||
|
<link rel="alternate" type="application/rss+xml" href="http://localhost:1313/categories/index.xml" title="rss">
|
||||||
|
<link rel="alternate" hreflang="en" href="http://localhost:1313/categories/">
|
||||||
|
<noscript>
|
||||||
|
<style>
|
||||||
|
#theme-toggle,
|
||||||
|
.top-link {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
<style>
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
:root {
|
||||||
|
--theme: rgb(29, 30, 32);
|
||||||
|
--entry: rgb(46, 46, 51);
|
||||||
|
--primary: rgb(218, 218, 219);
|
||||||
|
--secondary: rgb(155, 156, 157);
|
||||||
|
--tertiary: rgb(65, 66, 68);
|
||||||
|
--content: rgb(196, 196, 197);
|
||||||
|
--code-block-bg: rgb(46, 46, 51);
|
||||||
|
--code-bg: rgb(55, 56, 62);
|
||||||
|
--border: rgb(51, 51, 51);
|
||||||
|
color-scheme: dark;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list {
|
||||||
|
background: var(--theme);
|
||||||
|
}
|
||||||
|
|
||||||
|
.toc {
|
||||||
|
background: var(--entry);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (prefers-color-scheme: light) {
|
||||||
|
.list::-webkit-scrollbar-thumb {
|
||||||
|
border-color: var(--code-bg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
</noscript>
|
||||||
|
<script>
|
||||||
|
if (localStorage.getItem("pref-theme") === "dark") {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else if (localStorage.getItem("pref-theme") === "light") {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
}
|
||||||
|
|
||||||
|
</script><link rel="preconnect" href="https://fonts.googleapis.com">
|
||||||
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||||
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel="stylesheet">
|
||||||
|
|
||||||
|
<link rel="icon" href="/favicon.ico" sizes="any">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
||||||
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
|
||||||
|
<link rel="manifest" href="/site.webmanifest">
|
||||||
|
<meta name="theme-color" content="#007a70">
|
||||||
|
|
||||||
|
<script defer src="https://stats.askkennyb.com/script.js" data-website-id="9ff21094-6881-404e-a30e-534c23dde9f8"></script>
|
||||||
|
</head>
|
||||||
|
<body class="list" id="top">
|
||||||
|
<header class="header">
|
||||||
|
<nav class="nav">
|
||||||
|
<div class="logo">
|
||||||
|
<a href="http://localhost:1313/" accesskey="h" title=" (Alt + H)">
|
||||||
|
<img src="http://localhost:1313/images/logo_words.svg" alt="" aria-label="logo"
|
||||||
|
height="75"> </a>
|
||||||
|
<div class="logo-switches">
|
||||||
|
<button id="theme-toggle" accesskey="t" title="(Alt + T)" aria-label="Toggle theme">
|
||||||
|
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
||||||
|
</svg>
|
||||||
|
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<circle cx="12" cy="12" r="5"></circle>
|
||||||
|
<line x1="12" y1="1" x2="12" y2="3"></line>
|
||||||
|
<line x1="12" y1="21" x2="12" y2="23"></line>
|
||||||
|
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
||||||
|
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
||||||
|
<line x1="1" y1="12" x2="3" y2="12"></line>
|
||||||
|
<line x1="21" y1="12" x2="23" y2="12"></line>
|
||||||
|
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
||||||
|
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ul id="menu">
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/posts/" title="Posts">
|
||||||
|
<span>Posts</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/about/" title="About">
|
||||||
|
<span>About</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</header>
|
||||||
|
<main class="main">
|
||||||
|
<header class="page-header">
|
||||||
|
<h1>Categories</h1>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<ul class="terms-tags">
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/categories/devops/">DevOps <sup><strong><sup>1</sup></strong></sup> </a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/categories/meta/">Meta <sup><strong><sup>1</sup></strong></sup> </a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<span>© 2025 <a href="http://localhost:1313/">Ask KennyB</a></span> ·
|
||||||
|
|
||||||
|
<span>
|
||||||
|
Powered by
|
||||||
|
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
|
||||||
|
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
|
||||||
|
</span>
|
||||||
|
</footer>
|
||||||
|
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
|
||||||
|
<path d="M12 6H0l6-6z" />
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
let menu = document.getElementById('menu');
|
||||||
|
if (menu) {
|
||||||
|
|
||||||
|
const scrollPosition = localStorage.getItem("menu-scroll-position");
|
||||||
|
if (scrollPosition) {
|
||||||
|
menu.scrollLeft = parseInt(scrollPosition, 10);
|
||||||
|
}
|
||||||
|
|
||||||
|
menu.onscroll = function () {
|
||||||
|
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
|
||||||
|
anchor.addEventListener("click", function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var id = this.getAttribute("href").substr(1);
|
||||||
|
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
|
||||||
|
behavior: "smooth"
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
|
||||||
|
}
|
||||||
|
if (id === "top") {
|
||||||
|
history.replaceState(null, null, " ");
|
||||||
|
} else {
|
||||||
|
history.pushState(null, null, `#${id}`);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
var mybutton = document.getElementById("top-link");
|
||||||
|
window.onscroll = function () {
|
||||||
|
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
|
||||||
|
mybutton.style.visibility = "visible";
|
||||||
|
mybutton.style.opacity = "1";
|
||||||
|
} else {
|
||||||
|
mybutton.style.visibility = "hidden";
|
||||||
|
mybutton.style.opacity = "0";
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
document.getElementById("theme-toggle").addEventListener("click", () => {
|
||||||
|
const html = document.querySelector("html");
|
||||||
|
if (html.dataset.theme === "dark") {
|
||||||
|
html.dataset.theme = 'light';
|
||||||
|
localStorage.setItem("pref-theme", 'light');
|
||||||
|
} else {
|
||||||
|
html.dataset.theme = 'dark';
|
||||||
|
localStorage.setItem("pref-theme", 'dark');
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1 +1,26 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Categories on Ask KennyB</title><link>https://askkennyb.com/categories/</link><description>Recent content in Categories on Ask KennyB</description><generator>Hugo -- 0.152.2</generator><language>en-us</language><lastBuildDate>Wed, 05 Nov 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://askkennyb.com/categories/index.xml" rel="self" type="application/rss+xml"/><item><title>DevOps</title><link>https://askkennyb.com/categories/devops/</link><pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/categories/devops/</guid><description/></item><item><title>Meta</title><link>https://askkennyb.com/categories/meta/</link><pubDate>Sun, 02 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/categories/meta/</guid><description/></item></channel></rss>
|
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||||
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
|
||||||
|
<channel>
|
||||||
|
<title>Categories on Ask KennyB</title>
|
||||||
|
<link>http://localhost:1313/categories/</link>
|
||||||
|
<description>Recent content in Categories on Ask KennyB</description>
|
||||||
|
<generator>Hugo -- 0.152.2</generator>
|
||||||
|
<language>en-us</language>
|
||||||
|
<lastBuildDate>Wed, 05 Nov 2025 00:00:00 +0000</lastBuildDate>
|
||||||
|
<atom:link href="http://localhost:1313/categories/index.xml" rel="self" type="application/rss+xml" />
|
||||||
|
<item>
|
||||||
|
<title>DevOps</title>
|
||||||
|
<link>http://localhost:1313/categories/devops/</link>
|
||||||
|
<pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/categories/devops/</guid>
|
||||||
|
<description></description>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<title>Meta</title>
|
||||||
|
<link>http://localhost:1313/categories/meta/</link>
|
||||||
|
<pubDate>Sun, 02 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/categories/meta/</guid>
|
||||||
|
<description></description>
|
||||||
|
</item>
|
||||||
|
</channel>
|
||||||
|
</rss>
|
||||||
|
|||||||
@@ -1,8 +1,230 @@
|
|||||||
<!doctype html><html lang=en dir=auto data-theme=auto><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Meta | Ask KennyB</title><meta name=keywords content><meta name=description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta name=author content="Kenny Bondelie"><link rel=canonical href=https://askkennyb.com/categories/meta/><link crossorigin=anonymous href=/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as=style><link rel=icon href=https://askkennyb.com/favicon.ico><link rel=icon type=image/png sizes=16x16 href=https://askkennyb.com/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=https://askkennyb.com/favicon-32x32.png><link rel=apple-touch-icon href=https://askkennyb.com/apple-touch-icon.png><link rel=mask-icon href=https://askkennyb.com/safari-pinned-tab.svg><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://askkennyb.com/categories/meta/index.xml title=rss><link rel=alternate hreflang=en href=https://askkennyb.com/categories/meta/><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51);color-scheme:dark}.list{background:var(--theme)}.toc{background:var(--entry)}}@media(prefers-color-scheme:light){.list::-webkit-scrollbar-thumb{border-color:var(--code-bg)}}</style></noscript><script>localStorage.getItem("pref-theme")==="dark"?document.querySelector("html").dataset.theme="dark":localStorage.getItem("pref-theme")==="light"?document.querySelector("html").dataset.theme="light":window.matchMedia("(prefers-color-scheme: dark)").matches?document.querySelector("html").dataset.theme="dark":document.querySelector("html").dataset.theme="light"</script><link rel=preconnect href=https://fonts.googleapis.com><link rel=preconnect href=https://fonts.gstatic.com crossorigin><link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel=stylesheet><link rel=icon href=/favicon.ico sizes=any><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=apple-touch-icon href=/apple-touch-icon.png><link rel=manifest href=/site.webmanifest><meta name=theme-color content="#007a70"><script defer src=https://stats.askkennyb.com/script.js data-website-id=9ff21094-6881-404e-a30e-534c23dde9f8></script><meta property="og:url" content="https://askkennyb.com/categories/meta/"><meta property="og:site_name" content="Ask KennyB"><meta property="og:title" content="Meta"><meta property="og:description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Meta"><meta name=twitter:description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://askkennyb.com/ accesskey=h title=" (Alt + H)"><img src=https://askkennyb.com/images/logo_words.svg alt aria-label=logo height=75></a><div class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)" aria-label="Toggle theme">
|
<!DOCTYPE html>
|
||||||
<svg id="moon" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg>
|
<html lang="en" dir="auto" data-theme="auto">
|
||||||
<svg id="sun" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></div></div><ul id=menu><li><a href=https://askkennyb.com/posts/ title=Posts><span>Posts</span></a></li><li><a href=https://askkennyb.com/about/ title=About><span>About</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=https://askkennyb.com/>Home</a> » <a href=https://askkennyb.com/categories/>Categories</a></div><h1>Meta</h1></header><article class="post-entry tag-entry"><header class=entry-header><h2 class=entry-hint-parent>Hello, World — Why Ask Kenny B?</h2></header><div class=entry-content><p>Welcome! This blog will cover:
|
|
||||||
Reproducible homelab guides (Proxmox, Docker, Authentik, reverse proxies). Cloud blueprints that scale from personal to org-grade. Transferable leadership → architecture lessons (risk, controls, finance). Thanks for being here—let’s build.</p></div><footer class=entry-footer><span title='2025-11-02 00:00:00 +0000 UTC'>November 2, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer><a class=entry-link aria-label="post link to Hello, World — Why Ask Kenny B?" href=https://askkennyb.com/blog/hello-world-why-ask-kenny-b/></a></article></main><footer class=footer><span>© 2025 <a href=https://askkennyb.com/>Ask KennyB</a></span> ·
|
<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script><meta charset="utf-8">
|
||||||
<span>Powered by
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> &
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||||
<a href=https://github.com/adityatelange/hugo-PaperMod/ rel=noopener target=_blank>PaperMod</a></span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
|
<meta name="robots" content="noindex, nofollow">
|
||||||
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script><script>document.getElementById("theme-toggle").addEventListener("click",()=>{const e=document.querySelector("html");e.dataset.theme==="dark"?(e.dataset.theme="light",localStorage.setItem("pref-theme","light")):(e.dataset.theme="dark",localStorage.setItem("pref-theme","dark"))})</script></body></html>
|
<title>Meta | Ask KennyB</title>
|
||||||
|
<meta name="keywords" content="">
|
||||||
|
<meta name="description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security.">
|
||||||
|
<meta name="author" content="Kenny Bondelie">
|
||||||
|
<link rel="canonical" href="http://localhost:1313/categories/meta/">
|
||||||
|
<link crossorigin="anonymous" href="/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css" integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as="style">
|
||||||
|
<link rel="icon" href="http://localhost:1313/favicon.ico">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/favicon-16x16.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/favicon-32x32.png">
|
||||||
|
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
|
||||||
|
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
|
||||||
|
<meta name="theme-color" content="#2e2e33">
|
||||||
|
<meta name="msapplication-TileColor" content="#2e2e33">
|
||||||
|
<link rel="alternate" type="application/rss+xml" href="http://localhost:1313/categories/meta/index.xml" title="rss">
|
||||||
|
<link rel="alternate" hreflang="en" href="http://localhost:1313/categories/meta/">
|
||||||
|
<noscript>
|
||||||
|
<style>
|
||||||
|
#theme-toggle,
|
||||||
|
.top-link {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
<style>
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
:root {
|
||||||
|
--theme: rgb(29, 30, 32);
|
||||||
|
--entry: rgb(46, 46, 51);
|
||||||
|
--primary: rgb(218, 218, 219);
|
||||||
|
--secondary: rgb(155, 156, 157);
|
||||||
|
--tertiary: rgb(65, 66, 68);
|
||||||
|
--content: rgb(196, 196, 197);
|
||||||
|
--code-block-bg: rgb(46, 46, 51);
|
||||||
|
--code-bg: rgb(55, 56, 62);
|
||||||
|
--border: rgb(51, 51, 51);
|
||||||
|
color-scheme: dark;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list {
|
||||||
|
background: var(--theme);
|
||||||
|
}
|
||||||
|
|
||||||
|
.toc {
|
||||||
|
background: var(--entry);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (prefers-color-scheme: light) {
|
||||||
|
.list::-webkit-scrollbar-thumb {
|
||||||
|
border-color: var(--code-bg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
</noscript>
|
||||||
|
<script>
|
||||||
|
if (localStorage.getItem("pref-theme") === "dark") {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else if (localStorage.getItem("pref-theme") === "light") {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
}
|
||||||
|
|
||||||
|
</script><link rel="preconnect" href="https://fonts.googleapis.com">
|
||||||
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||||
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel="stylesheet">
|
||||||
|
|
||||||
|
<link rel="icon" href="/favicon.ico" sizes="any">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
||||||
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
|
||||||
|
<link rel="manifest" href="/site.webmanifest">
|
||||||
|
<meta name="theme-color" content="#007a70">
|
||||||
|
|
||||||
|
<script defer src="https://stats.askkennyb.com/script.js" data-website-id="9ff21094-6881-404e-a30e-534c23dde9f8"></script>
|
||||||
|
</head>
|
||||||
|
<body class="list" id="top">
|
||||||
|
<header class="header">
|
||||||
|
<nav class="nav">
|
||||||
|
<div class="logo">
|
||||||
|
<a href="http://localhost:1313/" accesskey="h" title=" (Alt + H)">
|
||||||
|
<img src="http://localhost:1313/images/logo_words.svg" alt="" aria-label="logo"
|
||||||
|
height="75"> </a>
|
||||||
|
<div class="logo-switches">
|
||||||
|
<button id="theme-toggle" accesskey="t" title="(Alt + T)" aria-label="Toggle theme">
|
||||||
|
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
||||||
|
</svg>
|
||||||
|
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<circle cx="12" cy="12" r="5"></circle>
|
||||||
|
<line x1="12" y1="1" x2="12" y2="3"></line>
|
||||||
|
<line x1="12" y1="21" x2="12" y2="23"></line>
|
||||||
|
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
||||||
|
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
||||||
|
<line x1="1" y1="12" x2="3" y2="12"></line>
|
||||||
|
<line x1="21" y1="12" x2="23" y2="12"></line>
|
||||||
|
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
||||||
|
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ul id="menu">
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/posts/" title="Posts">
|
||||||
|
<span>Posts</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/about/" title="About">
|
||||||
|
<span>About</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</header>
|
||||||
|
<main class="main">
|
||||||
|
<header class="page-header"><div class="breadcrumbs"><a href="http://localhost:1313/">Home</a> » <a href="http://localhost:1313/categories/">Categories</a></div>
|
||||||
|
<h1>
|
||||||
|
Meta
|
||||||
|
</h1>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<article class="post-entry tag-entry">
|
||||||
|
<header class="entry-header">
|
||||||
|
<h2 class="entry-hint-parent">Hello, World — Why Ask Kenny B?
|
||||||
|
</h2>
|
||||||
|
</header>
|
||||||
|
<div class="entry-content">
|
||||||
|
<p>Welcome! This blog will cover:
|
||||||
|
Reproducible homelab guides (Proxmox, Docker, Authentik, reverse proxies). Cloud blueprints that scale from personal to org-grade. Transferable leadership → architecture lessons (risk, controls, finance). Thanks for being here—let’s build.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<footer class="entry-footer"><span title='2025-11-02 00:00:00 +0000 UTC'>November 2, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer>
|
||||||
|
<a class="entry-link" aria-label="post link to Hello, World — Why Ask Kenny B?" href="http://localhost:1313/blog/hello-world-why-ask-kenny-b/"></a>
|
||||||
|
</article>
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<span>© 2025 <a href="http://localhost:1313/">Ask KennyB</a></span> ·
|
||||||
|
|
||||||
|
<span>
|
||||||
|
Powered by
|
||||||
|
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
|
||||||
|
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
|
||||||
|
</span>
|
||||||
|
</footer>
|
||||||
|
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
|
||||||
|
<path d="M12 6H0l6-6z" />
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
let menu = document.getElementById('menu');
|
||||||
|
if (menu) {
|
||||||
|
|
||||||
|
const scrollPosition = localStorage.getItem("menu-scroll-position");
|
||||||
|
if (scrollPosition) {
|
||||||
|
menu.scrollLeft = parseInt(scrollPosition, 10);
|
||||||
|
}
|
||||||
|
|
||||||
|
menu.onscroll = function () {
|
||||||
|
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
|
||||||
|
anchor.addEventListener("click", function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var id = this.getAttribute("href").substr(1);
|
||||||
|
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
|
||||||
|
behavior: "smooth"
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
|
||||||
|
}
|
||||||
|
if (id === "top") {
|
||||||
|
history.replaceState(null, null, " ");
|
||||||
|
} else {
|
||||||
|
history.pushState(null, null, `#${id}`);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
var mybutton = document.getElementById("top-link");
|
||||||
|
window.onscroll = function () {
|
||||||
|
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
|
||||||
|
mybutton.style.visibility = "visible";
|
||||||
|
mybutton.style.opacity = "1";
|
||||||
|
} else {
|
||||||
|
mybutton.style.visibility = "hidden";
|
||||||
|
mybutton.style.opacity = "0";
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
document.getElementById("theme-toggle").addEventListener("click", () => {
|
||||||
|
const html = document.querySelector("html");
|
||||||
|
if (html.dataset.theme === "dark") {
|
||||||
|
html.dataset.theme = 'light';
|
||||||
|
localStorage.setItem("pref-theme", 'light');
|
||||||
|
} else {
|
||||||
|
html.dataset.theme = 'dark';
|
||||||
|
localStorage.setItem("pref-theme", 'dark');
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1 +1,19 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Meta on Ask KennyB</title><link>https://askkennyb.com/categories/meta/</link><description>Recent content in Meta on Ask KennyB</description><generator>Hugo -- 0.152.2</generator><language>en-us</language><lastBuildDate>Sun, 02 Nov 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://askkennyb.com/categories/meta/index.xml" rel="self" type="application/rss+xml"/><item><title>Hello, World — Why Ask Kenny B?</title><link>https://askkennyb.com/blog/hello-world-why-ask-kenny-b/</link><pubDate>Sun, 02 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/blog/hello-world-why-ask-kenny-b/</guid><description>What this space is about: practical homelab builds, cloud security, and translating leadership into hands-on architecture.</description></item></channel></rss>
|
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||||
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
|
||||||
|
<channel>
|
||||||
|
<title>Meta on Ask KennyB</title>
|
||||||
|
<link>http://localhost:1313/categories/meta/</link>
|
||||||
|
<description>Recent content in Meta on Ask KennyB</description>
|
||||||
|
<generator>Hugo -- 0.152.2</generator>
|
||||||
|
<language>en-us</language>
|
||||||
|
<lastBuildDate>Sun, 02 Nov 2025 00:00:00 +0000</lastBuildDate>
|
||||||
|
<atom:link href="http://localhost:1313/categories/meta/index.xml" rel="self" type="application/rss+xml" />
|
||||||
|
<item>
|
||||||
|
<title>Hello, World — Why Ask Kenny B?</title>
|
||||||
|
<link>http://localhost:1313/blog/hello-world-why-ask-kenny-b/</link>
|
||||||
|
<pubDate>Sun, 02 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/blog/hello-world-why-ask-kenny-b/</guid>
|
||||||
|
<description>What this space is about: practical homelab builds, cloud security, and translating leadership into hands-on architecture.</description>
|
||||||
|
</item>
|
||||||
|
</channel>
|
||||||
|
</rss>
|
||||||
|
|||||||
@@ -1 +1,9 @@
|
|||||||
<!doctype html><html lang=en-us><head><title>https://askkennyb.com/categories/meta/</title><link rel=canonical href=https://askkennyb.com/categories/meta/><meta charset=utf-8><meta http-equiv=refresh content="0; url=https://askkennyb.com/categories/meta/"></head></html>
|
<!DOCTYPE html>
|
||||||
|
<html lang="en-us">
|
||||||
|
<head>
|
||||||
|
<title>http://localhost:1313/categories/meta/</title>
|
||||||
|
<link rel="canonical" href="http://localhost:1313/categories/meta/">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="refresh" content="0; url=http://localhost:1313/categories/meta/">
|
||||||
|
</head>
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1,13 +1,276 @@
|
|||||||
<!doctype html><html lang=en dir=auto data-theme=auto><head><meta name=generator content="Hugo 0.152.2"><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Ask KennyB</title><meta name=description content="Landing page for Ask Kenny B."><meta name=author content="Kenny Bondelie"><link rel=canonical href=https://askkennyb.com/><link crossorigin=anonymous href=/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as=style><link rel=icon href=https://askkennyb.com/favicon.ico><link rel=icon type=image/png sizes=16x16 href=https://askkennyb.com/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=https://askkennyb.com/favicon-32x32.png><link rel=apple-touch-icon href=https://askkennyb.com/apple-touch-icon.png><link rel=mask-icon href=https://askkennyb.com/safari-pinned-tab.svg><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://askkennyb.com/index.xml title=rss><link rel=alternate hreflang=en href=https://askkennyb.com/><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51);color-scheme:dark}.list{background:var(--theme)}.toc{background:var(--entry)}}@media(prefers-color-scheme:light){.list::-webkit-scrollbar-thumb{border-color:var(--code-bg)}}</style></noscript><script>localStorage.getItem("pref-theme")==="dark"?document.querySelector("html").dataset.theme="dark":localStorage.getItem("pref-theme")==="light"?document.querySelector("html").dataset.theme="light":window.matchMedia("(prefers-color-scheme: dark)").matches?document.querySelector("html").dataset.theme="dark":document.querySelector("html").dataset.theme="light"</script><link rel=preconnect href=https://fonts.googleapis.com><link rel=preconnect href=https://fonts.gstatic.com crossorigin><link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel=stylesheet><link rel=icon href=/favicon.ico sizes=any><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=apple-touch-icon href=/apple-touch-icon.png><link rel=manifest href=/site.webmanifest><meta name=theme-color content="#007a70"><script defer src=https://stats.askkennyb.com/script.js data-website-id=9ff21094-6881-404e-a30e-534c23dde9f8></script><meta property="og:url" content="https://askkennyb.com/"><meta property="og:site_name" content="Ask KennyB"><meta property="og:title" content="Home"><meta property="og:description" content="Landing page for Ask Kenny B."><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Home"><meta name=twitter:description content="Landing page for Ask Kenny B."><script type=application/ld+json>{"@context":"https://schema.org","@type":"Organization","name":"Ask KennyB","url":"https://askkennyb.com/","description":"Sharpening tech leadership through hands-on homelab builds, cloud, and security.","logo":"https://askkennyb.com/favicon.ico","sameAs":["https://www.linkedin.com/in/kennethbondelie"]}</script></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://askkennyb.com/ accesskey=h title=" (Alt + H)"><img src=https://askkennyb.com/images/logo_words.svg alt aria-label=logo height=75></a><div class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)" aria-label="Toggle theme">
|
<!DOCTYPE html>
|
||||||
<svg id="moon" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg>
|
<html lang="en" dir="auto" data-theme="auto">
|
||||||
<svg id="sun" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></div></div><ul id=menu><li><a href=https://askkennyb.com/posts/ title=Posts><span>Posts</span></a></li><li><a href=https://askkennyb.com/about/ title=About><span>About</span></a></li></ul></nav></header><main class=main><div class=post-content><div class=bio-block><img src=/images/profile.png alt="Kenny Bondelie" class=bio-photo><div class=bio-text>👋 I’m Kenny Bondelie — finance leader turned hands-on IT and security architect.<br>I write about building reliable systems, both technical and organizational.</div></div></div><article class="first-entry home-info"><header class=entry-header><h1>Ask KennyB</h1></header><div class=entry-content>From nonprofit CFO → hands-on IT & security leader. Homelab, cloud, ops, and practical strategy.</div><footer class=entry-footer><div class=social-icons><a href=https://www.linkedin.com/in/kennethbondelie target=_blank rel="noopener noreferrer me" title=Linkedin><svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M16 8a6 6 0 016 6v7h-4v-7a2 2 0 00-2-2 2 2 0 00-2 2v7h-4v-7a6 6 0 016-6z"/><rect x="2" y="9" width="4" height="12"/><circle cx="4" cy="4" r="2"/></svg></a></div></footer></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Project Log: Docker Dreams and YAML Nightmares</h2></header><div class=entry-content><p>Sometimes the difference between a ‘production-ready stack’ and ‘why is my NAS on fire?’ is one missing space in a YAML file.
|
|
||||||
|
<head>
|
||||||
|
<meta name="generator" content="Hugo 0.152.2"><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script><meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||||
|
<meta name="robots" content="noindex, nofollow">
|
||||||
|
<title>Ask KennyB</title>
|
||||||
|
|
||||||
|
<meta name="description" content="Landing page for Ask Kenny B.">
|
||||||
|
<meta name="author" content="Kenny Bondelie">
|
||||||
|
<link rel="canonical" href="http://localhost:1313/">
|
||||||
|
<link crossorigin="anonymous" href="/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css" integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as="style">
|
||||||
|
<link rel="icon" href="http://localhost:1313/favicon.ico">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/favicon-16x16.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/favicon-32x32.png">
|
||||||
|
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
|
||||||
|
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
|
||||||
|
<meta name="theme-color" content="#2e2e33">
|
||||||
|
<meta name="msapplication-TileColor" content="#2e2e33">
|
||||||
|
<link rel="alternate" type="application/rss+xml" href="http://localhost:1313/index.xml" title="rss">
|
||||||
|
<link rel="alternate" hreflang="en" href="http://localhost:1313/">
|
||||||
|
<noscript>
|
||||||
|
<style>
|
||||||
|
#theme-toggle,
|
||||||
|
.top-link {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
<style>
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
:root {
|
||||||
|
--theme: rgb(29, 30, 32);
|
||||||
|
--entry: rgb(46, 46, 51);
|
||||||
|
--primary: rgb(218, 218, 219);
|
||||||
|
--secondary: rgb(155, 156, 157);
|
||||||
|
--tertiary: rgb(65, 66, 68);
|
||||||
|
--content: rgb(196, 196, 197);
|
||||||
|
--code-block-bg: rgb(46, 46, 51);
|
||||||
|
--code-bg: rgb(55, 56, 62);
|
||||||
|
--border: rgb(51, 51, 51);
|
||||||
|
color-scheme: dark;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list {
|
||||||
|
background: var(--theme);
|
||||||
|
}
|
||||||
|
|
||||||
|
.toc {
|
||||||
|
background: var(--entry);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (prefers-color-scheme: light) {
|
||||||
|
.list::-webkit-scrollbar-thumb {
|
||||||
|
border-color: var(--code-bg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
</noscript>
|
||||||
|
<script>
|
||||||
|
if (localStorage.getItem("pref-theme") === "dark") {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else if (localStorage.getItem("pref-theme") === "light") {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
}
|
||||||
|
|
||||||
|
</script><link rel="preconnect" href="https://fonts.googleapis.com">
|
||||||
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||||
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel="stylesheet">
|
||||||
|
|
||||||
|
<link rel="icon" href="/favicon.ico" sizes="any">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
||||||
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
|
||||||
|
<link rel="manifest" href="/site.webmanifest">
|
||||||
|
<meta name="theme-color" content="#007a70">
|
||||||
|
|
||||||
|
<script defer src="https://stats.askkennyb.com/script.js" data-website-id="9ff21094-6881-404e-a30e-534c23dde9f8"></script>
|
||||||
|
</head>
|
||||||
|
<body class="list" id="top">
|
||||||
|
<header class="header">
|
||||||
|
<nav class="nav">
|
||||||
|
<div class="logo">
|
||||||
|
<a href="http://localhost:1313/" accesskey="h" title=" (Alt + H)">
|
||||||
|
<img src="http://localhost:1313/images/logo_words.svg" alt="" aria-label="logo"
|
||||||
|
height="75"> </a>
|
||||||
|
<div class="logo-switches">
|
||||||
|
<button id="theme-toggle" accesskey="t" title="(Alt + T)" aria-label="Toggle theme">
|
||||||
|
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
||||||
|
</svg>
|
||||||
|
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<circle cx="12" cy="12" r="5"></circle>
|
||||||
|
<line x1="12" y1="1" x2="12" y2="3"></line>
|
||||||
|
<line x1="12" y1="21" x2="12" y2="23"></line>
|
||||||
|
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
||||||
|
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
||||||
|
<line x1="1" y1="12" x2="3" y2="12"></line>
|
||||||
|
<line x1="21" y1="12" x2="23" y2="12"></line>
|
||||||
|
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
||||||
|
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ul id="menu">
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/posts/" title="Posts">
|
||||||
|
<span>Posts</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/about/" title="About">
|
||||||
|
<span>About</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</header>
|
||||||
|
<main class="main">
|
||||||
|
<div class="post-content"><div class="bio-block">
|
||||||
|
<img src="/images/profile.png" alt="Kenny Bondelie" class="bio-photo">
|
||||||
|
<div class="bio-text">
|
||||||
|
👋 I’m Kenny Bondelie — finance leader turned hands-on IT and security architect.<br>
|
||||||
|
I write about building reliable systems, both technical and organizational.
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
</div>
|
||||||
|
<article class="first-entry home-info">
|
||||||
|
<header class="entry-header">
|
||||||
|
<h1>Ask KennyB</h1>
|
||||||
|
</header>
|
||||||
|
<div class="entry-content">
|
||||||
|
From nonprofit CFO → hands-on IT & security leader. Homelab, cloud, ops, and practical strategy.
|
||||||
|
</div>
|
||||||
|
<footer class="entry-footer">
|
||||||
|
<div class="social-icons" >
|
||||||
|
<a href="https://www.linkedin.com/in/kennethbondelie" target="_blank" rel="noopener noreferrer me"
|
||||||
|
title="Linkedin">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2"
|
||||||
|
stroke-linecap="round" stroke-linejoin="round">
|
||||||
|
<path d="M16 8a6 6 0 0 1 6 6v7h-4v-7a2 2 0 0 0-2-2 2 2 0 0 0-2 2v7h-4v-7a6 6 0 0 1 6-6z"></path>
|
||||||
|
<rect x="2" y="9" width="4" height="12"></rect>
|
||||||
|
<circle cx="4" cy="4" r="2"></circle>
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</footer>
|
||||||
|
</article>
|
||||||
|
|
||||||
|
<article class="post-entry">
|
||||||
|
<header class="entry-header">
|
||||||
|
<h2 class="entry-hint-parent">Project Log: Docker Dreams and YAML Nightmares
|
||||||
|
</h2>
|
||||||
|
</header>
|
||||||
|
<div class="entry-content">
|
||||||
|
<p> Sometimes the difference between a ‘production-ready stack’ and ‘why is my NAS on fire?’ is one missing space in a YAML file.
|
||||||
It started innocently enough:
|
It started innocently enough:
|
||||||
a single docker-compose.yml, neat and tidy, humming along like a well-trained orchestra. Then I added one new service—my self-hosted note app—and everything fell apart.
|
a single docker-compose.yml, neat and tidy, humming along like a well-trained orchestra. Then I added one new service—my self-hosted note app—and everything fell apart.
|
||||||
The Symptoms Containers refusing to start with no useful logs DNS loops that made my router question its purpose My wife asking, “Why is our TV buffering when you touch the server?” The Diagnosis Turns out, I nested a volume mount under the wrong key.
|
The Symptoms Containers refusing to start with no useful logs DNS loops that made my router question its purpose My wife asking, “Why is our TV buffering when you touch the server?” The Diagnosis Turns out, I nested a volume mount under the wrong key.
|
||||||
YAML: 1 — Human: 0.
|
YAML: 1 — Human: 0.
|
||||||
...</p></div><footer class=entry-footer><span title='2025-11-05 00:00:00 +0000 UTC'>November 5, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer><a class=entry-link aria-label="post link to Project Log: Docker Dreams and YAML Nightmares" href=https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Hello, World — Why Ask Kenny B?</h2></header><div class=entry-content><p>Welcome! This blog will cover:
|
...</p>
|
||||||
Reproducible homelab guides (Proxmox, Docker, Authentik, reverse proxies). Cloud blueprints that scale from personal to org-grade. Transferable leadership → architecture lessons (risk, controls, finance). Thanks for being here—let’s build.</p></div><footer class=entry-footer><span title='2025-11-02 00:00:00 +0000 UTC'>November 2, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer><a class=entry-link aria-label="post link to Hello, World — Why Ask Kenny B?" href=https://askkennyb.com/blog/hello-world-why-ask-kenny-b/></a></article></main><footer class=footer><span>© 2025 <a href=https://askkennyb.com/>Ask KennyB</a></span> ·
|
</div>
|
||||||
<span>Powered by
|
<footer class="entry-footer"><span title='2025-11-05 00:00:00 +0000 UTC'>November 5, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer>
|
||||||
<a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> &
|
<a class="entry-link" aria-label="post link to Project Log: Docker Dreams and YAML Nightmares" href="http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/"></a>
|
||||||
<a href=https://github.com/adityatelange/hugo-PaperMod/ rel=noopener target=_blank>PaperMod</a></span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
|
</article>
|
||||||
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script><script>document.getElementById("theme-toggle").addEventListener("click",()=>{const e=document.querySelector("html");e.dataset.theme==="dark"?(e.dataset.theme="light",localStorage.setItem("pref-theme","light")):(e.dataset.theme="dark",localStorage.setItem("pref-theme","dark"))})</script></body></html>
|
|
||||||
|
<article class="post-entry">
|
||||||
|
<header class="entry-header">
|
||||||
|
<h2 class="entry-hint-parent">Hello, World — Why Ask Kenny B?
|
||||||
|
</h2>
|
||||||
|
</header>
|
||||||
|
<div class="entry-content">
|
||||||
|
<p>Welcome! This blog will cover:
|
||||||
|
Reproducible homelab guides (Proxmox, Docker, Authentik, reverse proxies). Cloud blueprints that scale from personal to org-grade. Transferable leadership → architecture lessons (risk, controls, finance). Thanks for being here—let’s build.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<footer class="entry-footer"><span title='2025-11-02 00:00:00 +0000 UTC'>November 2, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer>
|
||||||
|
<a class="entry-link" aria-label="post link to Hello, World — Why Ask Kenny B?" href="http://localhost:1313/blog/hello-world-why-ask-kenny-b/"></a>
|
||||||
|
</article>
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<span>© 2025 <a href="http://localhost:1313/">Ask KennyB</a></span> ·
|
||||||
|
|
||||||
|
<span>
|
||||||
|
Powered by
|
||||||
|
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
|
||||||
|
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
|
||||||
|
</span>
|
||||||
|
</footer>
|
||||||
|
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
|
||||||
|
<path d="M12 6H0l6-6z" />
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
let menu = document.getElementById('menu');
|
||||||
|
if (menu) {
|
||||||
|
|
||||||
|
const scrollPosition = localStorage.getItem("menu-scroll-position");
|
||||||
|
if (scrollPosition) {
|
||||||
|
menu.scrollLeft = parseInt(scrollPosition, 10);
|
||||||
|
}
|
||||||
|
|
||||||
|
menu.onscroll = function () {
|
||||||
|
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
|
||||||
|
anchor.addEventListener("click", function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var id = this.getAttribute("href").substr(1);
|
||||||
|
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
|
||||||
|
behavior: "smooth"
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
|
||||||
|
}
|
||||||
|
if (id === "top") {
|
||||||
|
history.replaceState(null, null, " ");
|
||||||
|
} else {
|
||||||
|
history.pushState(null, null, `#${id}`);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
var mybutton = document.getElementById("top-link");
|
||||||
|
window.onscroll = function () {
|
||||||
|
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
|
||||||
|
mybutton.style.visibility = "visible";
|
||||||
|
mybutton.style.opacity = "1";
|
||||||
|
} else {
|
||||||
|
mybutton.style.visibility = "hidden";
|
||||||
|
mybutton.style.opacity = "0";
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
document.getElementById("theme-toggle").addEventListener("click", () => {
|
||||||
|
const html = document.querySelector("html");
|
||||||
|
if (html.dataset.theme === "dark") {
|
||||||
|
html.dataset.theme = 'light';
|
||||||
|
localStorage.setItem("pref-theme", 'light');
|
||||||
|
} else {
|
||||||
|
html.dataset.theme = 'dark';
|
||||||
|
localStorage.setItem("pref-theme", 'dark');
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1 +1,26 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Home on Ask KennyB</title><link>https://askkennyb.com/</link><description>Recent content in Home on Ask KennyB</description><generator>Hugo -- 0.152.2</generator><language>en-us</language><lastBuildDate>Wed, 05 Nov 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://askkennyb.com/index.xml" rel="self" type="application/rss+xml"/><item><title>Project Log: Docker Dreams and YAML Nightmares</title><link>https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/</link><pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/</guid><description>A totally serious update on my local lab, featuring unexpected container drama, a misbehaving reverse proxy, and lessons in patience.</description></item><item><title>Hello, World — Why Ask Kenny B?</title><link>https://askkennyb.com/blog/hello-world-why-ask-kenny-b/</link><pubDate>Sun, 02 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/blog/hello-world-why-ask-kenny-b/</guid><description>What this space is about: practical homelab builds, cloud security, and translating leadership into hands-on architecture.</description></item></channel></rss>
|
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||||
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
|
||||||
|
<channel>
|
||||||
|
<title>Home on Ask KennyB</title>
|
||||||
|
<link>http://localhost:1313/</link>
|
||||||
|
<description>Recent content in Home on Ask KennyB</description>
|
||||||
|
<generator>Hugo -- 0.152.2</generator>
|
||||||
|
<language>en-us</language>
|
||||||
|
<lastBuildDate>Wed, 05 Nov 2025 00:00:00 +0000</lastBuildDate>
|
||||||
|
<atom:link href="http://localhost:1313/index.xml" rel="self" type="application/rss+xml" />
|
||||||
|
<item>
|
||||||
|
<title>Project Log: Docker Dreams and YAML Nightmares</title>
|
||||||
|
<link>http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/</link>
|
||||||
|
<pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/</guid>
|
||||||
|
<description>A totally serious update on my local lab, featuring unexpected container drama, a misbehaving reverse proxy, and lessons in patience.</description>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<title>Hello, World — Why Ask Kenny B?</title>
|
||||||
|
<link>http://localhost:1313/blog/hello-world-why-ask-kenny-b/</link>
|
||||||
|
<pubDate>Sun, 02 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/blog/hello-world-why-ask-kenny-b/</guid>
|
||||||
|
<description>What this space is about: practical homelab builds, cloud security, and translating leadership into hands-on architecture.</description>
|
||||||
|
</item>
|
||||||
|
</channel>
|
||||||
|
</rss>
|
||||||
|
|||||||
@@ -1 +1,9 @@
|
|||||||
<!doctype html><html lang=en-us><head><title>https://askkennyb.com/</title><link rel=canonical href=https://askkennyb.com/><meta charset=utf-8><meta http-equiv=refresh content="0; url=https://askkennyb.com/"></head></html>
|
<!DOCTYPE html>
|
||||||
|
<html lang="en-us">
|
||||||
|
<head>
|
||||||
|
<title>http://localhost:1313/</title>
|
||||||
|
<link rel="canonical" href="http://localhost:1313/">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="refresh" content="0; url=http://localhost:1313/">
|
||||||
|
</head>
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1,13 +1,247 @@
|
|||||||
<!doctype html><html lang=en dir=auto data-theme=auto><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Posts | Ask KennyB</title><meta name=keywords content><meta name=description content="Posts - Ask KennyB"><meta name=author content="Kenny Bondelie"><link rel=canonical href=https://askkennyb.com/posts/><link crossorigin=anonymous href=/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as=style><link rel=icon href=https://askkennyb.com/favicon.ico><link rel=icon type=image/png sizes=16x16 href=https://askkennyb.com/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=https://askkennyb.com/favicon-32x32.png><link rel=apple-touch-icon href=https://askkennyb.com/apple-touch-icon.png><link rel=mask-icon href=https://askkennyb.com/safari-pinned-tab.svg><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://askkennyb.com/posts/index.xml title=rss><link rel=alternate hreflang=en href=https://askkennyb.com/posts/><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51);color-scheme:dark}.list{background:var(--theme)}.toc{background:var(--entry)}}@media(prefers-color-scheme:light){.list::-webkit-scrollbar-thumb{border-color:var(--code-bg)}}</style></noscript><script>localStorage.getItem("pref-theme")==="dark"?document.querySelector("html").dataset.theme="dark":localStorage.getItem("pref-theme")==="light"?document.querySelector("html").dataset.theme="light":window.matchMedia("(prefers-color-scheme: dark)").matches?document.querySelector("html").dataset.theme="dark":document.querySelector("html").dataset.theme="light"</script><link rel=preconnect href=https://fonts.googleapis.com><link rel=preconnect href=https://fonts.gstatic.com crossorigin><link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel=stylesheet><link rel=icon href=/favicon.ico sizes=any><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=apple-touch-icon href=/apple-touch-icon.png><link rel=manifest href=/site.webmanifest><meta name=theme-color content="#007a70"><script defer src=https://stats.askkennyb.com/script.js data-website-id=9ff21094-6881-404e-a30e-534c23dde9f8></script><meta property="og:url" content="https://askkennyb.com/posts/"><meta property="og:site_name" content="Ask KennyB"><meta property="og:title" content="Posts"><meta property="og:description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Posts"><meta name=twitter:description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><script type=application/ld+json>{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Posts","item":"https://askkennyb.com/posts/"}]}</script></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://askkennyb.com/ accesskey=h title=" (Alt + H)"><img src=https://askkennyb.com/images/logo_words.svg alt aria-label=logo height=75></a><div class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)" aria-label="Toggle theme">
|
<!DOCTYPE html>
|
||||||
<svg id="moon" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg>
|
<html lang="en" dir="auto" data-theme="auto">
|
||||||
<svg id="sun" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></div></div><ul id=menu><li><a href=https://askkennyb.com/posts/ title=Posts><span class=active>Posts</span></a></li><li><a href=https://askkennyb.com/about/ title=About><span>About</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=https://askkennyb.com/>Home</a></div><h1>Posts</h1></header><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Project Log: Docker Dreams and YAML Nightmares</h2></header><div class=entry-content><p>Sometimes the difference between a ‘production-ready stack’ and ‘why is my NAS on fire?’ is one missing space in a YAML file.
|
|
||||||
|
<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script><meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||||
|
<meta name="robots" content="noindex, nofollow">
|
||||||
|
<title>Posts | Ask KennyB</title>
|
||||||
|
<meta name="keywords" content="">
|
||||||
|
<meta name="description" content="Posts - Ask KennyB">
|
||||||
|
<meta name="author" content="Kenny Bondelie">
|
||||||
|
<link rel="canonical" href="http://localhost:1313/posts/">
|
||||||
|
<link crossorigin="anonymous" href="/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css" integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as="style">
|
||||||
|
<link rel="icon" href="http://localhost:1313/favicon.ico">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/favicon-16x16.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/favicon-32x32.png">
|
||||||
|
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
|
||||||
|
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
|
||||||
|
<meta name="theme-color" content="#2e2e33">
|
||||||
|
<meta name="msapplication-TileColor" content="#2e2e33">
|
||||||
|
<link rel="alternate" type="application/rss+xml" href="http://localhost:1313/posts/index.xml" title="rss">
|
||||||
|
<link rel="alternate" hreflang="en" href="http://localhost:1313/posts/">
|
||||||
|
<noscript>
|
||||||
|
<style>
|
||||||
|
#theme-toggle,
|
||||||
|
.top-link {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
<style>
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
:root {
|
||||||
|
--theme: rgb(29, 30, 32);
|
||||||
|
--entry: rgb(46, 46, 51);
|
||||||
|
--primary: rgb(218, 218, 219);
|
||||||
|
--secondary: rgb(155, 156, 157);
|
||||||
|
--tertiary: rgb(65, 66, 68);
|
||||||
|
--content: rgb(196, 196, 197);
|
||||||
|
--code-block-bg: rgb(46, 46, 51);
|
||||||
|
--code-bg: rgb(55, 56, 62);
|
||||||
|
--border: rgb(51, 51, 51);
|
||||||
|
color-scheme: dark;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list {
|
||||||
|
background: var(--theme);
|
||||||
|
}
|
||||||
|
|
||||||
|
.toc {
|
||||||
|
background: var(--entry);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (prefers-color-scheme: light) {
|
||||||
|
.list::-webkit-scrollbar-thumb {
|
||||||
|
border-color: var(--code-bg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
</noscript>
|
||||||
|
<script>
|
||||||
|
if (localStorage.getItem("pref-theme") === "dark") {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else if (localStorage.getItem("pref-theme") === "light") {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
}
|
||||||
|
|
||||||
|
</script><link rel="preconnect" href="https://fonts.googleapis.com">
|
||||||
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||||
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel="stylesheet">
|
||||||
|
|
||||||
|
<link rel="icon" href="/favicon.ico" sizes="any">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
||||||
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
|
||||||
|
<link rel="manifest" href="/site.webmanifest">
|
||||||
|
<meta name="theme-color" content="#007a70">
|
||||||
|
|
||||||
|
<script defer src="https://stats.askkennyb.com/script.js" data-website-id="9ff21094-6881-404e-a30e-534c23dde9f8"></script>
|
||||||
|
</head>
|
||||||
|
<body class="list" id="top">
|
||||||
|
<header class="header">
|
||||||
|
<nav class="nav">
|
||||||
|
<div class="logo">
|
||||||
|
<a href="http://localhost:1313/" accesskey="h" title=" (Alt + H)">
|
||||||
|
<img src="http://localhost:1313/images/logo_words.svg" alt="" aria-label="logo"
|
||||||
|
height="75"> </a>
|
||||||
|
<div class="logo-switches">
|
||||||
|
<button id="theme-toggle" accesskey="t" title="(Alt + T)" aria-label="Toggle theme">
|
||||||
|
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
||||||
|
</svg>
|
||||||
|
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<circle cx="12" cy="12" r="5"></circle>
|
||||||
|
<line x1="12" y1="1" x2="12" y2="3"></line>
|
||||||
|
<line x1="12" y1="21" x2="12" y2="23"></line>
|
||||||
|
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
||||||
|
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
||||||
|
<line x1="1" y1="12" x2="3" y2="12"></line>
|
||||||
|
<line x1="21" y1="12" x2="23" y2="12"></line>
|
||||||
|
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
||||||
|
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ul id="menu">
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/posts/" title="Posts">
|
||||||
|
<span class="active">Posts</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/about/" title="About">
|
||||||
|
<span>About</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</header>
|
||||||
|
<main class="main">
|
||||||
|
<header class="page-header"><div class="breadcrumbs"><a href="http://localhost:1313/">Home</a></div>
|
||||||
|
<h1>
|
||||||
|
Posts
|
||||||
|
</h1>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<article class="post-entry">
|
||||||
|
<header class="entry-header">
|
||||||
|
<h2 class="entry-hint-parent">Project Log: Docker Dreams and YAML Nightmares
|
||||||
|
</h2>
|
||||||
|
</header>
|
||||||
|
<div class="entry-content">
|
||||||
|
<p> Sometimes the difference between a ‘production-ready stack’ and ‘why is my NAS on fire?’ is one missing space in a YAML file.
|
||||||
It started innocently enough:
|
It started innocently enough:
|
||||||
a single docker-compose.yml, neat and tidy, humming along like a well-trained orchestra. Then I added one new service—my self-hosted note app—and everything fell apart.
|
a single docker-compose.yml, neat and tidy, humming along like a well-trained orchestra. Then I added one new service—my self-hosted note app—and everything fell apart.
|
||||||
The Symptoms Containers refusing to start with no useful logs DNS loops that made my router question its purpose My wife asking, “Why is our TV buffering when you touch the server?” The Diagnosis Turns out, I nested a volume mount under the wrong key.
|
The Symptoms Containers refusing to start with no useful logs DNS loops that made my router question its purpose My wife asking, “Why is our TV buffering when you touch the server?” The Diagnosis Turns out, I nested a volume mount under the wrong key.
|
||||||
YAML: 1 — Human: 0.
|
YAML: 1 — Human: 0.
|
||||||
...</p></div><footer class=entry-footer><span title='2025-11-05 00:00:00 +0000 UTC'>November 5, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer><a class=entry-link aria-label="post link to Project Log: Docker Dreams and YAML Nightmares" href=https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/></a></article><article class=post-entry><header class=entry-header><h2 class=entry-hint-parent>Hello, World — Why Ask Kenny B?</h2></header><div class=entry-content><p>Welcome! This blog will cover:
|
...</p>
|
||||||
Reproducible homelab guides (Proxmox, Docker, Authentik, reverse proxies). Cloud blueprints that scale from personal to org-grade. Transferable leadership → architecture lessons (risk, controls, finance). Thanks for being here—let’s build.</p></div><footer class=entry-footer><span title='2025-11-02 00:00:00 +0000 UTC'>November 2, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer><a class=entry-link aria-label="post link to Hello, World — Why Ask Kenny B?" href=https://askkennyb.com/blog/hello-world-why-ask-kenny-b/></a></article></main><footer class=footer><span>© 2025 <a href=https://askkennyb.com/>Ask KennyB</a></span> ·
|
</div>
|
||||||
<span>Powered by
|
<footer class="entry-footer"><span title='2025-11-05 00:00:00 +0000 UTC'>November 5, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer>
|
||||||
<a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> &
|
<a class="entry-link" aria-label="post link to Project Log: Docker Dreams and YAML Nightmares" href="http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/"></a>
|
||||||
<a href=https://github.com/adityatelange/hugo-PaperMod/ rel=noopener target=_blank>PaperMod</a></span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
|
</article>
|
||||||
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script><script>document.getElementById("theme-toggle").addEventListener("click",()=>{const e=document.querySelector("html");e.dataset.theme==="dark"?(e.dataset.theme="light",localStorage.setItem("pref-theme","light")):(e.dataset.theme="dark",localStorage.setItem("pref-theme","dark"))})</script></body></html>
|
|
||||||
|
<article class="post-entry">
|
||||||
|
<header class="entry-header">
|
||||||
|
<h2 class="entry-hint-parent">Hello, World — Why Ask Kenny B?
|
||||||
|
</h2>
|
||||||
|
</header>
|
||||||
|
<div class="entry-content">
|
||||||
|
<p>Welcome! This blog will cover:
|
||||||
|
Reproducible homelab guides (Proxmox, Docker, Authentik, reverse proxies). Cloud blueprints that scale from personal to org-grade. Transferable leadership → architecture lessons (risk, controls, finance). Thanks for being here—let’s build.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<footer class="entry-footer"><span title='2025-11-02 00:00:00 +0000 UTC'>November 2, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer>
|
||||||
|
<a class="entry-link" aria-label="post link to Hello, World — Why Ask Kenny B?" href="http://localhost:1313/blog/hello-world-why-ask-kenny-b/"></a>
|
||||||
|
</article>
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<span>© 2025 <a href="http://localhost:1313/">Ask KennyB</a></span> ·
|
||||||
|
|
||||||
|
<span>
|
||||||
|
Powered by
|
||||||
|
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
|
||||||
|
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
|
||||||
|
</span>
|
||||||
|
</footer>
|
||||||
|
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
|
||||||
|
<path d="M12 6H0l6-6z" />
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
let menu = document.getElementById('menu');
|
||||||
|
if (menu) {
|
||||||
|
|
||||||
|
const scrollPosition = localStorage.getItem("menu-scroll-position");
|
||||||
|
if (scrollPosition) {
|
||||||
|
menu.scrollLeft = parseInt(scrollPosition, 10);
|
||||||
|
}
|
||||||
|
|
||||||
|
menu.onscroll = function () {
|
||||||
|
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
|
||||||
|
anchor.addEventListener("click", function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var id = this.getAttribute("href").substr(1);
|
||||||
|
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
|
||||||
|
behavior: "smooth"
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
|
||||||
|
}
|
||||||
|
if (id === "top") {
|
||||||
|
history.replaceState(null, null, " ");
|
||||||
|
} else {
|
||||||
|
history.pushState(null, null, `#${id}`);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
var mybutton = document.getElementById("top-link");
|
||||||
|
window.onscroll = function () {
|
||||||
|
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
|
||||||
|
mybutton.style.visibility = "visible";
|
||||||
|
mybutton.style.opacity = "1";
|
||||||
|
} else {
|
||||||
|
mybutton.style.visibility = "hidden";
|
||||||
|
mybutton.style.opacity = "0";
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
document.getElementById("theme-toggle").addEventListener("click", () => {
|
||||||
|
const html = document.querySelector("html");
|
||||||
|
if (html.dataset.theme === "dark") {
|
||||||
|
html.dataset.theme = 'light';
|
||||||
|
localStorage.setItem("pref-theme", 'light');
|
||||||
|
} else {
|
||||||
|
html.dataset.theme = 'dark';
|
||||||
|
localStorage.setItem("pref-theme", 'dark');
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1 +1,26 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Posts on Ask KennyB</title><link>https://askkennyb.com/posts/</link><description>Recent content in Posts on Ask KennyB</description><generator>Hugo -- 0.152.2</generator><language>en-us</language><lastBuildDate>Wed, 05 Nov 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://askkennyb.com/posts/index.xml" rel="self" type="application/rss+xml"/><item><title>Project Log: Docker Dreams and YAML Nightmares</title><link>https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/</link><pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/</guid><description>A totally serious update on my local lab, featuring unexpected container drama, a misbehaving reverse proxy, and lessons in patience.</description></item><item><title>Hello, World — Why Ask Kenny B?</title><link>https://askkennyb.com/blog/hello-world-why-ask-kenny-b/</link><pubDate>Sun, 02 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/blog/hello-world-why-ask-kenny-b/</guid><description>What this space is about: practical homelab builds, cloud security, and translating leadership into hands-on architecture.</description></item></channel></rss>
|
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||||
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
|
||||||
|
<channel>
|
||||||
|
<title>Posts on Ask KennyB</title>
|
||||||
|
<link>http://localhost:1313/posts/</link>
|
||||||
|
<description>Recent content in Posts on Ask KennyB</description>
|
||||||
|
<generator>Hugo -- 0.152.2</generator>
|
||||||
|
<language>en-us</language>
|
||||||
|
<lastBuildDate>Wed, 05 Nov 2025 00:00:00 +0000</lastBuildDate>
|
||||||
|
<atom:link href="http://localhost:1313/posts/index.xml" rel="self" type="application/rss+xml" />
|
||||||
|
<item>
|
||||||
|
<title>Project Log: Docker Dreams and YAML Nightmares</title>
|
||||||
|
<link>http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/</link>
|
||||||
|
<pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/</guid>
|
||||||
|
<description>A totally serious update on my local lab, featuring unexpected container drama, a misbehaving reverse proxy, and lessons in patience.</description>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<title>Hello, World — Why Ask Kenny B?</title>
|
||||||
|
<link>http://localhost:1313/blog/hello-world-why-ask-kenny-b/</link>
|
||||||
|
<pubDate>Sun, 02 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/blog/hello-world-why-ask-kenny-b/</guid>
|
||||||
|
<description>What this space is about: practical homelab builds, cloud security, and translating leadership into hands-on architecture.</description>
|
||||||
|
</item>
|
||||||
|
</channel>
|
||||||
|
</rss>
|
||||||
|
|||||||
@@ -1 +1,9 @@
|
|||||||
<!doctype html><html lang=en-us><head><title>https://askkennyb.com/posts/</title><link rel=canonical href=https://askkennyb.com/posts/><meta charset=utf-8><meta http-equiv=refresh content="0; url=https://askkennyb.com/posts/"></head></html>
|
<!DOCTYPE html>
|
||||||
|
<html lang="en-us">
|
||||||
|
<head>
|
||||||
|
<title>http://localhost:1313/posts/</title>
|
||||||
|
<link rel="canonical" href="http://localhost:1313/posts/">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="refresh" content="0; url=http://localhost:1313/posts/">
|
||||||
|
</head>
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1,3 +1,3 @@
|
|||||||
User-agent: *
|
User-agent: *
|
||||||
Disallow:
|
Disallow: /
|
||||||
Sitemap: https://askkennyb.com/sitemap.xml
|
Sitemap: http://localhost:1313/sitemap.xml
|
||||||
|
|||||||
@@ -1 +1,50 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml"><url><loc>https://askkennyb.com/categories/</loc><lastmod>2025-11-05T00:00:00+00:00</lastmod></url><url><loc>https://askkennyb.com/categories/devops/</loc><lastmod>2025-11-05T00:00:00+00:00</lastmod></url><url><loc>https://askkennyb.com/tags/docker/</loc><lastmod>2025-11-05T00:00:00+00:00</lastmod></url><url><loc>https://askkennyb.com/</loc><lastmod>2025-11-05T00:00:00+00:00</lastmod></url><url><loc>https://askkennyb.com/tags/homelab/</loc><lastmod>2025-11-05T00:00:00+00:00</lastmod></url><url><loc>https://askkennyb.com/tags/humor/</loc><lastmod>2025-11-05T00:00:00+00:00</lastmod></url><url><loc>https://askkennyb.com/tags/networking/</loc><lastmod>2025-11-05T00:00:00+00:00</lastmod></url><url><loc>https://askkennyb.com/posts/</loc><lastmod>2025-11-05T00:00:00+00:00</lastmod></url><url><loc>https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/</loc><lastmod>2025-11-05T00:00:00+00:00</lastmod></url><url><loc>https://askkennyb.com/tags/</loc><lastmod>2025-11-05T00:00:00+00:00</lastmod></url><url><loc>https://askkennyb.com/about/</loc><lastmod>2025-11-03T16:47:38-08:00</lastmod></url><url><loc>https://askkennyb.com/blog/hello-world-why-ask-kenny-b/</loc><lastmod>2025-11-02T00:00:00+00:00</lastmod></url><url><loc>https://askkennyb.com/tags/intro/</loc><lastmod>2025-11-02T00:00:00+00:00</lastmod></url><url><loc>https://askkennyb.com/categories/meta/</loc><lastmod>2025-11-02T00:00:00+00:00</lastmod></url><url><loc>https://askkennyb.com/tags/project/</loc><lastmod>2025-11-02T00:00:00+00:00</lastmod></url></urlset>
|
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||||
|
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9"
|
||||||
|
xmlns:xhtml="http://www.w3.org/1999/xhtml">
|
||||||
|
<url>
|
||||||
|
<loc>http://localhost:1313/categories/</loc>
|
||||||
|
<lastmod>2025-11-05T00:00:00+00:00</lastmod>
|
||||||
|
</url><url>
|
||||||
|
<loc>http://localhost:1313/categories/devops/</loc>
|
||||||
|
<lastmod>2025-11-05T00:00:00+00:00</lastmod>
|
||||||
|
</url><url>
|
||||||
|
<loc>http://localhost:1313/tags/docker/</loc>
|
||||||
|
<lastmod>2025-11-05T00:00:00+00:00</lastmod>
|
||||||
|
</url><url>
|
||||||
|
<loc>http://localhost:1313/</loc>
|
||||||
|
<lastmod>2025-11-05T00:00:00+00:00</lastmod>
|
||||||
|
</url><url>
|
||||||
|
<loc>http://localhost:1313/tags/homelab/</loc>
|
||||||
|
<lastmod>2025-11-05T00:00:00+00:00</lastmod>
|
||||||
|
</url><url>
|
||||||
|
<loc>http://localhost:1313/tags/humor/</loc>
|
||||||
|
<lastmod>2025-11-05T00:00:00+00:00</lastmod>
|
||||||
|
</url><url>
|
||||||
|
<loc>http://localhost:1313/tags/networking/</loc>
|
||||||
|
<lastmod>2025-11-05T00:00:00+00:00</lastmod>
|
||||||
|
</url><url>
|
||||||
|
<loc>http://localhost:1313/posts/</loc>
|
||||||
|
<lastmod>2025-11-05T00:00:00+00:00</lastmod>
|
||||||
|
</url><url>
|
||||||
|
<loc>http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/</loc>
|
||||||
|
<lastmod>2025-11-05T00:00:00+00:00</lastmod>
|
||||||
|
</url><url>
|
||||||
|
<loc>http://localhost:1313/tags/</loc>
|
||||||
|
<lastmod>2025-11-05T00:00:00+00:00</lastmod>
|
||||||
|
</url><url>
|
||||||
|
<loc>http://localhost:1313/about/</loc>
|
||||||
|
<lastmod>2025-11-03T16:47:38-08:00</lastmod>
|
||||||
|
</url><url>
|
||||||
|
<loc>http://localhost:1313/blog/hello-world-why-ask-kenny-b/</loc>
|
||||||
|
<lastmod>2025-11-02T00:00:00+00:00</lastmod>
|
||||||
|
</url><url>
|
||||||
|
<loc>http://localhost:1313/tags/intro/</loc>
|
||||||
|
<lastmod>2025-11-02T00:00:00+00:00</lastmod>
|
||||||
|
</url><url>
|
||||||
|
<loc>http://localhost:1313/categories/meta/</loc>
|
||||||
|
<lastmod>2025-11-02T00:00:00+00:00</lastmod>
|
||||||
|
</url><url>
|
||||||
|
<loc>http://localhost:1313/tags/project/</loc>
|
||||||
|
<lastmod>2025-11-02T00:00:00+00:00</lastmod>
|
||||||
|
</url>
|
||||||
|
</urlset>
|
||||||
|
|||||||
@@ -1,12 +1,233 @@
|
|||||||
<!doctype html><html lang=en dir=auto data-theme=auto><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Docker | Ask KennyB</title><meta name=keywords content><meta name=description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta name=author content="Kenny Bondelie"><link rel=canonical href=https://askkennyb.com/tags/docker/><link crossorigin=anonymous href=/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as=style><link rel=icon href=https://askkennyb.com/favicon.ico><link rel=icon type=image/png sizes=16x16 href=https://askkennyb.com/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=https://askkennyb.com/favicon-32x32.png><link rel=apple-touch-icon href=https://askkennyb.com/apple-touch-icon.png><link rel=mask-icon href=https://askkennyb.com/safari-pinned-tab.svg><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://askkennyb.com/tags/docker/index.xml title=rss><link rel=alternate hreflang=en href=https://askkennyb.com/tags/docker/><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51);color-scheme:dark}.list{background:var(--theme)}.toc{background:var(--entry)}}@media(prefers-color-scheme:light){.list::-webkit-scrollbar-thumb{border-color:var(--code-bg)}}</style></noscript><script>localStorage.getItem("pref-theme")==="dark"?document.querySelector("html").dataset.theme="dark":localStorage.getItem("pref-theme")==="light"?document.querySelector("html").dataset.theme="light":window.matchMedia("(prefers-color-scheme: dark)").matches?document.querySelector("html").dataset.theme="dark":document.querySelector("html").dataset.theme="light"</script><link rel=preconnect href=https://fonts.googleapis.com><link rel=preconnect href=https://fonts.gstatic.com crossorigin><link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel=stylesheet><link rel=icon href=/favicon.ico sizes=any><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=apple-touch-icon href=/apple-touch-icon.png><link rel=manifest href=/site.webmanifest><meta name=theme-color content="#007a70"><script defer src=https://stats.askkennyb.com/script.js data-website-id=9ff21094-6881-404e-a30e-534c23dde9f8></script><meta property="og:url" content="https://askkennyb.com/tags/docker/"><meta property="og:site_name" content="Ask KennyB"><meta property="og:title" content="Docker"><meta property="og:description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Docker"><meta name=twitter:description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://askkennyb.com/ accesskey=h title=" (Alt + H)"><img src=https://askkennyb.com/images/logo_words.svg alt aria-label=logo height=75></a><div class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)" aria-label="Toggle theme">
|
<!DOCTYPE html>
|
||||||
<svg id="moon" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg>
|
<html lang="en" dir="auto" data-theme="auto">
|
||||||
<svg id="sun" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></div></div><ul id=menu><li><a href=https://askkennyb.com/posts/ title=Posts><span>Posts</span></a></li><li><a href=https://askkennyb.com/about/ title=About><span>About</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=https://askkennyb.com/>Home</a> » <a href=https://askkennyb.com/tags/>Tags</a></div><h1>Docker</h1></header><article class="post-entry tag-entry"><header class=entry-header><h2 class=entry-hint-parent>Project Log: Docker Dreams and YAML Nightmares</h2></header><div class=entry-content><p>Sometimes the difference between a ‘production-ready stack’ and ‘why is my NAS on fire?’ is one missing space in a YAML file.
|
|
||||||
|
<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script><meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||||
|
<meta name="robots" content="noindex, nofollow">
|
||||||
|
<title>Docker | Ask KennyB</title>
|
||||||
|
<meta name="keywords" content="">
|
||||||
|
<meta name="description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security.">
|
||||||
|
<meta name="author" content="Kenny Bondelie">
|
||||||
|
<link rel="canonical" href="http://localhost:1313/tags/docker/">
|
||||||
|
<link crossorigin="anonymous" href="/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css" integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as="style">
|
||||||
|
<link rel="icon" href="http://localhost:1313/favicon.ico">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/favicon-16x16.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/favicon-32x32.png">
|
||||||
|
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
|
||||||
|
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
|
||||||
|
<meta name="theme-color" content="#2e2e33">
|
||||||
|
<meta name="msapplication-TileColor" content="#2e2e33">
|
||||||
|
<link rel="alternate" type="application/rss+xml" href="http://localhost:1313/tags/docker/index.xml" title="rss">
|
||||||
|
<link rel="alternate" hreflang="en" href="http://localhost:1313/tags/docker/">
|
||||||
|
<noscript>
|
||||||
|
<style>
|
||||||
|
#theme-toggle,
|
||||||
|
.top-link {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
<style>
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
:root {
|
||||||
|
--theme: rgb(29, 30, 32);
|
||||||
|
--entry: rgb(46, 46, 51);
|
||||||
|
--primary: rgb(218, 218, 219);
|
||||||
|
--secondary: rgb(155, 156, 157);
|
||||||
|
--tertiary: rgb(65, 66, 68);
|
||||||
|
--content: rgb(196, 196, 197);
|
||||||
|
--code-block-bg: rgb(46, 46, 51);
|
||||||
|
--code-bg: rgb(55, 56, 62);
|
||||||
|
--border: rgb(51, 51, 51);
|
||||||
|
color-scheme: dark;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list {
|
||||||
|
background: var(--theme);
|
||||||
|
}
|
||||||
|
|
||||||
|
.toc {
|
||||||
|
background: var(--entry);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (prefers-color-scheme: light) {
|
||||||
|
.list::-webkit-scrollbar-thumb {
|
||||||
|
border-color: var(--code-bg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
</noscript>
|
||||||
|
<script>
|
||||||
|
if (localStorage.getItem("pref-theme") === "dark") {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else if (localStorage.getItem("pref-theme") === "light") {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
}
|
||||||
|
|
||||||
|
</script><link rel="preconnect" href="https://fonts.googleapis.com">
|
||||||
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||||
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel="stylesheet">
|
||||||
|
|
||||||
|
<link rel="icon" href="/favicon.ico" sizes="any">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
||||||
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
|
||||||
|
<link rel="manifest" href="/site.webmanifest">
|
||||||
|
<meta name="theme-color" content="#007a70">
|
||||||
|
|
||||||
|
<script defer src="https://stats.askkennyb.com/script.js" data-website-id="9ff21094-6881-404e-a30e-534c23dde9f8"></script>
|
||||||
|
</head>
|
||||||
|
<body class="list" id="top">
|
||||||
|
<header class="header">
|
||||||
|
<nav class="nav">
|
||||||
|
<div class="logo">
|
||||||
|
<a href="http://localhost:1313/" accesskey="h" title=" (Alt + H)">
|
||||||
|
<img src="http://localhost:1313/images/logo_words.svg" alt="" aria-label="logo"
|
||||||
|
height="75"> </a>
|
||||||
|
<div class="logo-switches">
|
||||||
|
<button id="theme-toggle" accesskey="t" title="(Alt + T)" aria-label="Toggle theme">
|
||||||
|
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
||||||
|
</svg>
|
||||||
|
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<circle cx="12" cy="12" r="5"></circle>
|
||||||
|
<line x1="12" y1="1" x2="12" y2="3"></line>
|
||||||
|
<line x1="12" y1="21" x2="12" y2="23"></line>
|
||||||
|
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
||||||
|
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
||||||
|
<line x1="1" y1="12" x2="3" y2="12"></line>
|
||||||
|
<line x1="21" y1="12" x2="23" y2="12"></line>
|
||||||
|
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
||||||
|
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ul id="menu">
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/posts/" title="Posts">
|
||||||
|
<span>Posts</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/about/" title="About">
|
||||||
|
<span>About</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</header>
|
||||||
|
<main class="main">
|
||||||
|
<header class="page-header"><div class="breadcrumbs"><a href="http://localhost:1313/">Home</a> » <a href="http://localhost:1313/tags/">Tags</a></div>
|
||||||
|
<h1>
|
||||||
|
Docker
|
||||||
|
</h1>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<article class="post-entry tag-entry">
|
||||||
|
<header class="entry-header">
|
||||||
|
<h2 class="entry-hint-parent">Project Log: Docker Dreams and YAML Nightmares
|
||||||
|
</h2>
|
||||||
|
</header>
|
||||||
|
<div class="entry-content">
|
||||||
|
<p> Sometimes the difference between a ‘production-ready stack’ and ‘why is my NAS on fire?’ is one missing space in a YAML file.
|
||||||
It started innocently enough:
|
It started innocently enough:
|
||||||
a single docker-compose.yml, neat and tidy, humming along like a well-trained orchestra. Then I added one new service—my self-hosted note app—and everything fell apart.
|
a single docker-compose.yml, neat and tidy, humming along like a well-trained orchestra. Then I added one new service—my self-hosted note app—and everything fell apart.
|
||||||
The Symptoms Containers refusing to start with no useful logs DNS loops that made my router question its purpose My wife asking, “Why is our TV buffering when you touch the server?” The Diagnosis Turns out, I nested a volume mount under the wrong key.
|
The Symptoms Containers refusing to start with no useful logs DNS loops that made my router question its purpose My wife asking, “Why is our TV buffering when you touch the server?” The Diagnosis Turns out, I nested a volume mount under the wrong key.
|
||||||
YAML: 1 — Human: 0.
|
YAML: 1 — Human: 0.
|
||||||
...</p></div><footer class=entry-footer><span title='2025-11-05 00:00:00 +0000 UTC'>November 5, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer><a class=entry-link aria-label="post link to Project Log: Docker Dreams and YAML Nightmares" href=https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/></a></article></main><footer class=footer><span>© 2025 <a href=https://askkennyb.com/>Ask KennyB</a></span> ·
|
...</p>
|
||||||
<span>Powered by
|
</div>
|
||||||
<a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> &
|
<footer class="entry-footer"><span title='2025-11-05 00:00:00 +0000 UTC'>November 5, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer>
|
||||||
<a href=https://github.com/adityatelange/hugo-PaperMod/ rel=noopener target=_blank>PaperMod</a></span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
|
<a class="entry-link" aria-label="post link to Project Log: Docker Dreams and YAML Nightmares" href="http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/"></a>
|
||||||
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script><script>document.getElementById("theme-toggle").addEventListener("click",()=>{const e=document.querySelector("html");e.dataset.theme==="dark"?(e.dataset.theme="light",localStorage.setItem("pref-theme","light")):(e.dataset.theme="dark",localStorage.setItem("pref-theme","dark"))})</script></body></html>
|
</article>
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<span>© 2025 <a href="http://localhost:1313/">Ask KennyB</a></span> ·
|
||||||
|
|
||||||
|
<span>
|
||||||
|
Powered by
|
||||||
|
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
|
||||||
|
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
|
||||||
|
</span>
|
||||||
|
</footer>
|
||||||
|
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
|
||||||
|
<path d="M12 6H0l6-6z" />
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
let menu = document.getElementById('menu');
|
||||||
|
if (menu) {
|
||||||
|
|
||||||
|
const scrollPosition = localStorage.getItem("menu-scroll-position");
|
||||||
|
if (scrollPosition) {
|
||||||
|
menu.scrollLeft = parseInt(scrollPosition, 10);
|
||||||
|
}
|
||||||
|
|
||||||
|
menu.onscroll = function () {
|
||||||
|
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
|
||||||
|
anchor.addEventListener("click", function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var id = this.getAttribute("href").substr(1);
|
||||||
|
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
|
||||||
|
behavior: "smooth"
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
|
||||||
|
}
|
||||||
|
if (id === "top") {
|
||||||
|
history.replaceState(null, null, " ");
|
||||||
|
} else {
|
||||||
|
history.pushState(null, null, `#${id}`);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
var mybutton = document.getElementById("top-link");
|
||||||
|
window.onscroll = function () {
|
||||||
|
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
|
||||||
|
mybutton.style.visibility = "visible";
|
||||||
|
mybutton.style.opacity = "1";
|
||||||
|
} else {
|
||||||
|
mybutton.style.visibility = "hidden";
|
||||||
|
mybutton.style.opacity = "0";
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
document.getElementById("theme-toggle").addEventListener("click", () => {
|
||||||
|
const html = document.querySelector("html");
|
||||||
|
if (html.dataset.theme === "dark") {
|
||||||
|
html.dataset.theme = 'light';
|
||||||
|
localStorage.setItem("pref-theme", 'light');
|
||||||
|
} else {
|
||||||
|
html.dataset.theme = 'dark';
|
||||||
|
localStorage.setItem("pref-theme", 'dark');
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1 +1,19 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Docker on Ask KennyB</title><link>https://askkennyb.com/tags/docker/</link><description>Recent content in Docker on Ask KennyB</description><generator>Hugo -- 0.152.2</generator><language>en-us</language><lastBuildDate>Wed, 05 Nov 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://askkennyb.com/tags/docker/index.xml" rel="self" type="application/rss+xml"/><item><title>Project Log: Docker Dreams and YAML Nightmares</title><link>https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/</link><pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/</guid><description>A totally serious update on my local lab, featuring unexpected container drama, a misbehaving reverse proxy, and lessons in patience.</description></item></channel></rss>
|
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||||
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
|
||||||
|
<channel>
|
||||||
|
<title>Docker on Ask KennyB</title>
|
||||||
|
<link>http://localhost:1313/tags/docker/</link>
|
||||||
|
<description>Recent content in Docker on Ask KennyB</description>
|
||||||
|
<generator>Hugo -- 0.152.2</generator>
|
||||||
|
<language>en-us</language>
|
||||||
|
<lastBuildDate>Wed, 05 Nov 2025 00:00:00 +0000</lastBuildDate>
|
||||||
|
<atom:link href="http://localhost:1313/tags/docker/index.xml" rel="self" type="application/rss+xml" />
|
||||||
|
<item>
|
||||||
|
<title>Project Log: Docker Dreams and YAML Nightmares</title>
|
||||||
|
<link>http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/</link>
|
||||||
|
<pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/</guid>
|
||||||
|
<description>A totally serious update on my local lab, featuring unexpected container drama, a misbehaving reverse proxy, and lessons in patience.</description>
|
||||||
|
</item>
|
||||||
|
</channel>
|
||||||
|
</rss>
|
||||||
|
|||||||
@@ -1 +1,9 @@
|
|||||||
<!doctype html><html lang=en-us><head><title>https://askkennyb.com/tags/docker/</title><link rel=canonical href=https://askkennyb.com/tags/docker/><meta charset=utf-8><meta http-equiv=refresh content="0; url=https://askkennyb.com/tags/docker/"></head></html>
|
<!DOCTYPE html>
|
||||||
|
<html lang="en-us">
|
||||||
|
<head>
|
||||||
|
<title>http://localhost:1313/tags/docker/</title>
|
||||||
|
<link rel="canonical" href="http://localhost:1313/tags/docker/">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="refresh" content="0; url=http://localhost:1313/tags/docker/">
|
||||||
|
</head>
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1,13 +1,247 @@
|
|||||||
<!doctype html><html lang=en dir=auto data-theme=auto><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Homelab | Ask KennyB</title><meta name=keywords content><meta name=description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta name=author content="Kenny Bondelie"><link rel=canonical href=https://askkennyb.com/tags/homelab/><link crossorigin=anonymous href=/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as=style><link rel=icon href=https://askkennyb.com/favicon.ico><link rel=icon type=image/png sizes=16x16 href=https://askkennyb.com/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=https://askkennyb.com/favicon-32x32.png><link rel=apple-touch-icon href=https://askkennyb.com/apple-touch-icon.png><link rel=mask-icon href=https://askkennyb.com/safari-pinned-tab.svg><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://askkennyb.com/tags/homelab/index.xml title=rss><link rel=alternate hreflang=en href=https://askkennyb.com/tags/homelab/><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51);color-scheme:dark}.list{background:var(--theme)}.toc{background:var(--entry)}}@media(prefers-color-scheme:light){.list::-webkit-scrollbar-thumb{border-color:var(--code-bg)}}</style></noscript><script>localStorage.getItem("pref-theme")==="dark"?document.querySelector("html").dataset.theme="dark":localStorage.getItem("pref-theme")==="light"?document.querySelector("html").dataset.theme="light":window.matchMedia("(prefers-color-scheme: dark)").matches?document.querySelector("html").dataset.theme="dark":document.querySelector("html").dataset.theme="light"</script><link rel=preconnect href=https://fonts.googleapis.com><link rel=preconnect href=https://fonts.gstatic.com crossorigin><link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel=stylesheet><link rel=icon href=/favicon.ico sizes=any><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=apple-touch-icon href=/apple-touch-icon.png><link rel=manifest href=/site.webmanifest><meta name=theme-color content="#007a70"><script defer src=https://stats.askkennyb.com/script.js data-website-id=9ff21094-6881-404e-a30e-534c23dde9f8></script><meta property="og:url" content="https://askkennyb.com/tags/homelab/"><meta property="og:site_name" content="Ask KennyB"><meta property="og:title" content="Homelab"><meta property="og:description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Homelab"><meta name=twitter:description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://askkennyb.com/ accesskey=h title=" (Alt + H)"><img src=https://askkennyb.com/images/logo_words.svg alt aria-label=logo height=75></a><div class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)" aria-label="Toggle theme">
|
<!DOCTYPE html>
|
||||||
<svg id="moon" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg>
|
<html lang="en" dir="auto" data-theme="auto">
|
||||||
<svg id="sun" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></div></div><ul id=menu><li><a href=https://askkennyb.com/posts/ title=Posts><span>Posts</span></a></li><li><a href=https://askkennyb.com/about/ title=About><span>About</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=https://askkennyb.com/>Home</a> » <a href=https://askkennyb.com/tags/>Tags</a></div><h1>Homelab</h1></header><article class="post-entry tag-entry"><header class=entry-header><h2 class=entry-hint-parent>Project Log: Docker Dreams and YAML Nightmares</h2></header><div class=entry-content><p>Sometimes the difference between a ‘production-ready stack’ and ‘why is my NAS on fire?’ is one missing space in a YAML file.
|
|
||||||
|
<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script><meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||||
|
<meta name="robots" content="noindex, nofollow">
|
||||||
|
<title>Homelab | Ask KennyB</title>
|
||||||
|
<meta name="keywords" content="">
|
||||||
|
<meta name="description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security.">
|
||||||
|
<meta name="author" content="Kenny Bondelie">
|
||||||
|
<link rel="canonical" href="http://localhost:1313/tags/homelab/">
|
||||||
|
<link crossorigin="anonymous" href="/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css" integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as="style">
|
||||||
|
<link rel="icon" href="http://localhost:1313/favicon.ico">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/favicon-16x16.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/favicon-32x32.png">
|
||||||
|
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
|
||||||
|
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
|
||||||
|
<meta name="theme-color" content="#2e2e33">
|
||||||
|
<meta name="msapplication-TileColor" content="#2e2e33">
|
||||||
|
<link rel="alternate" type="application/rss+xml" href="http://localhost:1313/tags/homelab/index.xml" title="rss">
|
||||||
|
<link rel="alternate" hreflang="en" href="http://localhost:1313/tags/homelab/">
|
||||||
|
<noscript>
|
||||||
|
<style>
|
||||||
|
#theme-toggle,
|
||||||
|
.top-link {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
<style>
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
:root {
|
||||||
|
--theme: rgb(29, 30, 32);
|
||||||
|
--entry: rgb(46, 46, 51);
|
||||||
|
--primary: rgb(218, 218, 219);
|
||||||
|
--secondary: rgb(155, 156, 157);
|
||||||
|
--tertiary: rgb(65, 66, 68);
|
||||||
|
--content: rgb(196, 196, 197);
|
||||||
|
--code-block-bg: rgb(46, 46, 51);
|
||||||
|
--code-bg: rgb(55, 56, 62);
|
||||||
|
--border: rgb(51, 51, 51);
|
||||||
|
color-scheme: dark;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list {
|
||||||
|
background: var(--theme);
|
||||||
|
}
|
||||||
|
|
||||||
|
.toc {
|
||||||
|
background: var(--entry);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (prefers-color-scheme: light) {
|
||||||
|
.list::-webkit-scrollbar-thumb {
|
||||||
|
border-color: var(--code-bg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
</noscript>
|
||||||
|
<script>
|
||||||
|
if (localStorage.getItem("pref-theme") === "dark") {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else if (localStorage.getItem("pref-theme") === "light") {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
}
|
||||||
|
|
||||||
|
</script><link rel="preconnect" href="https://fonts.googleapis.com">
|
||||||
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||||
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel="stylesheet">
|
||||||
|
|
||||||
|
<link rel="icon" href="/favicon.ico" sizes="any">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
||||||
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
|
||||||
|
<link rel="manifest" href="/site.webmanifest">
|
||||||
|
<meta name="theme-color" content="#007a70">
|
||||||
|
|
||||||
|
<script defer src="https://stats.askkennyb.com/script.js" data-website-id="9ff21094-6881-404e-a30e-534c23dde9f8"></script>
|
||||||
|
</head>
|
||||||
|
<body class="list" id="top">
|
||||||
|
<header class="header">
|
||||||
|
<nav class="nav">
|
||||||
|
<div class="logo">
|
||||||
|
<a href="http://localhost:1313/" accesskey="h" title=" (Alt + H)">
|
||||||
|
<img src="http://localhost:1313/images/logo_words.svg" alt="" aria-label="logo"
|
||||||
|
height="75"> </a>
|
||||||
|
<div class="logo-switches">
|
||||||
|
<button id="theme-toggle" accesskey="t" title="(Alt + T)" aria-label="Toggle theme">
|
||||||
|
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
||||||
|
</svg>
|
||||||
|
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<circle cx="12" cy="12" r="5"></circle>
|
||||||
|
<line x1="12" y1="1" x2="12" y2="3"></line>
|
||||||
|
<line x1="12" y1="21" x2="12" y2="23"></line>
|
||||||
|
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
||||||
|
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
||||||
|
<line x1="1" y1="12" x2="3" y2="12"></line>
|
||||||
|
<line x1="21" y1="12" x2="23" y2="12"></line>
|
||||||
|
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
||||||
|
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ul id="menu">
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/posts/" title="Posts">
|
||||||
|
<span>Posts</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/about/" title="About">
|
||||||
|
<span>About</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</header>
|
||||||
|
<main class="main">
|
||||||
|
<header class="page-header"><div class="breadcrumbs"><a href="http://localhost:1313/">Home</a> » <a href="http://localhost:1313/tags/">Tags</a></div>
|
||||||
|
<h1>
|
||||||
|
Homelab
|
||||||
|
</h1>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<article class="post-entry tag-entry">
|
||||||
|
<header class="entry-header">
|
||||||
|
<h2 class="entry-hint-parent">Project Log: Docker Dreams and YAML Nightmares
|
||||||
|
</h2>
|
||||||
|
</header>
|
||||||
|
<div class="entry-content">
|
||||||
|
<p> Sometimes the difference between a ‘production-ready stack’ and ‘why is my NAS on fire?’ is one missing space in a YAML file.
|
||||||
It started innocently enough:
|
It started innocently enough:
|
||||||
a single docker-compose.yml, neat and tidy, humming along like a well-trained orchestra. Then I added one new service—my self-hosted note app—and everything fell apart.
|
a single docker-compose.yml, neat and tidy, humming along like a well-trained orchestra. Then I added one new service—my self-hosted note app—and everything fell apart.
|
||||||
The Symptoms Containers refusing to start with no useful logs DNS loops that made my router question its purpose My wife asking, “Why is our TV buffering when you touch the server?” The Diagnosis Turns out, I nested a volume mount under the wrong key.
|
The Symptoms Containers refusing to start with no useful logs DNS loops that made my router question its purpose My wife asking, “Why is our TV buffering when you touch the server?” The Diagnosis Turns out, I nested a volume mount under the wrong key.
|
||||||
YAML: 1 — Human: 0.
|
YAML: 1 — Human: 0.
|
||||||
...</p></div><footer class=entry-footer><span title='2025-11-05 00:00:00 +0000 UTC'>November 5, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer><a class=entry-link aria-label="post link to Project Log: Docker Dreams and YAML Nightmares" href=https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/></a></article><article class="post-entry tag-entry"><header class=entry-header><h2 class=entry-hint-parent>Hello, World — Why Ask Kenny B?</h2></header><div class=entry-content><p>Welcome! This blog will cover:
|
...</p>
|
||||||
Reproducible homelab guides (Proxmox, Docker, Authentik, reverse proxies). Cloud blueprints that scale from personal to org-grade. Transferable leadership → architecture lessons (risk, controls, finance). Thanks for being here—let’s build.</p></div><footer class=entry-footer><span title='2025-11-02 00:00:00 +0000 UTC'>November 2, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer><a class=entry-link aria-label="post link to Hello, World — Why Ask Kenny B?" href=https://askkennyb.com/blog/hello-world-why-ask-kenny-b/></a></article></main><footer class=footer><span>© 2025 <a href=https://askkennyb.com/>Ask KennyB</a></span> ·
|
</div>
|
||||||
<span>Powered by
|
<footer class="entry-footer"><span title='2025-11-05 00:00:00 +0000 UTC'>November 5, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer>
|
||||||
<a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> &
|
<a class="entry-link" aria-label="post link to Project Log: Docker Dreams and YAML Nightmares" href="http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/"></a>
|
||||||
<a href=https://github.com/adityatelange/hugo-PaperMod/ rel=noopener target=_blank>PaperMod</a></span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
|
</article>
|
||||||
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script><script>document.getElementById("theme-toggle").addEventListener("click",()=>{const e=document.querySelector("html");e.dataset.theme==="dark"?(e.dataset.theme="light",localStorage.setItem("pref-theme","light")):(e.dataset.theme="dark",localStorage.setItem("pref-theme","dark"))})</script></body></html>
|
|
||||||
|
<article class="post-entry tag-entry">
|
||||||
|
<header class="entry-header">
|
||||||
|
<h2 class="entry-hint-parent">Hello, World — Why Ask Kenny B?
|
||||||
|
</h2>
|
||||||
|
</header>
|
||||||
|
<div class="entry-content">
|
||||||
|
<p>Welcome! This blog will cover:
|
||||||
|
Reproducible homelab guides (Proxmox, Docker, Authentik, reverse proxies). Cloud blueprints that scale from personal to org-grade. Transferable leadership → architecture lessons (risk, controls, finance). Thanks for being here—let’s build.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<footer class="entry-footer"><span title='2025-11-02 00:00:00 +0000 UTC'>November 2, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer>
|
||||||
|
<a class="entry-link" aria-label="post link to Hello, World — Why Ask Kenny B?" href="http://localhost:1313/blog/hello-world-why-ask-kenny-b/"></a>
|
||||||
|
</article>
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<span>© 2025 <a href="http://localhost:1313/">Ask KennyB</a></span> ·
|
||||||
|
|
||||||
|
<span>
|
||||||
|
Powered by
|
||||||
|
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
|
||||||
|
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
|
||||||
|
</span>
|
||||||
|
</footer>
|
||||||
|
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
|
||||||
|
<path d="M12 6H0l6-6z" />
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
let menu = document.getElementById('menu');
|
||||||
|
if (menu) {
|
||||||
|
|
||||||
|
const scrollPosition = localStorage.getItem("menu-scroll-position");
|
||||||
|
if (scrollPosition) {
|
||||||
|
menu.scrollLeft = parseInt(scrollPosition, 10);
|
||||||
|
}
|
||||||
|
|
||||||
|
menu.onscroll = function () {
|
||||||
|
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
|
||||||
|
anchor.addEventListener("click", function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var id = this.getAttribute("href").substr(1);
|
||||||
|
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
|
||||||
|
behavior: "smooth"
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
|
||||||
|
}
|
||||||
|
if (id === "top") {
|
||||||
|
history.replaceState(null, null, " ");
|
||||||
|
} else {
|
||||||
|
history.pushState(null, null, `#${id}`);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
var mybutton = document.getElementById("top-link");
|
||||||
|
window.onscroll = function () {
|
||||||
|
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
|
||||||
|
mybutton.style.visibility = "visible";
|
||||||
|
mybutton.style.opacity = "1";
|
||||||
|
} else {
|
||||||
|
mybutton.style.visibility = "hidden";
|
||||||
|
mybutton.style.opacity = "0";
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
document.getElementById("theme-toggle").addEventListener("click", () => {
|
||||||
|
const html = document.querySelector("html");
|
||||||
|
if (html.dataset.theme === "dark") {
|
||||||
|
html.dataset.theme = 'light';
|
||||||
|
localStorage.setItem("pref-theme", 'light');
|
||||||
|
} else {
|
||||||
|
html.dataset.theme = 'dark';
|
||||||
|
localStorage.setItem("pref-theme", 'dark');
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1 +1,26 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Homelab on Ask KennyB</title><link>https://askkennyb.com/tags/homelab/</link><description>Recent content in Homelab on Ask KennyB</description><generator>Hugo -- 0.152.2</generator><language>en-us</language><lastBuildDate>Wed, 05 Nov 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://askkennyb.com/tags/homelab/index.xml" rel="self" type="application/rss+xml"/><item><title>Project Log: Docker Dreams and YAML Nightmares</title><link>https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/</link><pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/</guid><description>A totally serious update on my local lab, featuring unexpected container drama, a misbehaving reverse proxy, and lessons in patience.</description></item><item><title>Hello, World — Why Ask Kenny B?</title><link>https://askkennyb.com/blog/hello-world-why-ask-kenny-b/</link><pubDate>Sun, 02 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/blog/hello-world-why-ask-kenny-b/</guid><description>What this space is about: practical homelab builds, cloud security, and translating leadership into hands-on architecture.</description></item></channel></rss>
|
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||||
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
|
||||||
|
<channel>
|
||||||
|
<title>Homelab on Ask KennyB</title>
|
||||||
|
<link>http://localhost:1313/tags/homelab/</link>
|
||||||
|
<description>Recent content in Homelab on Ask KennyB</description>
|
||||||
|
<generator>Hugo -- 0.152.2</generator>
|
||||||
|
<language>en-us</language>
|
||||||
|
<lastBuildDate>Wed, 05 Nov 2025 00:00:00 +0000</lastBuildDate>
|
||||||
|
<atom:link href="http://localhost:1313/tags/homelab/index.xml" rel="self" type="application/rss+xml" />
|
||||||
|
<item>
|
||||||
|
<title>Project Log: Docker Dreams and YAML Nightmares</title>
|
||||||
|
<link>http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/</link>
|
||||||
|
<pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/</guid>
|
||||||
|
<description>A totally serious update on my local lab, featuring unexpected container drama, a misbehaving reverse proxy, and lessons in patience.</description>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<title>Hello, World — Why Ask Kenny B?</title>
|
||||||
|
<link>http://localhost:1313/blog/hello-world-why-ask-kenny-b/</link>
|
||||||
|
<pubDate>Sun, 02 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/blog/hello-world-why-ask-kenny-b/</guid>
|
||||||
|
<description>What this space is about: practical homelab builds, cloud security, and translating leadership into hands-on architecture.</description>
|
||||||
|
</item>
|
||||||
|
</channel>
|
||||||
|
</rss>
|
||||||
|
|||||||
@@ -1 +1,9 @@
|
|||||||
<!doctype html><html lang=en-us><head><title>https://askkennyb.com/tags/homelab/</title><link rel=canonical href=https://askkennyb.com/tags/homelab/><meta charset=utf-8><meta http-equiv=refresh content="0; url=https://askkennyb.com/tags/homelab/"></head></html>
|
<!DOCTYPE html>
|
||||||
|
<html lang="en-us">
|
||||||
|
<head>
|
||||||
|
<title>http://localhost:1313/tags/homelab/</title>
|
||||||
|
<link rel="canonical" href="http://localhost:1313/tags/homelab/">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="refresh" content="0; url=http://localhost:1313/tags/homelab/">
|
||||||
|
</head>
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1,12 +1,233 @@
|
|||||||
<!doctype html><html lang=en dir=auto data-theme=auto><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Humor | Ask KennyB</title><meta name=keywords content><meta name=description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta name=author content="Kenny Bondelie"><link rel=canonical href=https://askkennyb.com/tags/humor/><link crossorigin=anonymous href=/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as=style><link rel=icon href=https://askkennyb.com/favicon.ico><link rel=icon type=image/png sizes=16x16 href=https://askkennyb.com/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=https://askkennyb.com/favicon-32x32.png><link rel=apple-touch-icon href=https://askkennyb.com/apple-touch-icon.png><link rel=mask-icon href=https://askkennyb.com/safari-pinned-tab.svg><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://askkennyb.com/tags/humor/index.xml title=rss><link rel=alternate hreflang=en href=https://askkennyb.com/tags/humor/><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51);color-scheme:dark}.list{background:var(--theme)}.toc{background:var(--entry)}}@media(prefers-color-scheme:light){.list::-webkit-scrollbar-thumb{border-color:var(--code-bg)}}</style></noscript><script>localStorage.getItem("pref-theme")==="dark"?document.querySelector("html").dataset.theme="dark":localStorage.getItem("pref-theme")==="light"?document.querySelector("html").dataset.theme="light":window.matchMedia("(prefers-color-scheme: dark)").matches?document.querySelector("html").dataset.theme="dark":document.querySelector("html").dataset.theme="light"</script><link rel=preconnect href=https://fonts.googleapis.com><link rel=preconnect href=https://fonts.gstatic.com crossorigin><link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel=stylesheet><link rel=icon href=/favicon.ico sizes=any><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=apple-touch-icon href=/apple-touch-icon.png><link rel=manifest href=/site.webmanifest><meta name=theme-color content="#007a70"><script defer src=https://stats.askkennyb.com/script.js data-website-id=9ff21094-6881-404e-a30e-534c23dde9f8></script><meta property="og:url" content="https://askkennyb.com/tags/humor/"><meta property="og:site_name" content="Ask KennyB"><meta property="og:title" content="Humor"><meta property="og:description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Humor"><meta name=twitter:description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://askkennyb.com/ accesskey=h title=" (Alt + H)"><img src=https://askkennyb.com/images/logo_words.svg alt aria-label=logo height=75></a><div class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)" aria-label="Toggle theme">
|
<!DOCTYPE html>
|
||||||
<svg id="moon" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg>
|
<html lang="en" dir="auto" data-theme="auto">
|
||||||
<svg id="sun" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></div></div><ul id=menu><li><a href=https://askkennyb.com/posts/ title=Posts><span>Posts</span></a></li><li><a href=https://askkennyb.com/about/ title=About><span>About</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=https://askkennyb.com/>Home</a> » <a href=https://askkennyb.com/tags/>Tags</a></div><h1>Humor</h1></header><article class="post-entry tag-entry"><header class=entry-header><h2 class=entry-hint-parent>Project Log: Docker Dreams and YAML Nightmares</h2></header><div class=entry-content><p>Sometimes the difference between a ‘production-ready stack’ and ‘why is my NAS on fire?’ is one missing space in a YAML file.
|
|
||||||
|
<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script><meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||||
|
<meta name="robots" content="noindex, nofollow">
|
||||||
|
<title>Humor | Ask KennyB</title>
|
||||||
|
<meta name="keywords" content="">
|
||||||
|
<meta name="description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security.">
|
||||||
|
<meta name="author" content="Kenny Bondelie">
|
||||||
|
<link rel="canonical" href="http://localhost:1313/tags/humor/">
|
||||||
|
<link crossorigin="anonymous" href="/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css" integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as="style">
|
||||||
|
<link rel="icon" href="http://localhost:1313/favicon.ico">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/favicon-16x16.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/favicon-32x32.png">
|
||||||
|
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
|
||||||
|
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
|
||||||
|
<meta name="theme-color" content="#2e2e33">
|
||||||
|
<meta name="msapplication-TileColor" content="#2e2e33">
|
||||||
|
<link rel="alternate" type="application/rss+xml" href="http://localhost:1313/tags/humor/index.xml" title="rss">
|
||||||
|
<link rel="alternate" hreflang="en" href="http://localhost:1313/tags/humor/">
|
||||||
|
<noscript>
|
||||||
|
<style>
|
||||||
|
#theme-toggle,
|
||||||
|
.top-link {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
<style>
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
:root {
|
||||||
|
--theme: rgb(29, 30, 32);
|
||||||
|
--entry: rgb(46, 46, 51);
|
||||||
|
--primary: rgb(218, 218, 219);
|
||||||
|
--secondary: rgb(155, 156, 157);
|
||||||
|
--tertiary: rgb(65, 66, 68);
|
||||||
|
--content: rgb(196, 196, 197);
|
||||||
|
--code-block-bg: rgb(46, 46, 51);
|
||||||
|
--code-bg: rgb(55, 56, 62);
|
||||||
|
--border: rgb(51, 51, 51);
|
||||||
|
color-scheme: dark;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list {
|
||||||
|
background: var(--theme);
|
||||||
|
}
|
||||||
|
|
||||||
|
.toc {
|
||||||
|
background: var(--entry);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (prefers-color-scheme: light) {
|
||||||
|
.list::-webkit-scrollbar-thumb {
|
||||||
|
border-color: var(--code-bg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
</noscript>
|
||||||
|
<script>
|
||||||
|
if (localStorage.getItem("pref-theme") === "dark") {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else if (localStorage.getItem("pref-theme") === "light") {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
}
|
||||||
|
|
||||||
|
</script><link rel="preconnect" href="https://fonts.googleapis.com">
|
||||||
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||||
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel="stylesheet">
|
||||||
|
|
||||||
|
<link rel="icon" href="/favicon.ico" sizes="any">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
||||||
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
|
||||||
|
<link rel="manifest" href="/site.webmanifest">
|
||||||
|
<meta name="theme-color" content="#007a70">
|
||||||
|
|
||||||
|
<script defer src="https://stats.askkennyb.com/script.js" data-website-id="9ff21094-6881-404e-a30e-534c23dde9f8"></script>
|
||||||
|
</head>
|
||||||
|
<body class="list" id="top">
|
||||||
|
<header class="header">
|
||||||
|
<nav class="nav">
|
||||||
|
<div class="logo">
|
||||||
|
<a href="http://localhost:1313/" accesskey="h" title=" (Alt + H)">
|
||||||
|
<img src="http://localhost:1313/images/logo_words.svg" alt="" aria-label="logo"
|
||||||
|
height="75"> </a>
|
||||||
|
<div class="logo-switches">
|
||||||
|
<button id="theme-toggle" accesskey="t" title="(Alt + T)" aria-label="Toggle theme">
|
||||||
|
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
||||||
|
</svg>
|
||||||
|
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<circle cx="12" cy="12" r="5"></circle>
|
||||||
|
<line x1="12" y1="1" x2="12" y2="3"></line>
|
||||||
|
<line x1="12" y1="21" x2="12" y2="23"></line>
|
||||||
|
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
||||||
|
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
||||||
|
<line x1="1" y1="12" x2="3" y2="12"></line>
|
||||||
|
<line x1="21" y1="12" x2="23" y2="12"></line>
|
||||||
|
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
||||||
|
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ul id="menu">
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/posts/" title="Posts">
|
||||||
|
<span>Posts</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/about/" title="About">
|
||||||
|
<span>About</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</header>
|
||||||
|
<main class="main">
|
||||||
|
<header class="page-header"><div class="breadcrumbs"><a href="http://localhost:1313/">Home</a> » <a href="http://localhost:1313/tags/">Tags</a></div>
|
||||||
|
<h1>
|
||||||
|
Humor
|
||||||
|
</h1>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<article class="post-entry tag-entry">
|
||||||
|
<header class="entry-header">
|
||||||
|
<h2 class="entry-hint-parent">Project Log: Docker Dreams and YAML Nightmares
|
||||||
|
</h2>
|
||||||
|
</header>
|
||||||
|
<div class="entry-content">
|
||||||
|
<p> Sometimes the difference between a ‘production-ready stack’ and ‘why is my NAS on fire?’ is one missing space in a YAML file.
|
||||||
It started innocently enough:
|
It started innocently enough:
|
||||||
a single docker-compose.yml, neat and tidy, humming along like a well-trained orchestra. Then I added one new service—my self-hosted note app—and everything fell apart.
|
a single docker-compose.yml, neat and tidy, humming along like a well-trained orchestra. Then I added one new service—my self-hosted note app—and everything fell apart.
|
||||||
The Symptoms Containers refusing to start with no useful logs DNS loops that made my router question its purpose My wife asking, “Why is our TV buffering when you touch the server?” The Diagnosis Turns out, I nested a volume mount under the wrong key.
|
The Symptoms Containers refusing to start with no useful logs DNS loops that made my router question its purpose My wife asking, “Why is our TV buffering when you touch the server?” The Diagnosis Turns out, I nested a volume mount under the wrong key.
|
||||||
YAML: 1 — Human: 0.
|
YAML: 1 — Human: 0.
|
||||||
...</p></div><footer class=entry-footer><span title='2025-11-05 00:00:00 +0000 UTC'>November 5, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer><a class=entry-link aria-label="post link to Project Log: Docker Dreams and YAML Nightmares" href=https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/></a></article></main><footer class=footer><span>© 2025 <a href=https://askkennyb.com/>Ask KennyB</a></span> ·
|
...</p>
|
||||||
<span>Powered by
|
</div>
|
||||||
<a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> &
|
<footer class="entry-footer"><span title='2025-11-05 00:00:00 +0000 UTC'>November 5, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer>
|
||||||
<a href=https://github.com/adityatelange/hugo-PaperMod/ rel=noopener target=_blank>PaperMod</a></span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
|
<a class="entry-link" aria-label="post link to Project Log: Docker Dreams and YAML Nightmares" href="http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/"></a>
|
||||||
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script><script>document.getElementById("theme-toggle").addEventListener("click",()=>{const e=document.querySelector("html");e.dataset.theme==="dark"?(e.dataset.theme="light",localStorage.setItem("pref-theme","light")):(e.dataset.theme="dark",localStorage.setItem("pref-theme","dark"))})</script></body></html>
|
</article>
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<span>© 2025 <a href="http://localhost:1313/">Ask KennyB</a></span> ·
|
||||||
|
|
||||||
|
<span>
|
||||||
|
Powered by
|
||||||
|
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
|
||||||
|
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
|
||||||
|
</span>
|
||||||
|
</footer>
|
||||||
|
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
|
||||||
|
<path d="M12 6H0l6-6z" />
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
let menu = document.getElementById('menu');
|
||||||
|
if (menu) {
|
||||||
|
|
||||||
|
const scrollPosition = localStorage.getItem("menu-scroll-position");
|
||||||
|
if (scrollPosition) {
|
||||||
|
menu.scrollLeft = parseInt(scrollPosition, 10);
|
||||||
|
}
|
||||||
|
|
||||||
|
menu.onscroll = function () {
|
||||||
|
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
|
||||||
|
anchor.addEventListener("click", function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var id = this.getAttribute("href").substr(1);
|
||||||
|
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
|
||||||
|
behavior: "smooth"
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
|
||||||
|
}
|
||||||
|
if (id === "top") {
|
||||||
|
history.replaceState(null, null, " ");
|
||||||
|
} else {
|
||||||
|
history.pushState(null, null, `#${id}`);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
var mybutton = document.getElementById("top-link");
|
||||||
|
window.onscroll = function () {
|
||||||
|
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
|
||||||
|
mybutton.style.visibility = "visible";
|
||||||
|
mybutton.style.opacity = "1";
|
||||||
|
} else {
|
||||||
|
mybutton.style.visibility = "hidden";
|
||||||
|
mybutton.style.opacity = "0";
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
document.getElementById("theme-toggle").addEventListener("click", () => {
|
||||||
|
const html = document.querySelector("html");
|
||||||
|
if (html.dataset.theme === "dark") {
|
||||||
|
html.dataset.theme = 'light';
|
||||||
|
localStorage.setItem("pref-theme", 'light');
|
||||||
|
} else {
|
||||||
|
html.dataset.theme = 'dark';
|
||||||
|
localStorage.setItem("pref-theme", 'dark');
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1 +1,19 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Humor on Ask KennyB</title><link>https://askkennyb.com/tags/humor/</link><description>Recent content in Humor on Ask KennyB</description><generator>Hugo -- 0.152.2</generator><language>en-us</language><lastBuildDate>Wed, 05 Nov 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://askkennyb.com/tags/humor/index.xml" rel="self" type="application/rss+xml"/><item><title>Project Log: Docker Dreams and YAML Nightmares</title><link>https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/</link><pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/</guid><description>A totally serious update on my local lab, featuring unexpected container drama, a misbehaving reverse proxy, and lessons in patience.</description></item></channel></rss>
|
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||||
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
|
||||||
|
<channel>
|
||||||
|
<title>Humor on Ask KennyB</title>
|
||||||
|
<link>http://localhost:1313/tags/humor/</link>
|
||||||
|
<description>Recent content in Humor on Ask KennyB</description>
|
||||||
|
<generator>Hugo -- 0.152.2</generator>
|
||||||
|
<language>en-us</language>
|
||||||
|
<lastBuildDate>Wed, 05 Nov 2025 00:00:00 +0000</lastBuildDate>
|
||||||
|
<atom:link href="http://localhost:1313/tags/humor/index.xml" rel="self" type="application/rss+xml" />
|
||||||
|
<item>
|
||||||
|
<title>Project Log: Docker Dreams and YAML Nightmares</title>
|
||||||
|
<link>http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/</link>
|
||||||
|
<pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/</guid>
|
||||||
|
<description>A totally serious update on my local lab, featuring unexpected container drama, a misbehaving reverse proxy, and lessons in patience.</description>
|
||||||
|
</item>
|
||||||
|
</channel>
|
||||||
|
</rss>
|
||||||
|
|||||||
@@ -1 +1,9 @@
|
|||||||
<!doctype html><html lang=en-us><head><title>https://askkennyb.com/tags/humor/</title><link rel=canonical href=https://askkennyb.com/tags/humor/><meta charset=utf-8><meta http-equiv=refresh content="0; url=https://askkennyb.com/tags/humor/"></head></html>
|
<!DOCTYPE html>
|
||||||
|
<html lang="en-us">
|
||||||
|
<head>
|
||||||
|
<title>http://localhost:1313/tags/humor/</title>
|
||||||
|
<link rel="canonical" href="http://localhost:1313/tags/humor/">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="refresh" content="0; url=http://localhost:1313/tags/humor/">
|
||||||
|
</head>
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1,7 +1,235 @@
|
|||||||
<!doctype html><html lang=en dir=auto data-theme=auto><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Tags | Ask KennyB</title><meta name=keywords content><meta name=description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta name=author content="Kenny Bondelie"><link rel=canonical href=https://askkennyb.com/tags/><link crossorigin=anonymous href=/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as=style><link rel=icon href=https://askkennyb.com/favicon.ico><link rel=icon type=image/png sizes=16x16 href=https://askkennyb.com/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=https://askkennyb.com/favicon-32x32.png><link rel=apple-touch-icon href=https://askkennyb.com/apple-touch-icon.png><link rel=mask-icon href=https://askkennyb.com/safari-pinned-tab.svg><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://askkennyb.com/tags/index.xml title=rss><link rel=alternate hreflang=en href=https://askkennyb.com/tags/><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51);color-scheme:dark}.list{background:var(--theme)}.toc{background:var(--entry)}}@media(prefers-color-scheme:light){.list::-webkit-scrollbar-thumb{border-color:var(--code-bg)}}</style></noscript><script>localStorage.getItem("pref-theme")==="dark"?document.querySelector("html").dataset.theme="dark":localStorage.getItem("pref-theme")==="light"?document.querySelector("html").dataset.theme="light":window.matchMedia("(prefers-color-scheme: dark)").matches?document.querySelector("html").dataset.theme="dark":document.querySelector("html").dataset.theme="light"</script><link rel=preconnect href=https://fonts.googleapis.com><link rel=preconnect href=https://fonts.gstatic.com crossorigin><link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel=stylesheet><link rel=icon href=/favicon.ico sizes=any><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=apple-touch-icon href=/apple-touch-icon.png><link rel=manifest href=/site.webmanifest><meta name=theme-color content="#007a70"><script defer src=https://stats.askkennyb.com/script.js data-website-id=9ff21094-6881-404e-a30e-534c23dde9f8></script><meta property="og:url" content="https://askkennyb.com/tags/"><meta property="og:site_name" content="Ask KennyB"><meta property="og:title" content="Tags"><meta property="og:description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Tags"><meta name=twitter:description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://askkennyb.com/ accesskey=h title=" (Alt + H)"><img src=https://askkennyb.com/images/logo_words.svg alt aria-label=logo height=75></a><div class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)" aria-label="Toggle theme">
|
<!DOCTYPE html>
|
||||||
<svg id="moon" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg>
|
<html lang="en" dir="auto" data-theme="auto">
|
||||||
<svg id="sun" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></div></div><ul id=menu><li><a href=https://askkennyb.com/posts/ title=Posts><span>Posts</span></a></li><li><a href=https://askkennyb.com/about/ title=About><span>About</span></a></li></ul></nav></header><main class=main><header class=page-header><h1>Tags</h1></header><ul class=terms-tags><li><a href=https://askkennyb.com/tags/docker/>docker <sup><strong><sup>1</sup></strong></sup></a></li><li><a href=https://askkennyb.com/tags/homelab/>homelab <sup><strong><sup>2</sup></strong></sup></a></li><li><a href=https://askkennyb.com/tags/humor/>humor <sup><strong><sup>1</sup></strong></sup></a></li><li><a href=https://askkennyb.com/tags/intro/>intro <sup><strong><sup>1</sup></strong></sup></a></li><li><a href=https://askkennyb.com/tags/networking/>networking <sup><strong><sup>1</sup></strong></sup></a></li><li><a href=https://askkennyb.com/tags/project/>project <sup><strong><sup>1</sup></strong></sup></a></li></ul></main><footer class=footer><span>© 2025 <a href=https://askkennyb.com/>Ask KennyB</a></span> ·
|
|
||||||
<span>Powered by
|
<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script><meta charset="utf-8">
|
||||||
<a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> &
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<a href=https://github.com/adityatelange/hugo-PaperMod/ rel=noopener target=_blank>PaperMod</a></span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||||
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script><script>document.getElementById("theme-toggle").addEventListener("click",()=>{const e=document.querySelector("html");e.dataset.theme==="dark"?(e.dataset.theme="light",localStorage.setItem("pref-theme","light")):(e.dataset.theme="dark",localStorage.setItem("pref-theme","dark"))})</script></body></html>
|
<meta name="robots" content="noindex, nofollow">
|
||||||
|
<title>Tags | Ask KennyB</title>
|
||||||
|
<meta name="keywords" content="">
|
||||||
|
<meta name="description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security.">
|
||||||
|
<meta name="author" content="Kenny Bondelie">
|
||||||
|
<link rel="canonical" href="http://localhost:1313/tags/">
|
||||||
|
<link crossorigin="anonymous" href="/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css" integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as="style">
|
||||||
|
<link rel="icon" href="http://localhost:1313/favicon.ico">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/favicon-16x16.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/favicon-32x32.png">
|
||||||
|
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
|
||||||
|
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
|
||||||
|
<meta name="theme-color" content="#2e2e33">
|
||||||
|
<meta name="msapplication-TileColor" content="#2e2e33">
|
||||||
|
<link rel="alternate" type="application/rss+xml" href="http://localhost:1313/tags/index.xml" title="rss">
|
||||||
|
<link rel="alternate" hreflang="en" href="http://localhost:1313/tags/">
|
||||||
|
<noscript>
|
||||||
|
<style>
|
||||||
|
#theme-toggle,
|
||||||
|
.top-link {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
<style>
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
:root {
|
||||||
|
--theme: rgb(29, 30, 32);
|
||||||
|
--entry: rgb(46, 46, 51);
|
||||||
|
--primary: rgb(218, 218, 219);
|
||||||
|
--secondary: rgb(155, 156, 157);
|
||||||
|
--tertiary: rgb(65, 66, 68);
|
||||||
|
--content: rgb(196, 196, 197);
|
||||||
|
--code-block-bg: rgb(46, 46, 51);
|
||||||
|
--code-bg: rgb(55, 56, 62);
|
||||||
|
--border: rgb(51, 51, 51);
|
||||||
|
color-scheme: dark;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list {
|
||||||
|
background: var(--theme);
|
||||||
|
}
|
||||||
|
|
||||||
|
.toc {
|
||||||
|
background: var(--entry);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (prefers-color-scheme: light) {
|
||||||
|
.list::-webkit-scrollbar-thumb {
|
||||||
|
border-color: var(--code-bg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
</noscript>
|
||||||
|
<script>
|
||||||
|
if (localStorage.getItem("pref-theme") === "dark") {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else if (localStorage.getItem("pref-theme") === "light") {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
}
|
||||||
|
|
||||||
|
</script><link rel="preconnect" href="https://fonts.googleapis.com">
|
||||||
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||||
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel="stylesheet">
|
||||||
|
|
||||||
|
<link rel="icon" href="/favicon.ico" sizes="any">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
||||||
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
|
||||||
|
<link rel="manifest" href="/site.webmanifest">
|
||||||
|
<meta name="theme-color" content="#007a70">
|
||||||
|
|
||||||
|
<script defer src="https://stats.askkennyb.com/script.js" data-website-id="9ff21094-6881-404e-a30e-534c23dde9f8"></script>
|
||||||
|
</head>
|
||||||
|
<body class="list" id="top">
|
||||||
|
<header class="header">
|
||||||
|
<nav class="nav">
|
||||||
|
<div class="logo">
|
||||||
|
<a href="http://localhost:1313/" accesskey="h" title=" (Alt + H)">
|
||||||
|
<img src="http://localhost:1313/images/logo_words.svg" alt="" aria-label="logo"
|
||||||
|
height="75"> </a>
|
||||||
|
<div class="logo-switches">
|
||||||
|
<button id="theme-toggle" accesskey="t" title="(Alt + T)" aria-label="Toggle theme">
|
||||||
|
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
||||||
|
</svg>
|
||||||
|
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<circle cx="12" cy="12" r="5"></circle>
|
||||||
|
<line x1="12" y1="1" x2="12" y2="3"></line>
|
||||||
|
<line x1="12" y1="21" x2="12" y2="23"></line>
|
||||||
|
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
||||||
|
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
||||||
|
<line x1="1" y1="12" x2="3" y2="12"></line>
|
||||||
|
<line x1="21" y1="12" x2="23" y2="12"></line>
|
||||||
|
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
||||||
|
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ul id="menu">
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/posts/" title="Posts">
|
||||||
|
<span>Posts</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/about/" title="About">
|
||||||
|
<span>About</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</header>
|
||||||
|
<main class="main">
|
||||||
|
<header class="page-header">
|
||||||
|
<h1>Tags</h1>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<ul class="terms-tags">
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/tags/docker/">docker <sup><strong><sup>1</sup></strong></sup> </a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/tags/homelab/">homelab <sup><strong><sup>2</sup></strong></sup> </a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/tags/humor/">humor <sup><strong><sup>1</sup></strong></sup> </a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/tags/intro/">intro <sup><strong><sup>1</sup></strong></sup> </a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/tags/networking/">networking <sup><strong><sup>1</sup></strong></sup> </a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/tags/project/">project <sup><strong><sup>1</sup></strong></sup> </a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<span>© 2025 <a href="http://localhost:1313/">Ask KennyB</a></span> ·
|
||||||
|
|
||||||
|
<span>
|
||||||
|
Powered by
|
||||||
|
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
|
||||||
|
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
|
||||||
|
</span>
|
||||||
|
</footer>
|
||||||
|
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
|
||||||
|
<path d="M12 6H0l6-6z" />
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
let menu = document.getElementById('menu');
|
||||||
|
if (menu) {
|
||||||
|
|
||||||
|
const scrollPosition = localStorage.getItem("menu-scroll-position");
|
||||||
|
if (scrollPosition) {
|
||||||
|
menu.scrollLeft = parseInt(scrollPosition, 10);
|
||||||
|
}
|
||||||
|
|
||||||
|
menu.onscroll = function () {
|
||||||
|
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
|
||||||
|
anchor.addEventListener("click", function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var id = this.getAttribute("href").substr(1);
|
||||||
|
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
|
||||||
|
behavior: "smooth"
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
|
||||||
|
}
|
||||||
|
if (id === "top") {
|
||||||
|
history.replaceState(null, null, " ");
|
||||||
|
} else {
|
||||||
|
history.pushState(null, null, `#${id}`);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
var mybutton = document.getElementById("top-link");
|
||||||
|
window.onscroll = function () {
|
||||||
|
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
|
||||||
|
mybutton.style.visibility = "visible";
|
||||||
|
mybutton.style.opacity = "1";
|
||||||
|
} else {
|
||||||
|
mybutton.style.visibility = "hidden";
|
||||||
|
mybutton.style.opacity = "0";
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
document.getElementById("theme-toggle").addEventListener("click", () => {
|
||||||
|
const html = document.querySelector("html");
|
||||||
|
if (html.dataset.theme === "dark") {
|
||||||
|
html.dataset.theme = 'light';
|
||||||
|
localStorage.setItem("pref-theme", 'light');
|
||||||
|
} else {
|
||||||
|
html.dataset.theme = 'dark';
|
||||||
|
localStorage.setItem("pref-theme", 'dark');
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1 +1,54 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Tags on Ask KennyB</title><link>https://askkennyb.com/tags/</link><description>Recent content in Tags on Ask KennyB</description><generator>Hugo -- 0.152.2</generator><language>en-us</language><lastBuildDate>Wed, 05 Nov 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://askkennyb.com/tags/index.xml" rel="self" type="application/rss+xml"/><item><title>Docker</title><link>https://askkennyb.com/tags/docker/</link><pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/tags/docker/</guid><description/></item><item><title>Homelab</title><link>https://askkennyb.com/tags/homelab/</link><pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/tags/homelab/</guid><description/></item><item><title>Humor</title><link>https://askkennyb.com/tags/humor/</link><pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/tags/humor/</guid><description/></item><item><title>Networking</title><link>https://askkennyb.com/tags/networking/</link><pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/tags/networking/</guid><description/></item><item><title>Intro</title><link>https://askkennyb.com/tags/intro/</link><pubDate>Sun, 02 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/tags/intro/</guid><description/></item><item><title>Project</title><link>https://askkennyb.com/tags/project/</link><pubDate>Sun, 02 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/tags/project/</guid><description/></item></channel></rss>
|
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||||
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
|
||||||
|
<channel>
|
||||||
|
<title>Tags on Ask KennyB</title>
|
||||||
|
<link>http://localhost:1313/tags/</link>
|
||||||
|
<description>Recent content in Tags on Ask KennyB</description>
|
||||||
|
<generator>Hugo -- 0.152.2</generator>
|
||||||
|
<language>en-us</language>
|
||||||
|
<lastBuildDate>Wed, 05 Nov 2025 00:00:00 +0000</lastBuildDate>
|
||||||
|
<atom:link href="http://localhost:1313/tags/index.xml" rel="self" type="application/rss+xml" />
|
||||||
|
<item>
|
||||||
|
<title>Docker</title>
|
||||||
|
<link>http://localhost:1313/tags/docker/</link>
|
||||||
|
<pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/tags/docker/</guid>
|
||||||
|
<description></description>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<title>Homelab</title>
|
||||||
|
<link>http://localhost:1313/tags/homelab/</link>
|
||||||
|
<pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/tags/homelab/</guid>
|
||||||
|
<description></description>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<title>Humor</title>
|
||||||
|
<link>http://localhost:1313/tags/humor/</link>
|
||||||
|
<pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/tags/humor/</guid>
|
||||||
|
<description></description>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<title>Networking</title>
|
||||||
|
<link>http://localhost:1313/tags/networking/</link>
|
||||||
|
<pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/tags/networking/</guid>
|
||||||
|
<description></description>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<title>Intro</title>
|
||||||
|
<link>http://localhost:1313/tags/intro/</link>
|
||||||
|
<pubDate>Sun, 02 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/tags/intro/</guid>
|
||||||
|
<description></description>
|
||||||
|
</item>
|
||||||
|
<item>
|
||||||
|
<title>Project</title>
|
||||||
|
<link>http://localhost:1313/tags/project/</link>
|
||||||
|
<pubDate>Sun, 02 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/tags/project/</guid>
|
||||||
|
<description></description>
|
||||||
|
</item>
|
||||||
|
</channel>
|
||||||
|
</rss>
|
||||||
|
|||||||
@@ -1,8 +1,230 @@
|
|||||||
<!doctype html><html lang=en dir=auto data-theme=auto><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Intro | Ask KennyB</title><meta name=keywords content><meta name=description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta name=author content="Kenny Bondelie"><link rel=canonical href=https://askkennyb.com/tags/intro/><link crossorigin=anonymous href=/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as=style><link rel=icon href=https://askkennyb.com/favicon.ico><link rel=icon type=image/png sizes=16x16 href=https://askkennyb.com/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=https://askkennyb.com/favicon-32x32.png><link rel=apple-touch-icon href=https://askkennyb.com/apple-touch-icon.png><link rel=mask-icon href=https://askkennyb.com/safari-pinned-tab.svg><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://askkennyb.com/tags/intro/index.xml title=rss><link rel=alternate hreflang=en href=https://askkennyb.com/tags/intro/><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51);color-scheme:dark}.list{background:var(--theme)}.toc{background:var(--entry)}}@media(prefers-color-scheme:light){.list::-webkit-scrollbar-thumb{border-color:var(--code-bg)}}</style></noscript><script>localStorage.getItem("pref-theme")==="dark"?document.querySelector("html").dataset.theme="dark":localStorage.getItem("pref-theme")==="light"?document.querySelector("html").dataset.theme="light":window.matchMedia("(prefers-color-scheme: dark)").matches?document.querySelector("html").dataset.theme="dark":document.querySelector("html").dataset.theme="light"</script><link rel=preconnect href=https://fonts.googleapis.com><link rel=preconnect href=https://fonts.gstatic.com crossorigin><link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel=stylesheet><link rel=icon href=/favicon.ico sizes=any><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=apple-touch-icon href=/apple-touch-icon.png><link rel=manifest href=/site.webmanifest><meta name=theme-color content="#007a70"><script defer src=https://stats.askkennyb.com/script.js data-website-id=9ff21094-6881-404e-a30e-534c23dde9f8></script><meta property="og:url" content="https://askkennyb.com/tags/intro/"><meta property="og:site_name" content="Ask KennyB"><meta property="og:title" content="Intro"><meta property="og:description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Intro"><meta name=twitter:description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://askkennyb.com/ accesskey=h title=" (Alt + H)"><img src=https://askkennyb.com/images/logo_words.svg alt aria-label=logo height=75></a><div class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)" aria-label="Toggle theme">
|
<!DOCTYPE html>
|
||||||
<svg id="moon" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg>
|
<html lang="en" dir="auto" data-theme="auto">
|
||||||
<svg id="sun" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></div></div><ul id=menu><li><a href=https://askkennyb.com/posts/ title=Posts><span>Posts</span></a></li><li><a href=https://askkennyb.com/about/ title=About><span>About</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=https://askkennyb.com/>Home</a> » <a href=https://askkennyb.com/tags/>Tags</a></div><h1>Intro</h1></header><article class="post-entry tag-entry"><header class=entry-header><h2 class=entry-hint-parent>Hello, World — Why Ask Kenny B?</h2></header><div class=entry-content><p>Welcome! This blog will cover:
|
|
||||||
Reproducible homelab guides (Proxmox, Docker, Authentik, reverse proxies). Cloud blueprints that scale from personal to org-grade. Transferable leadership → architecture lessons (risk, controls, finance). Thanks for being here—let’s build.</p></div><footer class=entry-footer><span title='2025-11-02 00:00:00 +0000 UTC'>November 2, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer><a class=entry-link aria-label="post link to Hello, World — Why Ask Kenny B?" href=https://askkennyb.com/blog/hello-world-why-ask-kenny-b/></a></article></main><footer class=footer><span>© 2025 <a href=https://askkennyb.com/>Ask KennyB</a></span> ·
|
<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script><meta charset="utf-8">
|
||||||
<span>Powered by
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> &
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||||
<a href=https://github.com/adityatelange/hugo-PaperMod/ rel=noopener target=_blank>PaperMod</a></span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
|
<meta name="robots" content="noindex, nofollow">
|
||||||
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script><script>document.getElementById("theme-toggle").addEventListener("click",()=>{const e=document.querySelector("html");e.dataset.theme==="dark"?(e.dataset.theme="light",localStorage.setItem("pref-theme","light")):(e.dataset.theme="dark",localStorage.setItem("pref-theme","dark"))})</script></body></html>
|
<title>Intro | Ask KennyB</title>
|
||||||
|
<meta name="keywords" content="">
|
||||||
|
<meta name="description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security.">
|
||||||
|
<meta name="author" content="Kenny Bondelie">
|
||||||
|
<link rel="canonical" href="http://localhost:1313/tags/intro/">
|
||||||
|
<link crossorigin="anonymous" href="/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css" integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as="style">
|
||||||
|
<link rel="icon" href="http://localhost:1313/favicon.ico">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/favicon-16x16.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/favicon-32x32.png">
|
||||||
|
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
|
||||||
|
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
|
||||||
|
<meta name="theme-color" content="#2e2e33">
|
||||||
|
<meta name="msapplication-TileColor" content="#2e2e33">
|
||||||
|
<link rel="alternate" type="application/rss+xml" href="http://localhost:1313/tags/intro/index.xml" title="rss">
|
||||||
|
<link rel="alternate" hreflang="en" href="http://localhost:1313/tags/intro/">
|
||||||
|
<noscript>
|
||||||
|
<style>
|
||||||
|
#theme-toggle,
|
||||||
|
.top-link {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
<style>
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
:root {
|
||||||
|
--theme: rgb(29, 30, 32);
|
||||||
|
--entry: rgb(46, 46, 51);
|
||||||
|
--primary: rgb(218, 218, 219);
|
||||||
|
--secondary: rgb(155, 156, 157);
|
||||||
|
--tertiary: rgb(65, 66, 68);
|
||||||
|
--content: rgb(196, 196, 197);
|
||||||
|
--code-block-bg: rgb(46, 46, 51);
|
||||||
|
--code-bg: rgb(55, 56, 62);
|
||||||
|
--border: rgb(51, 51, 51);
|
||||||
|
color-scheme: dark;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list {
|
||||||
|
background: var(--theme);
|
||||||
|
}
|
||||||
|
|
||||||
|
.toc {
|
||||||
|
background: var(--entry);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (prefers-color-scheme: light) {
|
||||||
|
.list::-webkit-scrollbar-thumb {
|
||||||
|
border-color: var(--code-bg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
</noscript>
|
||||||
|
<script>
|
||||||
|
if (localStorage.getItem("pref-theme") === "dark") {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else if (localStorage.getItem("pref-theme") === "light") {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
}
|
||||||
|
|
||||||
|
</script><link rel="preconnect" href="https://fonts.googleapis.com">
|
||||||
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||||
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel="stylesheet">
|
||||||
|
|
||||||
|
<link rel="icon" href="/favicon.ico" sizes="any">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
||||||
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
|
||||||
|
<link rel="manifest" href="/site.webmanifest">
|
||||||
|
<meta name="theme-color" content="#007a70">
|
||||||
|
|
||||||
|
<script defer src="https://stats.askkennyb.com/script.js" data-website-id="9ff21094-6881-404e-a30e-534c23dde9f8"></script>
|
||||||
|
</head>
|
||||||
|
<body class="list" id="top">
|
||||||
|
<header class="header">
|
||||||
|
<nav class="nav">
|
||||||
|
<div class="logo">
|
||||||
|
<a href="http://localhost:1313/" accesskey="h" title=" (Alt + H)">
|
||||||
|
<img src="http://localhost:1313/images/logo_words.svg" alt="" aria-label="logo"
|
||||||
|
height="75"> </a>
|
||||||
|
<div class="logo-switches">
|
||||||
|
<button id="theme-toggle" accesskey="t" title="(Alt + T)" aria-label="Toggle theme">
|
||||||
|
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
||||||
|
</svg>
|
||||||
|
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<circle cx="12" cy="12" r="5"></circle>
|
||||||
|
<line x1="12" y1="1" x2="12" y2="3"></line>
|
||||||
|
<line x1="12" y1="21" x2="12" y2="23"></line>
|
||||||
|
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
||||||
|
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
||||||
|
<line x1="1" y1="12" x2="3" y2="12"></line>
|
||||||
|
<line x1="21" y1="12" x2="23" y2="12"></line>
|
||||||
|
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
||||||
|
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ul id="menu">
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/posts/" title="Posts">
|
||||||
|
<span>Posts</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/about/" title="About">
|
||||||
|
<span>About</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</header>
|
||||||
|
<main class="main">
|
||||||
|
<header class="page-header"><div class="breadcrumbs"><a href="http://localhost:1313/">Home</a> » <a href="http://localhost:1313/tags/">Tags</a></div>
|
||||||
|
<h1>
|
||||||
|
Intro
|
||||||
|
</h1>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<article class="post-entry tag-entry">
|
||||||
|
<header class="entry-header">
|
||||||
|
<h2 class="entry-hint-parent">Hello, World — Why Ask Kenny B?
|
||||||
|
</h2>
|
||||||
|
</header>
|
||||||
|
<div class="entry-content">
|
||||||
|
<p>Welcome! This blog will cover:
|
||||||
|
Reproducible homelab guides (Proxmox, Docker, Authentik, reverse proxies). Cloud blueprints that scale from personal to org-grade. Transferable leadership → architecture lessons (risk, controls, finance). Thanks for being here—let’s build.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<footer class="entry-footer"><span title='2025-11-02 00:00:00 +0000 UTC'>November 2, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer>
|
||||||
|
<a class="entry-link" aria-label="post link to Hello, World — Why Ask Kenny B?" href="http://localhost:1313/blog/hello-world-why-ask-kenny-b/"></a>
|
||||||
|
</article>
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<span>© 2025 <a href="http://localhost:1313/">Ask KennyB</a></span> ·
|
||||||
|
|
||||||
|
<span>
|
||||||
|
Powered by
|
||||||
|
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
|
||||||
|
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
|
||||||
|
</span>
|
||||||
|
</footer>
|
||||||
|
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
|
||||||
|
<path d="M12 6H0l6-6z" />
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
let menu = document.getElementById('menu');
|
||||||
|
if (menu) {
|
||||||
|
|
||||||
|
const scrollPosition = localStorage.getItem("menu-scroll-position");
|
||||||
|
if (scrollPosition) {
|
||||||
|
menu.scrollLeft = parseInt(scrollPosition, 10);
|
||||||
|
}
|
||||||
|
|
||||||
|
menu.onscroll = function () {
|
||||||
|
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
|
||||||
|
anchor.addEventListener("click", function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var id = this.getAttribute("href").substr(1);
|
||||||
|
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
|
||||||
|
behavior: "smooth"
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
|
||||||
|
}
|
||||||
|
if (id === "top") {
|
||||||
|
history.replaceState(null, null, " ");
|
||||||
|
} else {
|
||||||
|
history.pushState(null, null, `#${id}`);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
var mybutton = document.getElementById("top-link");
|
||||||
|
window.onscroll = function () {
|
||||||
|
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
|
||||||
|
mybutton.style.visibility = "visible";
|
||||||
|
mybutton.style.opacity = "1";
|
||||||
|
} else {
|
||||||
|
mybutton.style.visibility = "hidden";
|
||||||
|
mybutton.style.opacity = "0";
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
document.getElementById("theme-toggle").addEventListener("click", () => {
|
||||||
|
const html = document.querySelector("html");
|
||||||
|
if (html.dataset.theme === "dark") {
|
||||||
|
html.dataset.theme = 'light';
|
||||||
|
localStorage.setItem("pref-theme", 'light');
|
||||||
|
} else {
|
||||||
|
html.dataset.theme = 'dark';
|
||||||
|
localStorage.setItem("pref-theme", 'dark');
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1 +1,19 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Intro on Ask KennyB</title><link>https://askkennyb.com/tags/intro/</link><description>Recent content in Intro on Ask KennyB</description><generator>Hugo -- 0.152.2</generator><language>en-us</language><lastBuildDate>Sun, 02 Nov 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://askkennyb.com/tags/intro/index.xml" rel="self" type="application/rss+xml"/><item><title>Hello, World — Why Ask Kenny B?</title><link>https://askkennyb.com/blog/hello-world-why-ask-kenny-b/</link><pubDate>Sun, 02 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/blog/hello-world-why-ask-kenny-b/</guid><description>What this space is about: practical homelab builds, cloud security, and translating leadership into hands-on architecture.</description></item></channel></rss>
|
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||||
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
|
||||||
|
<channel>
|
||||||
|
<title>Intro on Ask KennyB</title>
|
||||||
|
<link>http://localhost:1313/tags/intro/</link>
|
||||||
|
<description>Recent content in Intro on Ask KennyB</description>
|
||||||
|
<generator>Hugo -- 0.152.2</generator>
|
||||||
|
<language>en-us</language>
|
||||||
|
<lastBuildDate>Sun, 02 Nov 2025 00:00:00 +0000</lastBuildDate>
|
||||||
|
<atom:link href="http://localhost:1313/tags/intro/index.xml" rel="self" type="application/rss+xml" />
|
||||||
|
<item>
|
||||||
|
<title>Hello, World — Why Ask Kenny B?</title>
|
||||||
|
<link>http://localhost:1313/blog/hello-world-why-ask-kenny-b/</link>
|
||||||
|
<pubDate>Sun, 02 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/blog/hello-world-why-ask-kenny-b/</guid>
|
||||||
|
<description>What this space is about: practical homelab builds, cloud security, and translating leadership into hands-on architecture.</description>
|
||||||
|
</item>
|
||||||
|
</channel>
|
||||||
|
</rss>
|
||||||
|
|||||||
@@ -1 +1,9 @@
|
|||||||
<!doctype html><html lang=en-us><head><title>https://askkennyb.com/tags/intro/</title><link rel=canonical href=https://askkennyb.com/tags/intro/><meta charset=utf-8><meta http-equiv=refresh content="0; url=https://askkennyb.com/tags/intro/"></head></html>
|
<!DOCTYPE html>
|
||||||
|
<html lang="en-us">
|
||||||
|
<head>
|
||||||
|
<title>http://localhost:1313/tags/intro/</title>
|
||||||
|
<link rel="canonical" href="http://localhost:1313/tags/intro/">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="refresh" content="0; url=http://localhost:1313/tags/intro/">
|
||||||
|
</head>
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1,12 +1,233 @@
|
|||||||
<!doctype html><html lang=en dir=auto data-theme=auto><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Networking | Ask KennyB</title><meta name=keywords content><meta name=description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta name=author content="Kenny Bondelie"><link rel=canonical href=https://askkennyb.com/tags/networking/><link crossorigin=anonymous href=/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as=style><link rel=icon href=https://askkennyb.com/favicon.ico><link rel=icon type=image/png sizes=16x16 href=https://askkennyb.com/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=https://askkennyb.com/favicon-32x32.png><link rel=apple-touch-icon href=https://askkennyb.com/apple-touch-icon.png><link rel=mask-icon href=https://askkennyb.com/safari-pinned-tab.svg><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://askkennyb.com/tags/networking/index.xml title=rss><link rel=alternate hreflang=en href=https://askkennyb.com/tags/networking/><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51);color-scheme:dark}.list{background:var(--theme)}.toc{background:var(--entry)}}@media(prefers-color-scheme:light){.list::-webkit-scrollbar-thumb{border-color:var(--code-bg)}}</style></noscript><script>localStorage.getItem("pref-theme")==="dark"?document.querySelector("html").dataset.theme="dark":localStorage.getItem("pref-theme")==="light"?document.querySelector("html").dataset.theme="light":window.matchMedia("(prefers-color-scheme: dark)").matches?document.querySelector("html").dataset.theme="dark":document.querySelector("html").dataset.theme="light"</script><link rel=preconnect href=https://fonts.googleapis.com><link rel=preconnect href=https://fonts.gstatic.com crossorigin><link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel=stylesheet><link rel=icon href=/favicon.ico sizes=any><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=apple-touch-icon href=/apple-touch-icon.png><link rel=manifest href=/site.webmanifest><meta name=theme-color content="#007a70"><script defer src=https://stats.askkennyb.com/script.js data-website-id=9ff21094-6881-404e-a30e-534c23dde9f8></script><meta property="og:url" content="https://askkennyb.com/tags/networking/"><meta property="og:site_name" content="Ask KennyB"><meta property="og:title" content="Networking"><meta property="og:description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Networking"><meta name=twitter:description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://askkennyb.com/ accesskey=h title=" (Alt + H)"><img src=https://askkennyb.com/images/logo_words.svg alt aria-label=logo height=75></a><div class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)" aria-label="Toggle theme">
|
<!DOCTYPE html>
|
||||||
<svg id="moon" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg>
|
<html lang="en" dir="auto" data-theme="auto">
|
||||||
<svg id="sun" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></div></div><ul id=menu><li><a href=https://askkennyb.com/posts/ title=Posts><span>Posts</span></a></li><li><a href=https://askkennyb.com/about/ title=About><span>About</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=https://askkennyb.com/>Home</a> » <a href=https://askkennyb.com/tags/>Tags</a></div><h1>Networking</h1></header><article class="post-entry tag-entry"><header class=entry-header><h2 class=entry-hint-parent>Project Log: Docker Dreams and YAML Nightmares</h2></header><div class=entry-content><p>Sometimes the difference between a ‘production-ready stack’ and ‘why is my NAS on fire?’ is one missing space in a YAML file.
|
|
||||||
|
<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script><meta charset="utf-8">
|
||||||
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||||
|
<meta name="robots" content="noindex, nofollow">
|
||||||
|
<title>Networking | Ask KennyB</title>
|
||||||
|
<meta name="keywords" content="">
|
||||||
|
<meta name="description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security.">
|
||||||
|
<meta name="author" content="Kenny Bondelie">
|
||||||
|
<link rel="canonical" href="http://localhost:1313/tags/networking/">
|
||||||
|
<link crossorigin="anonymous" href="/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css" integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as="style">
|
||||||
|
<link rel="icon" href="http://localhost:1313/favicon.ico">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/favicon-16x16.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/favicon-32x32.png">
|
||||||
|
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
|
||||||
|
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
|
||||||
|
<meta name="theme-color" content="#2e2e33">
|
||||||
|
<meta name="msapplication-TileColor" content="#2e2e33">
|
||||||
|
<link rel="alternate" type="application/rss+xml" href="http://localhost:1313/tags/networking/index.xml" title="rss">
|
||||||
|
<link rel="alternate" hreflang="en" href="http://localhost:1313/tags/networking/">
|
||||||
|
<noscript>
|
||||||
|
<style>
|
||||||
|
#theme-toggle,
|
||||||
|
.top-link {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
<style>
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
:root {
|
||||||
|
--theme: rgb(29, 30, 32);
|
||||||
|
--entry: rgb(46, 46, 51);
|
||||||
|
--primary: rgb(218, 218, 219);
|
||||||
|
--secondary: rgb(155, 156, 157);
|
||||||
|
--tertiary: rgb(65, 66, 68);
|
||||||
|
--content: rgb(196, 196, 197);
|
||||||
|
--code-block-bg: rgb(46, 46, 51);
|
||||||
|
--code-bg: rgb(55, 56, 62);
|
||||||
|
--border: rgb(51, 51, 51);
|
||||||
|
color-scheme: dark;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list {
|
||||||
|
background: var(--theme);
|
||||||
|
}
|
||||||
|
|
||||||
|
.toc {
|
||||||
|
background: var(--entry);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (prefers-color-scheme: light) {
|
||||||
|
.list::-webkit-scrollbar-thumb {
|
||||||
|
border-color: var(--code-bg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
</noscript>
|
||||||
|
<script>
|
||||||
|
if (localStorage.getItem("pref-theme") === "dark") {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else if (localStorage.getItem("pref-theme") === "light") {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
}
|
||||||
|
|
||||||
|
</script><link rel="preconnect" href="https://fonts.googleapis.com">
|
||||||
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||||
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel="stylesheet">
|
||||||
|
|
||||||
|
<link rel="icon" href="/favicon.ico" sizes="any">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
||||||
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
|
||||||
|
<link rel="manifest" href="/site.webmanifest">
|
||||||
|
<meta name="theme-color" content="#007a70">
|
||||||
|
|
||||||
|
<script defer src="https://stats.askkennyb.com/script.js" data-website-id="9ff21094-6881-404e-a30e-534c23dde9f8"></script>
|
||||||
|
</head>
|
||||||
|
<body class="list" id="top">
|
||||||
|
<header class="header">
|
||||||
|
<nav class="nav">
|
||||||
|
<div class="logo">
|
||||||
|
<a href="http://localhost:1313/" accesskey="h" title=" (Alt + H)">
|
||||||
|
<img src="http://localhost:1313/images/logo_words.svg" alt="" aria-label="logo"
|
||||||
|
height="75"> </a>
|
||||||
|
<div class="logo-switches">
|
||||||
|
<button id="theme-toggle" accesskey="t" title="(Alt + T)" aria-label="Toggle theme">
|
||||||
|
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
||||||
|
</svg>
|
||||||
|
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<circle cx="12" cy="12" r="5"></circle>
|
||||||
|
<line x1="12" y1="1" x2="12" y2="3"></line>
|
||||||
|
<line x1="12" y1="21" x2="12" y2="23"></line>
|
||||||
|
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
||||||
|
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
||||||
|
<line x1="1" y1="12" x2="3" y2="12"></line>
|
||||||
|
<line x1="21" y1="12" x2="23" y2="12"></line>
|
||||||
|
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
||||||
|
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ul id="menu">
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/posts/" title="Posts">
|
||||||
|
<span>Posts</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/about/" title="About">
|
||||||
|
<span>About</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</header>
|
||||||
|
<main class="main">
|
||||||
|
<header class="page-header"><div class="breadcrumbs"><a href="http://localhost:1313/">Home</a> » <a href="http://localhost:1313/tags/">Tags</a></div>
|
||||||
|
<h1>
|
||||||
|
Networking
|
||||||
|
</h1>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<article class="post-entry tag-entry">
|
||||||
|
<header class="entry-header">
|
||||||
|
<h2 class="entry-hint-parent">Project Log: Docker Dreams and YAML Nightmares
|
||||||
|
</h2>
|
||||||
|
</header>
|
||||||
|
<div class="entry-content">
|
||||||
|
<p> Sometimes the difference between a ‘production-ready stack’ and ‘why is my NAS on fire?’ is one missing space in a YAML file.
|
||||||
It started innocently enough:
|
It started innocently enough:
|
||||||
a single docker-compose.yml, neat and tidy, humming along like a well-trained orchestra. Then I added one new service—my self-hosted note app—and everything fell apart.
|
a single docker-compose.yml, neat and tidy, humming along like a well-trained orchestra. Then I added one new service—my self-hosted note app—and everything fell apart.
|
||||||
The Symptoms Containers refusing to start with no useful logs DNS loops that made my router question its purpose My wife asking, “Why is our TV buffering when you touch the server?” The Diagnosis Turns out, I nested a volume mount under the wrong key.
|
The Symptoms Containers refusing to start with no useful logs DNS loops that made my router question its purpose My wife asking, “Why is our TV buffering when you touch the server?” The Diagnosis Turns out, I nested a volume mount under the wrong key.
|
||||||
YAML: 1 — Human: 0.
|
YAML: 1 — Human: 0.
|
||||||
...</p></div><footer class=entry-footer><span title='2025-11-05 00:00:00 +0000 UTC'>November 5, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer><a class=entry-link aria-label="post link to Project Log: Docker Dreams and YAML Nightmares" href=https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/></a></article></main><footer class=footer><span>© 2025 <a href=https://askkennyb.com/>Ask KennyB</a></span> ·
|
...</p>
|
||||||
<span>Powered by
|
</div>
|
||||||
<a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> &
|
<footer class="entry-footer"><span title='2025-11-05 00:00:00 +0000 UTC'>November 5, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer>
|
||||||
<a href=https://github.com/adityatelange/hugo-PaperMod/ rel=noopener target=_blank>PaperMod</a></span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
|
<a class="entry-link" aria-label="post link to Project Log: Docker Dreams and YAML Nightmares" href="http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/"></a>
|
||||||
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script><script>document.getElementById("theme-toggle").addEventListener("click",()=>{const e=document.querySelector("html");e.dataset.theme==="dark"?(e.dataset.theme="light",localStorage.setItem("pref-theme","light")):(e.dataset.theme="dark",localStorage.setItem("pref-theme","dark"))})</script></body></html>
|
</article>
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<span>© 2025 <a href="http://localhost:1313/">Ask KennyB</a></span> ·
|
||||||
|
|
||||||
|
<span>
|
||||||
|
Powered by
|
||||||
|
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
|
||||||
|
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
|
||||||
|
</span>
|
||||||
|
</footer>
|
||||||
|
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
|
||||||
|
<path d="M12 6H0l6-6z" />
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
let menu = document.getElementById('menu');
|
||||||
|
if (menu) {
|
||||||
|
|
||||||
|
const scrollPosition = localStorage.getItem("menu-scroll-position");
|
||||||
|
if (scrollPosition) {
|
||||||
|
menu.scrollLeft = parseInt(scrollPosition, 10);
|
||||||
|
}
|
||||||
|
|
||||||
|
menu.onscroll = function () {
|
||||||
|
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
|
||||||
|
anchor.addEventListener("click", function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var id = this.getAttribute("href").substr(1);
|
||||||
|
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
|
||||||
|
behavior: "smooth"
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
|
||||||
|
}
|
||||||
|
if (id === "top") {
|
||||||
|
history.replaceState(null, null, " ");
|
||||||
|
} else {
|
||||||
|
history.pushState(null, null, `#${id}`);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
var mybutton = document.getElementById("top-link");
|
||||||
|
window.onscroll = function () {
|
||||||
|
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
|
||||||
|
mybutton.style.visibility = "visible";
|
||||||
|
mybutton.style.opacity = "1";
|
||||||
|
} else {
|
||||||
|
mybutton.style.visibility = "hidden";
|
||||||
|
mybutton.style.opacity = "0";
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
document.getElementById("theme-toggle").addEventListener("click", () => {
|
||||||
|
const html = document.querySelector("html");
|
||||||
|
if (html.dataset.theme === "dark") {
|
||||||
|
html.dataset.theme = 'light';
|
||||||
|
localStorage.setItem("pref-theme", 'light');
|
||||||
|
} else {
|
||||||
|
html.dataset.theme = 'dark';
|
||||||
|
localStorage.setItem("pref-theme", 'dark');
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1 +1,19 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Networking on Ask KennyB</title><link>https://askkennyb.com/tags/networking/</link><description>Recent content in Networking on Ask KennyB</description><generator>Hugo -- 0.152.2</generator><language>en-us</language><lastBuildDate>Wed, 05 Nov 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://askkennyb.com/tags/networking/index.xml" rel="self" type="application/rss+xml"/><item><title>Project Log: Docker Dreams and YAML Nightmares</title><link>https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/</link><pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/blog/project-log-docker-dreams-and-yaml-nightmares/</guid><description>A totally serious update on my local lab, featuring unexpected container drama, a misbehaving reverse proxy, and lessons in patience.</description></item></channel></rss>
|
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||||
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
|
||||||
|
<channel>
|
||||||
|
<title>Networking on Ask KennyB</title>
|
||||||
|
<link>http://localhost:1313/tags/networking/</link>
|
||||||
|
<description>Recent content in Networking on Ask KennyB</description>
|
||||||
|
<generator>Hugo -- 0.152.2</generator>
|
||||||
|
<language>en-us</language>
|
||||||
|
<lastBuildDate>Wed, 05 Nov 2025 00:00:00 +0000</lastBuildDate>
|
||||||
|
<atom:link href="http://localhost:1313/tags/networking/index.xml" rel="self" type="application/rss+xml" />
|
||||||
|
<item>
|
||||||
|
<title>Project Log: Docker Dreams and YAML Nightmares</title>
|
||||||
|
<link>http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/</link>
|
||||||
|
<pubDate>Wed, 05 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/blog/project-log-docker-dreams-and-yaml-nightmares/</guid>
|
||||||
|
<description>A totally serious update on my local lab, featuring unexpected container drama, a misbehaving reverse proxy, and lessons in patience.</description>
|
||||||
|
</item>
|
||||||
|
</channel>
|
||||||
|
</rss>
|
||||||
|
|||||||
@@ -1 +1,9 @@
|
|||||||
<!doctype html><html lang=en-us><head><title>https://askkennyb.com/tags/networking/</title><link rel=canonical href=https://askkennyb.com/tags/networking/><meta charset=utf-8><meta http-equiv=refresh content="0; url=https://askkennyb.com/tags/networking/"></head></html>
|
<!DOCTYPE html>
|
||||||
|
<html lang="en-us">
|
||||||
|
<head>
|
||||||
|
<title>http://localhost:1313/tags/networking/</title>
|
||||||
|
<link rel="canonical" href="http://localhost:1313/tags/networking/">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="refresh" content="0; url=http://localhost:1313/tags/networking/">
|
||||||
|
</head>
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1,8 +1,230 @@
|
|||||||
<!doctype html><html lang=en dir=auto data-theme=auto><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1,shrink-to-fit=no"><meta name=robots content="index, follow"><title>Project | Ask KennyB</title><meta name=keywords content><meta name=description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta name=author content="Kenny Bondelie"><link rel=canonical href=https://askkennyb.com/tags/project/><link crossorigin=anonymous href=/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as=style><link rel=icon href=https://askkennyb.com/favicon.ico><link rel=icon type=image/png sizes=16x16 href=https://askkennyb.com/favicon-16x16.png><link rel=icon type=image/png sizes=32x32 href=https://askkennyb.com/favicon-32x32.png><link rel=apple-touch-icon href=https://askkennyb.com/apple-touch-icon.png><link rel=mask-icon href=https://askkennyb.com/safari-pinned-tab.svg><meta name=theme-color content="#2e2e33"><meta name=msapplication-TileColor content="#2e2e33"><link rel=alternate type=application/rss+xml href=https://askkennyb.com/tags/project/index.xml title=rss><link rel=alternate hreflang=en href=https://askkennyb.com/tags/project/><noscript><style>#theme-toggle,.top-link{display:none}</style><style>@media(prefers-color-scheme:dark){:root{--theme:rgb(29, 30, 32);--entry:rgb(46, 46, 51);--primary:rgb(218, 218, 219);--secondary:rgb(155, 156, 157);--tertiary:rgb(65, 66, 68);--content:rgb(196, 196, 197);--code-block-bg:rgb(46, 46, 51);--code-bg:rgb(55, 56, 62);--border:rgb(51, 51, 51);color-scheme:dark}.list{background:var(--theme)}.toc{background:var(--entry)}}@media(prefers-color-scheme:light){.list::-webkit-scrollbar-thumb{border-color:var(--code-bg)}}</style></noscript><script>localStorage.getItem("pref-theme")==="dark"?document.querySelector("html").dataset.theme="dark":localStorage.getItem("pref-theme")==="light"?document.querySelector("html").dataset.theme="light":window.matchMedia("(prefers-color-scheme: dark)").matches?document.querySelector("html").dataset.theme="dark":document.querySelector("html").dataset.theme="light"</script><link rel=preconnect href=https://fonts.googleapis.com><link rel=preconnect href=https://fonts.gstatic.com crossorigin><link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel=stylesheet><link rel=icon href=/favicon.ico sizes=any><link rel=icon type=image/png sizes=32x32 href=/favicon-32x32.png><link rel=icon type=image/png sizes=16x16 href=/favicon-16x16.png><link rel=apple-touch-icon href=/apple-touch-icon.png><link rel=manifest href=/site.webmanifest><meta name=theme-color content="#007a70"><script defer src=https://stats.askkennyb.com/script.js data-website-id=9ff21094-6881-404e-a30e-534c23dde9f8></script><meta property="og:url" content="https://askkennyb.com/tags/project/"><meta property="og:site_name" content="Ask KennyB"><meta property="og:title" content="Project"><meta property="og:description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."><meta property="og:locale" content="en-us"><meta property="og:type" content="website"><meta name=twitter:card content="summary"><meta name=twitter:title content="Project"><meta name=twitter:description content="Sharpening tech leadership through hands-on homelab builds, cloud, and security."></head><body class=list id=top><header class=header><nav class=nav><div class=logo><a href=https://askkennyb.com/ accesskey=h title=" (Alt + H)"><img src=https://askkennyb.com/images/logo_words.svg alt aria-label=logo height=75></a><div class=logo-switches><button id=theme-toggle accesskey=t title="(Alt + T)" aria-label="Toggle theme">
|
<!DOCTYPE html>
|
||||||
<svg id="moon" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M21 12.79A9 9 0 1111.21 3 7 7 0 0021 12.79z"/></svg>
|
<html lang="en" dir="auto" data-theme="auto">
|
||||||
<svg id="sun" width="24" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="5"/><line x1="12" y1="1" x2="12" y2="3"/><line x1="12" y1="21" x2="12" y2="23"/><line x1="4.22" y1="4.22" x2="5.64" y2="5.64"/><line x1="18.36" y1="18.36" x2="19.78" y2="19.78"/><line x1="1" y1="12" x2="3" y2="12"/><line x1="21" y1="12" x2="23" y2="12"/><line x1="4.22" y1="19.78" x2="5.64" y2="18.36"/><line x1="18.36" y1="5.64" x2="19.78" y2="4.22"/></svg></button></div></div><ul id=menu><li><a href=https://askkennyb.com/posts/ title=Posts><span>Posts</span></a></li><li><a href=https://askkennyb.com/about/ title=About><span>About</span></a></li></ul></nav></header><main class=main><header class=page-header><div class=breadcrumbs><a href=https://askkennyb.com/>Home</a> » <a href=https://askkennyb.com/tags/>Tags</a></div><h1>Project</h1></header><article class="post-entry tag-entry"><header class=entry-header><h2 class=entry-hint-parent>Hello, World — Why Ask Kenny B?</h2></header><div class=entry-content><p>Welcome! This blog will cover:
|
|
||||||
Reproducible homelab guides (Proxmox, Docker, Authentik, reverse proxies). Cloud blueprints that scale from personal to org-grade. Transferable leadership → architecture lessons (risk, controls, finance). Thanks for being here—let’s build.</p></div><footer class=entry-footer><span title='2025-11-02 00:00:00 +0000 UTC'>November 2, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer><a class=entry-link aria-label="post link to Hello, World — Why Ask Kenny B?" href=https://askkennyb.com/blog/hello-world-why-ask-kenny-b/></a></article></main><footer class=footer><span>© 2025 <a href=https://askkennyb.com/>Ask KennyB</a></span> ·
|
<head><script src="/livereload.js?mindelay=10&v=2&port=1313&path=livereload" data-no-instant defer></script><meta charset="utf-8">
|
||||||
<span>Powered by
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<a href=https://gohugo.io/ rel="noopener noreferrer" target=_blank>Hugo</a> &
|
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
|
||||||
<a href=https://github.com/adityatelange/hugo-PaperMod/ rel=noopener target=_blank>PaperMod</a></span></footer><a href=#top aria-label="go to top" title="Go to Top (Alt + G)" class=top-link id=top-link accesskey=g><svg viewBox="0 0 12 6" fill="currentColor"><path d="M12 6H0l6-6z"/></svg>
|
<meta name="robots" content="noindex, nofollow">
|
||||||
</a><script>let menu=document.getElementById("menu");if(menu){const e=localStorage.getItem("menu-scroll-position");e&&(menu.scrollLeft=parseInt(e,10)),menu.onscroll=function(){localStorage.setItem("menu-scroll-position",menu.scrollLeft)}}document.querySelectorAll('a[href^="#"]').forEach(e=>{e.addEventListener("click",function(e){e.preventDefault();var t=this.getAttribute("href").substr(1);window.matchMedia("(prefers-reduced-motion: reduce)").matches?document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView():document.querySelector(`[id='${decodeURIComponent(t)}']`).scrollIntoView({behavior:"smooth"}),t==="top"?history.replaceState(null,null," "):history.pushState(null,null,`#${t}`)})})</script><script>var mybutton=document.getElementById("top-link");window.onscroll=function(){document.body.scrollTop>800||document.documentElement.scrollTop>800?(mybutton.style.visibility="visible",mybutton.style.opacity="1"):(mybutton.style.visibility="hidden",mybutton.style.opacity="0")}</script><script>document.getElementById("theme-toggle").addEventListener("click",()=>{const e=document.querySelector("html");e.dataset.theme==="dark"?(e.dataset.theme="light",localStorage.setItem("pref-theme","light")):(e.dataset.theme="dark",localStorage.setItem("pref-theme","dark"))})</script></body></html>
|
<title>Project | Ask KennyB</title>
|
||||||
|
<meta name="keywords" content="">
|
||||||
|
<meta name="description" content="Sharpening tech leadership through hands-on homelab builds, cloud, and security.">
|
||||||
|
<meta name="author" content="Kenny Bondelie">
|
||||||
|
<link rel="canonical" href="http://localhost:1313/tags/project/">
|
||||||
|
<link crossorigin="anonymous" href="/assets/css/stylesheet.d1be478e0ac21456f47a24e92e3c75a5fb7aac2ff5827f9447dbc93b4dd76b50.css" integrity="sha256-0b5HjgrCFFb0eiTpLjx1pft6rC/1gn+UR9vJO03Xa1A=" rel="preload stylesheet" as="style">
|
||||||
|
<link rel="icon" href="http://localhost:1313/favicon.ico">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="http://localhost:1313/favicon-16x16.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="http://localhost:1313/favicon-32x32.png">
|
||||||
|
<link rel="apple-touch-icon" href="http://localhost:1313/apple-touch-icon.png">
|
||||||
|
<link rel="mask-icon" href="http://localhost:1313/safari-pinned-tab.svg">
|
||||||
|
<meta name="theme-color" content="#2e2e33">
|
||||||
|
<meta name="msapplication-TileColor" content="#2e2e33">
|
||||||
|
<link rel="alternate" type="application/rss+xml" href="http://localhost:1313/tags/project/index.xml" title="rss">
|
||||||
|
<link rel="alternate" hreflang="en" href="http://localhost:1313/tags/project/">
|
||||||
|
<noscript>
|
||||||
|
<style>
|
||||||
|
#theme-toggle,
|
||||||
|
.top-link {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
<style>
|
||||||
|
@media (prefers-color-scheme: dark) {
|
||||||
|
:root {
|
||||||
|
--theme: rgb(29, 30, 32);
|
||||||
|
--entry: rgb(46, 46, 51);
|
||||||
|
--primary: rgb(218, 218, 219);
|
||||||
|
--secondary: rgb(155, 156, 157);
|
||||||
|
--tertiary: rgb(65, 66, 68);
|
||||||
|
--content: rgb(196, 196, 197);
|
||||||
|
--code-block-bg: rgb(46, 46, 51);
|
||||||
|
--code-bg: rgb(55, 56, 62);
|
||||||
|
--border: rgb(51, 51, 51);
|
||||||
|
color-scheme: dark;
|
||||||
|
}
|
||||||
|
|
||||||
|
.list {
|
||||||
|
background: var(--theme);
|
||||||
|
}
|
||||||
|
|
||||||
|
.toc {
|
||||||
|
background: var(--entry);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@media (prefers-color-scheme: light) {
|
||||||
|
.list::-webkit-scrollbar-thumb {
|
||||||
|
border-color: var(--code-bg);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
</style>
|
||||||
|
</noscript>
|
||||||
|
<script>
|
||||||
|
if (localStorage.getItem("pref-theme") === "dark") {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else if (localStorage.getItem("pref-theme") === "light") {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
} else if (window.matchMedia('(prefers-color-scheme: dark)').matches) {
|
||||||
|
document.querySelector("html").dataset.theme = 'dark';
|
||||||
|
} else {
|
||||||
|
document.querySelector("html").dataset.theme = 'light';
|
||||||
|
}
|
||||||
|
|
||||||
|
</script><link rel="preconnect" href="https://fonts.googleapis.com">
|
||||||
|
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
|
||||||
|
<link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;600&family=Source+Serif+4:opsz,wght@8..60,500..700&display=swap" rel="stylesheet">
|
||||||
|
|
||||||
|
<link rel="icon" href="/favicon.ico" sizes="any">
|
||||||
|
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
|
||||||
|
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
|
||||||
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png">
|
||||||
|
<link rel="manifest" href="/site.webmanifest">
|
||||||
|
<meta name="theme-color" content="#007a70">
|
||||||
|
|
||||||
|
<script defer src="https://stats.askkennyb.com/script.js" data-website-id="9ff21094-6881-404e-a30e-534c23dde9f8"></script>
|
||||||
|
</head>
|
||||||
|
<body class="list" id="top">
|
||||||
|
<header class="header">
|
||||||
|
<nav class="nav">
|
||||||
|
<div class="logo">
|
||||||
|
<a href="http://localhost:1313/" accesskey="h" title=" (Alt + H)">
|
||||||
|
<img src="http://localhost:1313/images/logo_words.svg" alt="" aria-label="logo"
|
||||||
|
height="75"> </a>
|
||||||
|
<div class="logo-switches">
|
||||||
|
<button id="theme-toggle" accesskey="t" title="(Alt + T)" aria-label="Toggle theme">
|
||||||
|
<svg id="moon" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<path d="M21 12.79A9 9 0 1 1 11.21 3 7 7 0 0 0 21 12.79z"></path>
|
||||||
|
</svg>
|
||||||
|
<svg id="sun" xmlns="http://www.w3.org/2000/svg" width="24" height="18" viewBox="0 0 24 24"
|
||||||
|
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round"
|
||||||
|
stroke-linejoin="round">
|
||||||
|
<circle cx="12" cy="12" r="5"></circle>
|
||||||
|
<line x1="12" y1="1" x2="12" y2="3"></line>
|
||||||
|
<line x1="12" y1="21" x2="12" y2="23"></line>
|
||||||
|
<line x1="4.22" y1="4.22" x2="5.64" y2="5.64"></line>
|
||||||
|
<line x1="18.36" y1="18.36" x2="19.78" y2="19.78"></line>
|
||||||
|
<line x1="1" y1="12" x2="3" y2="12"></line>
|
||||||
|
<line x1="21" y1="12" x2="23" y2="12"></line>
|
||||||
|
<line x1="4.22" y1="19.78" x2="5.64" y2="18.36"></line>
|
||||||
|
<line x1="18.36" y1="5.64" x2="19.78" y2="4.22"></line>
|
||||||
|
</svg>
|
||||||
|
</button>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<ul id="menu">
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/posts/" title="Posts">
|
||||||
|
<span>Posts</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<a href="http://localhost:1313/about/" title="About">
|
||||||
|
<span>About</span>
|
||||||
|
</a>
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</nav>
|
||||||
|
</header>
|
||||||
|
<main class="main">
|
||||||
|
<header class="page-header"><div class="breadcrumbs"><a href="http://localhost:1313/">Home</a> » <a href="http://localhost:1313/tags/">Tags</a></div>
|
||||||
|
<h1>
|
||||||
|
Project
|
||||||
|
</h1>
|
||||||
|
</header>
|
||||||
|
|
||||||
|
<article class="post-entry tag-entry">
|
||||||
|
<header class="entry-header">
|
||||||
|
<h2 class="entry-hint-parent">Hello, World — Why Ask Kenny B?
|
||||||
|
</h2>
|
||||||
|
</header>
|
||||||
|
<div class="entry-content">
|
||||||
|
<p>Welcome! This blog will cover:
|
||||||
|
Reproducible homelab guides (Proxmox, Docker, Authentik, reverse proxies). Cloud blueprints that scale from personal to org-grade. Transferable leadership → architecture lessons (risk, controls, finance). Thanks for being here—let’s build.
|
||||||
|
</p>
|
||||||
|
</div>
|
||||||
|
<footer class="entry-footer"><span title='2025-11-02 00:00:00 +0000 UTC'>November 2, 2025</span> · <span>1 min</span> · <span>Kenny Bondelie</span></footer>
|
||||||
|
<a class="entry-link" aria-label="post link to Hello, World — Why Ask Kenny B?" href="http://localhost:1313/blog/hello-world-why-ask-kenny-b/"></a>
|
||||||
|
</article>
|
||||||
|
</main>
|
||||||
|
|
||||||
|
<footer class="footer">
|
||||||
|
<span>© 2025 <a href="http://localhost:1313/">Ask KennyB</a></span> ·
|
||||||
|
|
||||||
|
<span>
|
||||||
|
Powered by
|
||||||
|
<a href="https://gohugo.io/" rel="noopener noreferrer" target="_blank">Hugo</a> &
|
||||||
|
<a href="https://github.com/adityatelange/hugo-PaperMod/" rel="noopener" target="_blank">PaperMod</a>
|
||||||
|
</span>
|
||||||
|
</footer>
|
||||||
|
<a href="#top" aria-label="go to top" title="Go to Top (Alt + G)" class="top-link" id="top-link" accesskey="g">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 6" fill="currentColor">
|
||||||
|
<path d="M12 6H0l6-6z" />
|
||||||
|
</svg>
|
||||||
|
</a>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
let menu = document.getElementById('menu');
|
||||||
|
if (menu) {
|
||||||
|
|
||||||
|
const scrollPosition = localStorage.getItem("menu-scroll-position");
|
||||||
|
if (scrollPosition) {
|
||||||
|
menu.scrollLeft = parseInt(scrollPosition, 10);
|
||||||
|
}
|
||||||
|
|
||||||
|
menu.onscroll = function () {
|
||||||
|
localStorage.setItem("menu-scroll-position", menu.scrollLeft);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
|
||||||
|
anchor.addEventListener("click", function (e) {
|
||||||
|
e.preventDefault();
|
||||||
|
var id = this.getAttribute("href").substr(1);
|
||||||
|
if (!window.matchMedia('(prefers-reduced-motion: reduce)').matches) {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView({
|
||||||
|
behavior: "smooth"
|
||||||
|
});
|
||||||
|
} else {
|
||||||
|
document.querySelector(`[id='${decodeURIComponent(id)}']`).scrollIntoView();
|
||||||
|
}
|
||||||
|
if (id === "top") {
|
||||||
|
history.replaceState(null, null, " ");
|
||||||
|
} else {
|
||||||
|
history.pushState(null, null, `#${id}`);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
var mybutton = document.getElementById("top-link");
|
||||||
|
window.onscroll = function () {
|
||||||
|
if (document.body.scrollTop > 800 || document.documentElement.scrollTop > 800) {
|
||||||
|
mybutton.style.visibility = "visible";
|
||||||
|
mybutton.style.opacity = "1";
|
||||||
|
} else {
|
||||||
|
mybutton.style.visibility = "hidden";
|
||||||
|
mybutton.style.opacity = "0";
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
</script>
|
||||||
|
<script>
|
||||||
|
document.getElementById("theme-toggle").addEventListener("click", () => {
|
||||||
|
const html = document.querySelector("html");
|
||||||
|
if (html.dataset.theme === "dark") {
|
||||||
|
html.dataset.theme = 'light';
|
||||||
|
localStorage.setItem("pref-theme", 'light');
|
||||||
|
} else {
|
||||||
|
html.dataset.theme = 'dark';
|
||||||
|
localStorage.setItem("pref-theme", 'dark');
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
</script>
|
||||||
|
</body>
|
||||||
|
|
||||||
|
</html>
|
||||||
|
|||||||
@@ -1 +1,19 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Project on Ask KennyB</title><link>https://askkennyb.com/tags/project/</link><description>Recent content in Project on Ask KennyB</description><generator>Hugo -- 0.152.2</generator><language>en-us</language><lastBuildDate>Sun, 02 Nov 2025 00:00:00 +0000</lastBuildDate><atom:link href="https://askkennyb.com/tags/project/index.xml" rel="self" type="application/rss+xml"/><item><title>Hello, World — Why Ask Kenny B?</title><link>https://askkennyb.com/blog/hello-world-why-ask-kenny-b/</link><pubDate>Sun, 02 Nov 2025 00:00:00 +0000</pubDate><guid>https://askkennyb.com/blog/hello-world-why-ask-kenny-b/</guid><description>What this space is about: practical homelab builds, cloud security, and translating leadership into hands-on architecture.</description></item></channel></rss>
|
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
||||||
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
|
||||||
|
<channel>
|
||||||
|
<title>Project on Ask KennyB</title>
|
||||||
|
<link>http://localhost:1313/tags/project/</link>
|
||||||
|
<description>Recent content in Project on Ask KennyB</description>
|
||||||
|
<generator>Hugo -- 0.152.2</generator>
|
||||||
|
<language>en-us</language>
|
||||||
|
<lastBuildDate>Sun, 02 Nov 2025 00:00:00 +0000</lastBuildDate>
|
||||||
|
<atom:link href="http://localhost:1313/tags/project/index.xml" rel="self" type="application/rss+xml" />
|
||||||
|
<item>
|
||||||
|
<title>Hello, World — Why Ask Kenny B?</title>
|
||||||
|
<link>http://localhost:1313/blog/hello-world-why-ask-kenny-b/</link>
|
||||||
|
<pubDate>Sun, 02 Nov 2025 00:00:00 +0000</pubDate>
|
||||||
|
<guid>http://localhost:1313/blog/hello-world-why-ask-kenny-b/</guid>
|
||||||
|
<description>What this space is about: practical homelab builds, cloud security, and translating leadership into hands-on architecture.</description>
|
||||||
|
</item>
|
||||||
|
</channel>
|
||||||
|
</rss>
|
||||||
|
|||||||
@@ -1 +1,9 @@
|
|||||||
<!doctype html><html lang=en-us><head><title>https://askkennyb.com/tags/project/</title><link rel=canonical href=https://askkennyb.com/tags/project/><meta charset=utf-8><meta http-equiv=refresh content="0; url=https://askkennyb.com/tags/project/"></head></html>
|
<!DOCTYPE html>
|
||||||
|
<html lang="en-us">
|
||||||
|
<head>
|
||||||
|
<title>http://localhost:1313/tags/project/</title>
|
||||||
|
<link rel="canonical" href="http://localhost:1313/tags/project/">
|
||||||
|
<meta charset="utf-8">
|
||||||
|
<meta http-equiv="refresh" content="0; url=http://localhost:1313/tags/project/">
|
||||||
|
</head>
|
||||||
|
</html>
|
||||||
|
|||||||
Reference in New Issue
Block a user