mirror of
https://github.com/markbeep/AudioBookRequest.git
synced 2026-01-24 15:09:58 -06:00
68 lines
22 KiB
XML
68 lines
22 KiB
XML
<?xml version="1.0" encoding="utf-8" standalone="yes"?>
|
|
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
|
|
<channel>
|
|
<title>AudioBookRequest on AudioBookRequest Docs</title>
|
|
<link>https://markbeep.github.io/AudioBookRequest/</link>
|
|
<description>Recent content in AudioBookRequest on AudioBookRequest Docs</description>
|
|
<generator>Hugo</generator>
|
|
<language>en</language>
|
|
<atom:link href="https://markbeep.github.io/AudioBookRequest/index.xml" rel="self" type="application/rss+xml" />
|
|
<item>
|
|
<title>Docker</title>
|
|
<link>https://markbeep.github.io/AudioBookRequest/docs/getting-started/running-the-app/docker/</link>
|
|
<pubDate>Mon, 09 Jun 2025 13:03:35 +0200</pubDate>
|
|
<guid>https://markbeep.github.io/AudioBookRequest/docs/getting-started/running-the-app/docker/</guid>
|
|
<description><p>If you prefer to run the app manually with docker, you can simply run the
following command:</p>
<div class="highlight"><pre tabindex="0" style="color:#b0c4de;background-color:#282c34;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-bash" data-lang="bash"><span style="display:flex;"><span>docker run -p 8000:8000 -v <span style="color:#c678dd">$(</span><span style="color:#ef8383">pwd</span><span style="color:#c678dd">)</span>/config:/config markbeep/audiobookrequest:1
</span></span></code></pre></div><p>This will start the container on port 8000 and create the <code>config/</code> directory in
your current working directory.</p>
<p>The above command might break on Windows. Instead, use
<code>${PWD}\config:/config ...</code> in PowerShell or <code>%cd%\config:/config ...</code> in
Windows Command Prompt.</p>


<div class="alert alert-primary" role="alert">
<h4 class="alert-heading">Versions</h4>

 <p>The <code>:1</code> at the end denotes the image version.
