This commit is contained in:
ryfrd 2026-02-16 14:48:06 +00:00
parent 96573664a6
commit 4663084e7a
76 changed files with 11180 additions and 519 deletions

View file

@ -63,11 +63,11 @@
</span></span></span></code></pre></div><p>Also, this is what it would look like as a simple old <code>docker run</code>.</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-sh" data-lang="sh"><span class="line"><span class="cl">$ docker pull searxng/searxng
</span></span><span class="line"><span class="cl">$ docker run --rm <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> -d -p 8080:8080 <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> -v <span class="s2">&#34;/srv/searxng:/etc/searxng&#34;</span> <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> -e <span class="s2">&#34;BASE_URL=http://searx.jdysmcl.xyz/&#34;</span> <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> -e <span class="s2">&#34;INSTANCE_NAME=go on big boy dont be shy&#34;</span> <span class="se">\
</span></span></span><span class="line"><span class="cl"><span class="se"></span> searxng/searxng
</span></span></span><span class="line"><span class="cl"> -d -p 8080:8080 <span class="se">\
</span></span></span><span class="line"><span class="cl"> -v <span class="s2">&#34;/srv/searxng:/etc/searxng&#34;</span> <span class="se">\
</span></span></span><span class="line"><span class="cl"> -e <span class="s2">&#34;BASE_URL=http://searx.jdysmcl.xyz/&#34;</span> <span class="se">\
</span></span></span><span class="line"><span class="cl"> -e <span class="s2">&#34;INSTANCE_NAME=go on big boy dont be shy&#34;</span> <span class="se">\
</span></span></span><span class="line"><span class="cl"> searxng/searxng
</span></span></code></pre></div><h3 id="bits-and-bobs">bits and bobs</h3>
<p>As you can see, nix very kindly provides you with convenient options for the most essential tasks: mounting volumes, exposing ports, passing environment variables etc. But what about some more niche configurations that aren&rsquo;t exposed in <a href="https://github.com/NixOS/nixpkgs/blob/master/nixos/modules/virtualisation/oci-containers.nix">oci-containers.nix</a>. As far as I can tell, your best bet in these scenarios is <code>virtualisation.oci-containers.containers.&lt;name&gt;.extraOptions</code>; this lets you pass a list of command line arguments to your docker run command. For example, I had this in my config for a vpn container.</p>
<div class="highlight"><pre tabindex="0" class="chroma"><code class="language-nix" data-lang="nix"><span class="line"><span class="cl"><span class="n">virtualisation</span><span class="o">.</span><span class="n">oci-containers</span><span class="o">.</span><span class="n">containers</span><span class="o">.</span><span class="s2">&#34;vpn&#34;</span><span class="o">.</span><span class="n">extraOptions</span> <span class="o">=</span> <span class="p">[</span>