invidious6 / Dockerfile
soiz1's picture
Update Dockerfile
5a2d480 verified
# ステージ1: トークンを生成するだけのステージ
FROM quay.io/invidious/youtube-trusted-session-generator AS token_generator
COPY config.yml /invidious/config/config.yml
# 出力ファイルを仮に作成(このコンテナ自体は出力するだけ)
RUN /bin/sh -c 'docker-trusted-session-generator > /tokens.txt' || echo "po_token: dummy\nvisitor_data: dummy" > /tokens.txt
# ステージ2: Invidious の本体
FROM quay.io/invidious/invidious:master
USER root
# 必要なツールをインストール
RUN apk update && apk add --no-cache bash grep sed curl
# トークン出力をコピー(Stage 1 → Stage 2)
COPY --from=token_generator /tokens.txt /tmp/tokens.txt
# トークンを config.yml に適用
RUN po_token=$(grep po_token /tmp/tokens.txt | cut -d ' ' -f 2) && \
visitor_data=$(grep visitor_data /tmp/tokens.txt | cut -d ' ' -f 2) && \
sed -i "s/^po_token:.*/po_token: $po_token/" /invidious/config/config.yml && \
sed -i "s/^visitor_data:.*/visitor_data: $visitor_data/" /invidious/config/config.yml
# 任意の環境変数
ENV INVIDIOUS_CONFIG_LANG=ja
ENV INVIDIOUS_CONFIG_DEFAULT_REGION=JP