Check <a href="https://hub.docker.com/r/markbeep/audiobookrequest/tags">dockerhub</a> for
any other versions you can use instead.</p></description>
|
|
</item>
|
|
<item>
|
|
<title>Docker Compose</title>
|
|
<link>https://markbeep.github.io/AudioBookRequest/docs/getting-started/running-the-app/docker-compose/</link>
|
|
<pubDate>Mon, 09 Jun 2025 13:03:35 +0200</pubDate>
|
|
<guid>https://markbeep.github.io/AudioBookRequest/docs/getting-started/running-the-app/docker-compose/</guid>
|
|
<description><p>Docker-compose works the similar way as <a href="https://markbeep.github.io/AudioBookRequest/docs/getting-started/running-the-app/docker/">Docker</a>.</p>
<p>The basic docker compose file is as follows:</p>
<div class="highlight"><pre tabindex="0" style="color:#b0c4de;background-color:#282c34;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-yaml" data-lang="yaml"><span style="display:flex;"><span><span style="color:#e06c75">services</span>:
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">web</span>:
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">image</span>: <span style="color:#98c379">markbeep/audiobookrequest:1</span>
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">ports</span>:
</span></span><span style="display:flex;"><span> - <span style="color:#98c379">&#39;8000:8000&#39;</span>
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">volumes</span>:
</span></span><span style="display:flex;"><span> - <span style="color:#98c379">./config:/config</span>
</span></span></code></pre></div><p>If you want to add any environment variables, you can add them as explained
<a href="https://docs.docker.com/compose/how-tos/environment-variables/set-environment-variables/">here</a>.
It would look along the lines of this:</p>
<div class="highlight"><pre tabindex="0" style="color:#b0c4de;background-color:#282c34;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-yaml" data-lang="yaml"><span style="display:flex;"><span><span style="color:#e06c75">services</span>:
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">web</span>:
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">image</span>: <span style="color:#98c379">markbeep/audiobookrequest:1</span>
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">ports</span>:
</span></span><span style="display:flex;"><span> - <span style="color:#98c379">&#39;8000:5432&#39;</span>
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">volumes</span>:
</span></span><span style="display:flex;"><span> - <span style="color:#98c379">./config:/config</span>
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">environment</span>:
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">ABR_APP__PORT</span>: <span style="color:#d19a66">5432</span>
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">ABR_APP__OPENAPI_ENABLED</span>: <span style="color:#b756ff;font-weight:bold">true</span>
</span></span></code></pre></div></description>
|
|
</item>
|
|
<item>
|
|
<title>Kubernetes</title>
|
|
<link>https://markbeep.github.io/AudioBookRequest/docs/getting-started/running-the-app/kubernetes/</link>
|
|
<pubDate>Mon, 09 Jun 2025 13:03:35 +0200</pubDate>
|
|
<guid>https://markbeep.github.io/AudioBookRequest/docs/getting-started/running-the-app/kubernetes/</guid>
|
|
<description><p>Here&rsquo;s an example for a kubernetes deployment file you&rsquo;d use:</p>
<div class="highlight"><pre tabindex="0" style="color:#b0c4de;background-color:#282c34;-moz-tab-size:4;-o-tab-size:4;tab-size:4;"><code class="language-yaml" data-lang="yaml"><span style="display:flex;"><span><span style="color:#e06c75">apiVersion</span>: <span style="color:#98c379">apps/v1</span>
</span></span><span style="display:flex;"><span><span style="color:#e06c75">kind</span>: <span style="color:#98c379">Deployment</span>
</span></span><span style="display:flex;"><span><span style="color:#e06c75">metadata</span>:
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">name</span>: <span style="color:#98c379">audiobookrequest</span>
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">labels</span>:
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">app</span>: <span style="color:#98c379">audiobookrequest</span>
</span></span><span style="display:flex;"><span><span style="color:#e06c75">spec</span>:
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">replicas</span>: <span style="color:#d19a66">1</span>
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">selector</span>:
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">matchLabels</span>:
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">app</span>: <span style="color:#98c379">audiobookrequest</span>
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">template</span>:
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">metadata</span>:
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">labels</span>:
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">app</span>: <span style="color:#98c379">audiobookrequest</span>
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">spec</span>:
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">containers</span>:
</span></span><span style="display:flex;"><span> - <span style="color:#e06c75">name</span>: <span style="color:#98c379">audiobookrequest</span>
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">image</span>: <span style="color:#98c379">markbeep/audiobookrequest:1</span>
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">imagePullPolicy</span>: <span style="color:#98c379">Always</span>
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">volumeMounts</span>:
</span></span><span style="display:flex;"><span> - <span style="color:#e06c75">mountPath</span>: <span style="color:#98c379">/config</span>
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">name</span>: <span style="color:#98c379">abr-config</span>
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">ports</span>:
</span></span><span style="display:flex;"><span> - <span style="color:#e06c75">name</span>: <span style="color:#98c379">http-request</span>
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">containerPort</span>: <span style="color:#d19a66">8000</span>
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">volumes</span>:
</span></span><span style="display:flex;"><span> - <span style="color:#e06c75">name</span>: <span style="color:#98c379">abr-config</span>
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">hostPath</span>:
</span></span><span style="display:flex;"><span> <span style="color:#e06c75">path</span>: <span style="color:#98c379">/mnt/disk/AudioBookRequest/</span>
</span></span></code></pre></div><p>For the volume you can assign it a host path on a node, or assign it to a PVC.</p></description>
|
|
</item>
|
|
<item>
|
|
<title>Bare Metal</title>
|
|
<link>https://markbeep.github.io/AudioBookRequest/docs/getting-started/running-the-app/bare-metal/</link>
|
|
<pubDate>Mon, 09 Jun 2025 13:03:35 +0200</pubDate>
|
|
<guid>https://markbeep.github.io/AudioBookRequest/docs/getting-started/running-the-app/bare-metal/</guid>
|
|
<description><div class="alert alert-warning" role="alert">
<h4 class="alert-heading">Warning</h4>

 <p>The bare metal approach should
only be the last option. Try to get it working with Docker or get support on the
Discord server before trying to set ABR up for a bare metal deployment.</p>
<p>There are no guarantees that if one version works locally that it won&rsquo;t suddenly
break in the next because of a new dependency, new file structure or something
else.</p>


</div>

