<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>otto-stack</title><link>https://otto-nation.github.io/otto-stack/</link><description>Recent content on otto-stack</description><generator>Hugo</generator><language>en</language><lastBuildDate>Thu, 12 Mar 2026 22:32:04 -0400</lastBuildDate><atom:link href="https://otto-nation.github.io/otto-stack/index.xml" rel="self" type="application/rss+xml"/><item><title>Setup</title><link>https://otto-nation.github.io/otto-stack/setup/</link><pubDate>Wed, 01 Oct 2025 00:00:00 +0000</pubDate><guid>https://otto-nation.github.io/otto-stack/setup/</guid><description>&lt;h1 id="setup--installation"&gt;Setup &amp;amp; Installation&lt;/h1&gt;
&lt;h2 id="-installation"&gt;📦 Installation&lt;/h2&gt;
&lt;h3 id="quick-install-recommended"&gt;Quick Install (Recommended)&lt;/h3&gt;



&lt;div class="expressive-code"&gt;
 &lt;figure class="frame is-terminal not-content"&gt;
 &lt;figcaption class="header"&gt;
 &lt;span class="title"&gt;&lt;/span&gt;
 &lt;/figcaption&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Install latest version&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;curl -fsSL https://raw.githubusercontent.com/otto-nation/otto-stack/main/scripts/install.sh &lt;span class="p"&gt;|&lt;/span&gt; bash&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;/figure&gt;
&lt;/div&gt;
&lt;h3 id="custom-installation"&gt;Custom Installation&lt;/h3&gt;



&lt;div class="expressive-code"&gt;
 &lt;figure class="frame is-terminal not-content"&gt;
 &lt;figcaption class="header"&gt;
 &lt;span class="title"&gt;&lt;/span&gt;
 &lt;/figcaption&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Install to custom directory&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;curl -fsSL https://raw.githubusercontent.com/otto-nation/otto-stack/main/scripts/install.sh &lt;span class="p"&gt;|&lt;/span&gt; bash -s -- --dir ~/.local/bin&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;/figure&gt;
&lt;/div&gt;
&lt;h3 id="manual-installation"&gt;Manual Installation&lt;/h3&gt;
&lt;p&gt;&lt;strong&gt;macOS/Linux:&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>Configuration Guide</title><link>https://otto-nation.github.io/otto-stack/configuration/</link><pubDate>Wed, 01 Oct 2025 00:00:00 +0000</pubDate><guid>https://otto-nation.github.io/otto-stack/configuration/</guid><description>&lt;!--
 ⚠️ AUTO-GENERATED FILE - DO NOT EDIT DIRECTLY
 To make changes, edit source files and run: task generate:docs
--&gt;
&lt;h1 id="configuration-guide"&gt;Configuration Guide&lt;/h1&gt;
&lt;p&gt;Otto-stack uses &lt;code&gt;.otto-stack/config.yaml&lt;/code&gt; to define your development stack.&lt;/p&gt;</description></item><item><title>Services</title><link>https://otto-nation.github.io/otto-stack/services/</link><pubDate>Wed, 01 Oct 2025 00:00:00 +0000</pubDate><guid>https://otto-nation.github.io/otto-stack/services/</guid><description>&lt;!--
 ⚠️ AUTO-GENERATED FILE - DO NOT EDIT DIRECTLY
 To make changes, edit source files and run: task generate:docs
--&gt;
&lt;h1 id="available-services"&gt;Available Services&lt;/h1&gt;
&lt;p&gt;13 services available for your development stack.&lt;/p&gt;</description></item><item><title>CLI Reference</title><link>https://otto-nation.github.io/otto-stack/cli-reference/</link><pubDate>Wed, 01 Oct 2025 00:00:00 +0000</pubDate><guid>https://otto-nation.github.io/otto-stack/cli-reference/</guid><description>&lt;!--
 ⚠️ AUTO-GENERATED FILE - DO NOT EDIT DIRECTLY
 To make changes, edit source files and run: task generate:docs
--&gt;
&lt;h1 id="otto-stack-cli-reference"&gt;otto-stack CLI Reference&lt;/h1&gt;
&lt;p&gt;A powerful development stack management tool for streamlined local development automation&lt;/p&gt;</description></item><item><title>Contributing</title><link>https://otto-nation.github.io/otto-stack/contributing/</link><pubDate>Wed, 01 Oct 2025 00:00:00 +0000</pubDate><guid>https://otto-nation.github.io/otto-stack/contributing/</guid><description>&lt;!--
 ⚠️ AUTO-GENERATED FILE - DO NOT EDIT DIRECTLY
 To make changes, edit source files and run: task generate:docs
--&gt;
&lt;h1 id="contributing-to-otto-stack"&gt;Contributing to otto-stack&lt;/h1&gt;
&lt;p&gt;Thank you for contributing! This guide covers the essentials to get you started.&lt;/p&gt;</description></item><item><title>Troubleshooting</title><link>https://otto-nation.github.io/otto-stack/troubleshooting/</link><pubDate>Wed, 01 Oct 2025 00:00:00 +0000</pubDate><guid>https://otto-nation.github.io/otto-stack/troubleshooting/</guid><description>&lt;h1 id="troubleshooting"&gt;Troubleshooting&lt;/h1&gt;
&lt;h2 id="-quick-fixes"&gt;🚨 Quick Fixes&lt;/h2&gt;
&lt;h3 id="docker-issues"&gt;Docker Issues&lt;/h3&gt;



