Add configuration for Shiori, bookmark manager

This is, apparently, the easiest solution to set up, while still being
as featureful as required for simple use (readable and PDF archive of
bookmarks).
This commit is contained in:
Alex Palaistras 2024-01-14 17:07:04 +00:00
parent eded524eba
commit 90c57f3aee
6 changed files with 67 additions and 0 deletions

View File

@ -26,6 +26,7 @@ ignition:
- local: service/slidge/spec.ign
- local: service/lldap/spec.ign
- local: service/gotosocial/spec.ign
- local: service/shiori/spec.ign
passwd:
users:
@ -148,6 +149,14 @@ systemd:
[Service]
Environment=UPSTREAM_HOST=gotosocial UPSTREAM_PORT=8080
- name: nginx-proxy-http@bookmarks.localhost.service
enabled: true
dropins:
- name: shiori-upstream.conf
contents: |
[Service]
Environment=UPSTREAM_HOST=shiori UPSTREAM_PORT=8080
- name: letsencrypt-dns-register@localhost.service
enabled: true
dropins:

View File

@ -76,3 +76,6 @@ SLIDGE_SECRET_KEY=password
# Configuration for Grafana.
GRAFANA_DOMAIN=metrics.localhost
# Configuration for Shiori.
SHIORI_SECRET_KEY=password

View File

@ -0,0 +1,22 @@
FROM docker.io/debian:bookworm-slim@sha256:f4a83aa865a2b4a064ff142aa91c713180df9fcb86ce676b5de2981029379c37 AS builder
ARG VERSION=1.5.5 # renovate: datasource=github-releases depName=go-shiori/shiori extractVersion=^v(?<version>.*)$
WORKDIR /src
ADD https://github.com/go-shiori/shiori/releases/download/v${VERSION}/shiori_Linux_x86_64.tar.gz /src.tar.gz
RUN tar --no-same-owner -xvzf /src.tar.gz && \
install -D --mode 0755 /src/shiori /build/usr/bin/shiori
FROM docker.io/debian:bookworm-slim@sha256:f4a83aa865a2b4a064ff142aa91c713180df9fcb86ce676b5de2981029379c37
RUN apt-get update -y && apt-get upgrade -y && apt-get install -y --no-install-recommends \
ca-certificates gettext gosu
RUN apt-get update -y && apt-get install -y --no-install-recommends \
curl
RUN adduser --system --group --uid 10000 --home /var/lib/shiori shiori
COPY --from=builder /build /
USER shiori
ENTRYPOINT ["/usr/bin/shiori", "serve"]

View File

@ -0,0 +1,20 @@
[Unit]
Description=Shiori Simple Bookmark Manager
Wants=container-build@%N.service container-volume@%N.service
After=container-build@%N.service container-volume@%N.service
[Container]
AutoUpdate=local
ContainerName=%N
EnvironmentFile=%E/coreos-home-server/%N/%N.env
HealthCmd=timeout 5s curl --fail --silent --show-error -o /dev/null localhost:8080
Image=localhost/%N:latest
Network=internal
PodmanArgs=--sdnotify=healthy
Volume=%N:/var/lib/%N:z
[Service]
Restart=on-failure
[Install]
WantedBy=multi-user.target

View File

@ -0,0 +1,5 @@
# HTTP configuration.
SHIORI_SECRET_KEY="${SHIORI_SECRET_KEY}"
# Storage configuration.
SHIORI_DIR=/var/lib/shiori

8
service/shiori/spec.bu Normal file
View File

@ -0,0 +1,8 @@
variant: fcos
version: 1.3.0
storage:
trees:
- path: /etc/coreos-home-server/shiori
local: service/shiori/
- path: /etc/containers/systemd
local: service/shiori/quadlet/