<p>To run ABR locally without Docker, the same steps as for the
<a href="https://markbeep.github.io/AudioBookRequest/docs/local-development/">local development</a> have to be followed. First, follow
the instructions to get local development working.</p></description>
|
|
</item>
|
|
<item>
|
|
<title>Contribution Guidelines</title>
|
|
<link>https://markbeep.github.io/AudioBookRequest/docs/contribution-guidelines/</link>
|
|
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
|
|
<guid>https://markbeep.github.io/AudioBookRequest/docs/contribution-guidelines/</guid>
|
|
<description><p>We use <a href="https://gohugo.io/">Hugo</a> to format and generate our website, the
<a href="https://github.com/google/docsy">Docsy</a> theme for styling and site structure,
and <a href="https://pages.github.com/">Github Pages</a> to manage the deployment of the
site. Hugo is an open-source static site generator that provides us with
templates, content organisation in a standard directory structure, and a website
generation engine. You write the pages in Markdown (or HTML if you want), and
Hugo wraps them up into a website.</p>
<p>All submissions require review. We use GitHub pullas requests for this purpose.
Consult <a href="https://help.github.com/articles/about-pull-requests/">GitHub Help</a> for
more information on using pull requests.</p></description>
|
|
</item>
|
|
<item>
|
|
<title>Environment Variables</title>
|
|
<link>https://markbeep.github.io/AudioBookRequest/docs/concepts/environment-variables/</link>
|
|
<pubDate>Mon, 09 Jun 2025 13:46:33 +0200</pubDate>
|
|
<guid>https://markbeep.github.io/AudioBookRequest/docs/concepts/environment-variables/</guid>
|
|
<description><table>
 <thead>
 <tr>
 <th>ENV</th>
 <th>Description</th>
 <th>Default</th>
 </tr>
 </thead>
 <tbody>
 <tr>
 <td><code>ABR_APP__PORT</code></td>
 <td>The port to run the server on.</td>
 <td>8000</td>
 </tr>
 <tr>
 <td><code>ABR_APP__DEBUG</code></td>
 <td>If to enable debug mode. Not recommended for production.</td>
 <td>false</td>
 </tr>
 <tr>
 <td><code>ABR_APP__OPENAPI_ENABLED</code></td>
 <td>If set to <code>true</code>, enables an OpenAPI specs page on <code>/docs</code>.</td>
 <td>false</td>
 </tr>
 <tr>
 <td><code>ABR_APP__CONFIG_DIR</code></td>
 <td>The directory path where persistant data and configuration is stored. If ran using Docker or Kubernetes, this is the location a volume should be mounted to.</td>
 <td>/config</td>
 </tr>
 <tr>
 <td><code>ABR_APP__LOG_LEVEL</code></td>
 <td>One of <code>DEBUG</code>, <code>INFO</code>, <code>WARN</code>, <code>ERROR</code>.</td>
 <td>INFO</td>
 </tr>
 <tr>
 <td><code>ABR_APP__BASE_URL</code></td>
 <td>Defines the base url the website is hosted at. If the website is accessed at <code>example.org/abr/</code>, set the base URL to <code>/abr/</code></td>
 <td></td>
 </tr>
 <tr>
 <td><code>ABR_DB__SQLITE_PATH</code></td>
 <td>If relative, path and name of the sqlite database in relation to <code>ABR_APP__CONFIG_DIR</code>. If absolute (path starts with <code>/</code>), the config dir is ignored and only the absolute path is used.</td>
 <td>db.sqlite</td>
 </tr>
 <tr>
 <td><code>ABR_APP__DEFAULT_REGION</code></td>
 <td>Default audible region to use for the search. Has to be one of <code>us, ca, uk, au, fr, de, jp, it, in, es, br</code>.</td>
 <td>us</td>
 </tr>
 <tr>
 <td><code>ABR_APP__FORCE_LOGIN_TYPE</code></td>
 <td>Forces the login type and prevents it from being modified. Can be one of <code>basic</code>, <code>forms</code>, <code>oidc</code>, or <code>none</code> to disable the login. <code>oidc</code> requires both the <code>ABR_APP__INIT_ROOT_USERNAME</code> and <code>ABR_APP__INIT_ROOT_PASSWORD</code> environment variables to be set.</td>
 <td></td>
 </tr>
 <tr>
 <td><code>ABR_APP__INIT_ROOT_USERNAME</code></td>
 <td>Sets the initial username of the root user when first launching ABR. Has no effect if a root admin already exists.</td>
 <td></td>
 </tr>
 <tr>
 <td><code>ABR_APP__INIT_ROOT_PASSWORD</code></td>
 <td>Sets the initial password of the root user when first launching ABR. Has no effect if a root admin already exists.</td>
 <td></td>
 </tr>
 </tbody>
</table>


<div class="alert alert-primary" role="alert">
<h4 class="alert-heading">Note</h4>

 There are two underscores (<code>__</code>) between the first
and second part of each environment variable like between <code>ABR_APP</code> and <code>PORT</code>.

</div></description>
|
|
</item>
|
|
<item>
|
|
<title>Indexers</title>
|
|
<link>https://markbeep.github.io/AudioBookRequest/docs/tutorials/api/indexers/</link>
|
|
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
|
|
<guid>https://markbeep.github.io/AudioBookRequest/docs/tutorials/api/indexers/</guid>
|
|
<description><p>There are two main endpoints to work with indexers:</p>
<ul>
<li>A <code>PATCH</code> to update indexer settings.</li>
<li>A <code>GET</code> to get all the available configuration settings for the indexers.</li>
</ul>
<p>Head to the main <a href="https://markbeep.github.io/AudioBookRequest/docs/tutorials/api/">API Docs</a> to see how you can access the SwaggerUI
and more easily test the endpoints.</p>
<h2 id="getting-the-indexer-configurations">Getting the Indexer Configurations<a class="td-heading-self-link" href="#getting-the-indexer-configurations" aria-label="Heading self-link"></a></h2>
<p>To figure out what values you need to adjust, <code>GET</code> the endpoint
<code>/api/indexers/configurations</code>.</p>
<p>This will give you something along the lines of this:</p></description>
|
|
</item>
|
|
<item>
|
|
<title>Search Results</title>
|
|
<link>https://markbeep.github.io/AudioBookRequest/search/</link>
|
|
<pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate>
|
|
<guid>https://markbeep.github.io/AudioBookRequest/search/</guid>
|
|
<description></description>
|
|
</item>
|
|
</channel>
|
|
</rss>
|