Alpine container with bare minimum dependencies required for rffmpeg database manipulation
1.6K
Simple image built off Alpine that I use as an InitContainer to re-initialize the SQLite database of rffmpeg workers in my Kubernetes deployments, mainly Jellyfin-rffmpeg. There are much better ways to do this that scale easier, especially since rffmpeg supports PostgreSQL, but this was easier for me to manage in my personal, small deployment of two GPU nodes. This way I don't have to run any commands on the main container image, this InitContainer will prep the database for other containers beforehand in just a couple seconds.
Example below:
initContainers:
- name: rffmpeg-db-client
image: cplemaster/rffmpeg-db-client:latest
imagePullPolicy: IfNotPresent
command: ["/bin/sh", "-c"]
args:
- |
mkdir -p /config/rffmpeg/db && \
mkdir -p /config/rffmpeg/log && \
yes | rffmpeg init && \
rffmpeg add rffmpeg-worker1-service && \
rffmpeg add rffmpeg-worker2-service
volumeMounts:
- name: rffmpeg-config ## rffmpeg config in a ConfigMap
mountPath: /etc/rffmpeg/rffmpeg.yml
subPath: rffmpeg.yml
- name: jellyfin-rffmpeg-config ## jellyfin config/database volume, I store my rffmpeg DB in the same volume
mountPath: /config
containers:
- name: jellyfin-rffmpeg
[...]
volumeMounts:
- name: jellyfin-rffmpeg-config
mountPath: /config
- name: rffmpeg-config
mountPath: /etc/rffmpeg/rffmpeg.yml
Content type
Image
Digest
sha256:a00cde27b…
Size
18.7 MB
Last updated
over 1 year ago
docker pull cplemaster/rffmpeg-db-client