&lt;div class="expressive-code"&gt;
 &lt;figure class="frame is-terminal not-content"&gt;
 &lt;figcaption class="header"&gt;
 &lt;span class="title"&gt;&lt;/span&gt;
 &lt;/figcaption&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Check if Docker is running&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;docker info
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Start Docker (macOS with Colima)&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;colima start
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Restart Docker services&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;otto-stack down &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; otto-stack up&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;/figure&gt;
&lt;/div&gt;
&lt;h3 id="port-conflicts"&gt;Port Conflicts&lt;/h3&gt;



&lt;div class="expressive-code"&gt;
 &lt;figure class="frame is-terminal not-content"&gt;
 &lt;figcaption class="header"&gt;
 &lt;span class="title"&gt;&lt;/span&gt;
 &lt;/figcaption&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Find what&amp;#39;s using a port&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;lsof -i :5432
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Kill process using port&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;kill&lt;/span&gt; -9 &lt;span class="k"&gt;$(&lt;/span&gt;lsof -t -i:5432&lt;span class="k"&gt;)&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;/figure&gt;
&lt;/div&gt;
&lt;h3 id="service-wont-start"&gt;Service Won&amp;rsquo;t Start&lt;/h3&gt;



&lt;div class="expressive-code"&gt;
 &lt;figure class="frame is-terminal not-content"&gt;
 &lt;figcaption class="header"&gt;
 &lt;span class="title"&gt;&lt;/span&gt;
 &lt;/figcaption&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Check service logs&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;otto-stack logs postgres
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Restart specific service&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;otto-stack restart postgres
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Full reset&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;otto-stack down &lt;span class="o"&gt;&amp;amp;&amp;amp;&lt;/span&gt; otto-stack up&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;/figure&gt;
&lt;/div&gt;
&lt;h3 id="configuration-issues"&gt;Configuration Issues&lt;/h3&gt;



&lt;div class="expressive-code"&gt;
 &lt;figure class="frame is-terminal not-content"&gt;
 &lt;figcaption class="header"&gt;
 &lt;span class="title"&gt;&lt;/span&gt;
 &lt;/figcaption&gt;
 &lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Validate configuration&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;otto-stack doctor
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="c1"&gt;# Debug mode&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;otto-stack --verbose up&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;
 &lt;/figure&gt;
&lt;/div&gt;
&lt;h2 id="-common-issues"&gt;🔍 Common Issues&lt;/h2&gt;
&lt;h3 id="docker-not-found"&gt;&amp;ldquo;Docker not found&amp;rdquo;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Install Docker Desktop or Colima&lt;/li&gt;
&lt;li&gt;Ensure Docker daemon is running&lt;/li&gt;
&lt;li&gt;Check PATH includes Docker binaries&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="port-already-in-use"&gt;&amp;ldquo;Port already in use&amp;rdquo;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Another service is using the same port&lt;/li&gt;
&lt;li&gt;Use &lt;code&gt;lsof -i :PORT&lt;/code&gt; to identify the process&lt;/li&gt;
&lt;li&gt;Either stop the conflicting service or change ports&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="service-unhealthy"&gt;&amp;ldquo;Service unhealthy&amp;rdquo;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Service failed health checks&lt;/li&gt;
&lt;li&gt;Check logs with &lt;code&gt;otto-stack logs SERVICE_NAME&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;Verify service configuration in YAML files&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="out-of-memory"&gt;&amp;ldquo;Out of memory&amp;rdquo;&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;Increase Docker memory limits&lt;/li&gt;
&lt;li&gt;Check &lt;code&gt;docker stats&lt;/code&gt; for resource usage&lt;/li&gt;
&lt;li&gt;Consider reducing number of running services&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="-getting-help"&gt;📞 Getting Help&lt;/h2&gt;
&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Check logs&lt;/strong&gt;: &lt;code&gt;otto-stack logs SERVICE_NAME&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Run diagnostics&lt;/strong&gt;: &lt;code&gt;otto-stack doctor&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Search issues&lt;/strong&gt;: 

&lt;a class="link link--text" href="https://github.com/otto-nation/otto-stack/issues" rel="external"&gt;GitHub Issues&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Ask questions&lt;/strong&gt;: 

&lt;a class="link link--text" href="https://github.com/otto-nation/otto-stack/issues" rel="external"&gt;GitHub Issues&lt;/a&gt;&lt;/li&gt;
&lt;/ol&gt;
&lt;h2 id="-reset-everything"&gt;🧹 Reset Everything&lt;/h2&gt;
&lt;p&gt;If all else fails:&lt;/p&gt;</description></item><item><title>Version Management System</title><link>https://otto-nation.github.io/otto-stack/version-management/</link><pubDate>Wed, 01 Oct 2025 00:00:00 +0000</pubDate><guid>https://otto-nation.github.io/otto-stack/version-management/</guid><description>&lt;h1 id="version-management-system"&gt;Version Management System&lt;/h1&gt;
&lt;p&gt;The otto-stack version management system allows you to install, manage, and automatically switch between different versions of otto-stack based on project requirements.&lt;/p&gt;</description></item></channel></rss>