Urara-Blog/build/_app/immutable/pages/2022-06-15-jellyfin/index.md-6a39e776 2.js
2022-08-14 01:14:53 +08:00

9 lines
40 KiB
JavaScript

import{S as hr,i as br,s as Pr,C as qo,w as Qe,x as ge,y as el,z as $r,A as dr,f as ll,t as sl,B as tl,X as Fr,l as o,r as a,a as f,V as Ye,m as r,n as p,u as i,h as l,c,W as Ke,p as d,b as n,G as s,E as xr}from"../../chunks/index-cd58b8d1.js";import{P as wr}from"../../chunks/post_layout-9085e57e.js";import{I as Ul}from"../../chunks/post_card-e7f4525a.js";import"../../chunks/posts-c52cb603.js";import"../../chunks/title-765c989f.js";import"../../chunks/index-81c83cec.js";import"../../chunks/head-4a058b17.js";import"../../chunks/icon-3aa13b39.js";import"../../chunks/footer-1abd9501.js";import"../../chunks/posts-57ab4794.js";function Cr(ye){let F,h,E,U,v,u,m,Xs,C,Us,Ms,Ml,M,_e,Zs,Zl,k,qs,j,Bs,Ws,ql,Z,Ys,A,Ks,Bl,me,Qs,Wl,q,gs,B,Yl,De,W,Kl,he,be,et,Ql,Y,Pe,lt,gl,y,st,S,tt,ot,O,at,rt,J,pt,it,es,K,$e,nt,ls,xe,ft,ss,ol,Er=`<pre class="shiki material-default with-title" style="background-color: #263238; color: #EEFFFF" bash="true" title="/etc/nginx/conf.d/jellyfin.conf"><div class='code-title'>/etc/nginx/conf.d/jellyfin.conf</div><div class="language-id">bash</div><div class='code-container'><code><div class='line dim'><span style="color: #EEFFFF"> location / </span><span style="color: #89DDFF">&#123;</span></div><div class='line dim'><span style="color: #EEFFFF"> proxy_set_header X-Forwarded-For </span><span style="color: #89DDFF">$</span><span style="color: #EEFFFF">proxy_add_x_forwarded_for</span><span style="color: #89DDFF">;</span></div><div class='line dim'><span style="color: #EEFFFF"> proxy_set_header Host </span><span style="color: #89DDFF">$</span><span style="color: #EEFFFF">http_host</span><span style="color: #89DDFF">;</span></div><div class='line dim'><span style="color: #EEFFFF"> proxy_redirect off</span><span style="color: #89DDFF">;</span></div><div class='line dim'><span style="color: #EEFFFF"> proxy_pass http://127.0.0.1:5212</span><span style="color: #89DDFF">;</span></div><div class='line'></div><div class='line dim'><span style="color: #89DDFF"> </span><span style="color: #546E7A"># \u5982\u679C\u60A8\u8981\u4F7F\u7528\u672C\u5730\u5B58\u50A8\u7B56\u7565\uFF0C\u8BF7\u5C06\u4E0B\u4E00\u884C\u6CE8\u91CA\u7B26\u5220\u9664\uFF0C\u5E76\u66F4\u6539\u5927\u5C0F\u4E3A\u7406\u8BBA\u6700\u5927\u6587\u4EF6\u5C3A\u5BF8</span></div><div class='line highlight'><span style="color: #EEFFFF"> client_max_body_size 20000m</span><span style="color: #89DDFF">;</span></div><div class='line dim'><span style="color: #EEFFFF"> </span><span style="color: #89DDFF">&#125;</span></div></code></div></pre>`,al,Q,we,ct,ts,L,g,rl,pl,dt,Ft,H,vt,il,Et,ut,ee,yt,$,nl,fl,_t,mt,Ce,Dt,le,ht,x,se,cl,bt,Pt,dl,$t,xt,te,Fl,wt,Ct,vl,kt,jt,oe,El,At,St,ul,Ot,os,ae,Jt,yl,Lt,as,re,ke,Ht,rs,pe,je,It,ps,Ae,Nt,is,ie,Tt,I,Rt,ns,Se,Vt,fs,_l,ur=`<pre class="shiki material-default" style="background-color: #263238; color: #EEFFFF" bash="true"><div class="language-id">bash</div><div class='code-container'><code><div class='line'><span style="color: #EEFFFF">sudo mkdir /opt/jellyfin </span><span style="color: #89DDFF">&&</span><span style="color: #EEFFFF"> </span><span style="color: #82AAFF">cd</span><span style="color: #EEFFFF"> /opt/jellyfin</span></div></code></div></pre>`,ml,Oe,Gt,cs,Dl,yr=`<pre class="shiki material-default" style="background-color: #263238; color: #EEFFFF" bash="true"><div class="language-id">bash</div><div class='code-container'><code><div class='line'><span style="color: #EEFFFF">sudo nano docker-compose.yml</span></div></code></div></pre>`,hl,Je,zt,ds,bl,_r=`<pre class="shiki material-default with-title" style="background-color: #263238; color: #EEFFFF" yaml="true" title="docker-compose.yml"><div class='code-title'>docker-compose.yml</div><div class="language-id">yaml</div><div class='code-container'><code><div class='line dim'><span style="color: #F07178">version</span><span style="color: #89DDFF">:</span><span style="color: #EEFFFF"> </span><span style="color: #89DDFF">'</span><span style="color: #C3E88D">3.5</span><span style="color: #89DDFF">'</span></div><div class='line dim'><span style="color: #F07178">services</span><span style="color: #89DDFF">:</span></div><div class='line dim'><span style="color: #EEFFFF"> </span><span style="color: #F07178">jellyfin</span><span style="color: #89DDFF">:</span></div><div class='line dim'><span style="color: #EEFFFF"> </span><span style="color: #F07178">image</span><span style="color: #89DDFF">:</span><span style="color: #EEFFFF"> </span><span style="color: #C3E88D">jellyfin/jellyfin</span></div><div class='line dim'><span style="color: #EEFFFF"> </span><span style="color: #F07178">container_name</span><span style="color: #89DDFF">:</span><span style="color: #EEFFFF"> </span><span style="color: #C3E88D">jellyfin</span></div><div class='line dim'><span style="color: #EEFFFF"> </span><span style="color: #F07178">user</span><span style="color: #89DDFF">:</span><span style="color: #EEFFFF"> </span><span style="color: #C3E88D">root</span></div><div class='line dim'><span style="color: #EEFFFF"> </span><span style="color: #F07178">network_mode</span><span style="color: #89DDFF">:</span><span style="color: #EEFFFF"> </span><span style="color: #89DDFF">'</span><span style="color: #C3E88D">host</span><span style="color: #89DDFF">'</span></div><div class='line dim'><span style="color: #EEFFFF"> </span><span style="color: #F07178">volumes</span><span style="color: #89DDFF">:</span></div><div class='line dim'><span style="color: #EEFFFF"> </span><span style="color: #89DDFF">-</span><span style="color: #EEFFFF"> </span><span style="color: #C3E88D">/path/to/config:/config</span></div><div class='line dim'><span style="color: #EEFFFF"> </span><span style="color: #89DDFF">-</span><span style="color: #EEFFFF"> </span><span style="color: #C3E88D">/path/to/cache:/cache</span></div><div class='line highlight'><span style="color: #EEFFFF"> </span><span style="color: #89DDFF">-</span><span style="color: #EEFFFF"> </span><span style="color: #C3E88D">/path/to/media:/media</span><span style="color: #EEFFFF"> </span><span style="color: #546E7A">#\u4FEE\u6539\u4E3Acloudreve\u7684\u6587\u4EF6\u5939</span></div><div class='line highlight'><span style="color: #EEFFFF"> </span><span style="color: #89DDFF">-</span><span style="color: #EEFFFF"> </span><span style="color: #C3E88D">/path/to/media2:/media2:ro</span><span style="color: #EEFFFF"> </span><span style="color: #546E7A">#\u4FEE\u6539\u4E3Acloudreve\u7684\u6587\u4EF6\u5939</span></div><div class='line dim'><span style="color: #EEFFFF"> </span><span style="color: #F07178">restart</span><span style="color: #89DDFF">:</span><span style="color: #EEFFFF"> </span><span style="color: #89DDFF">'</span><span style="color: #C3E88D">unless-stopped</span><span style="color: #89DDFF">'</span></div><div class='line dim'><span style="color: #89DDFF"> </span><span style="color: #546E7A"># Optional - alternative address used for autodiscovery</span></div><div class='line dim'><span style="color: #EEFFFF"> </span><span style="color: #F07178">environment</span><span style="color: #89DDFF">:</span></div><div class='line dim'><span style="color: #EEFFFF"> </span><span style="color: #89DDFF">-</span><span style="color: #EEFFFF"> </span><span style="color: #C3E88D">JELLYFIN_PublishedServerUrl=http://\u4F60\u7684\u57DF\u540D</span></div></code></div></pre>`,Pl,_,Xt,$l,Ut,Mt,xl,Zt,qt,wl,Bt,Wt,Fs,w,Yt,Cl,Kt,Qt,kl,gt,vs,b,eo,jl,lo,so,Al,to,oo,Es,ne,Le,ao,us,He,ro,ys,Ie,po,_s,Sl,mr=`<pre class="shiki material-default" style="background-color: #263238; color: #EEFFFF" bash="true"><div class="language-id">bash</div><div class='code-container'><code><div class='line'><span style="color: #EEFFFF">sudo nano /etc/nginx/conf.d/jellyfin.conf</span></div></code></div></pre>`,Ol,Ne,io,ms,Jl,Dr=`<pre class="shiki material-default with-title" style="background-color: #263238; color: #EEFFFF" bash="true" title="/etc/nginx/conf.d/jellyfin.conf"><div class='code-title'>/etc/nginx/conf.d/jellyfin.conf</div><div class="language-id">bash</div><div class='code-container'><code><div class='line dim'><span style="color: #EEFFFF">server </span><span style="color: #89DDFF">&#123;</span></div><div class='line dim'><span style="color: #EEFFFF"> listen 80</span><span style="color: #89DDFF">;</span></div><div class='line highlight'><span style="color: #EEFFFF"> server_name \u4F60\u7684\u57DF\u540D</span><span style="color: #89DDFF">;</span></div><div class='line dim'><span style="color: #EEFFFF"> location / </span><span style="color: #89DDFF">&#123;</span></div><div class='line highlight'><span style="color: #EEFFFF"> proxy_pass http://127.0.0.1:8096</span><span style="color: #89DDFF">;</span></div><div class='line dim'><span style="color: #EEFFFF"> proxy_set_header HOST </span><span style="color: #89DDFF">$</span><span style="color: #EEFFFF">host</span><span style="color: #89DDFF">;</span></div><div class='line dim'><span style="color: #EEFFFF"> proxy_set_header X-Forwarded-Proto </span><span style="color: #89DDFF">$</span><span style="color: #EEFFFF">scheme</span><span style="color: #89DDFF">;</span></div><div class='line dim'><span style="color: #EEFFFF"> proxy_set_header X-Real-IP </span><span style="color: #89DDFF">$</span><span style="color: #EEFFFF">remote_addr</span><span style="color: #89DDFF">;</span></div><div class='line dim'><span style="color: #EEFFFF"> proxy_set_header X-Forwarded-For </span><span style="color: #89DDFF">$</span><span style="color: #EEFFFF">proxy_add_x_forwarded_for</span><span style="color: #89DDFF">;</span></div><div class='line dim'><span style="color: #EEFFFF"> </span><span style="color: #89DDFF">&#125;</span></div><div class='line dim'><span style="color: #89DDFF">&#125;</span></div></code></div></pre>`,Ll,N,no,Te,fo,co,Ds,P,Fo,Hl,vo,Eo,Il,uo,yo,hs,fe,Re,_o,bs,Ve,mo,Ps,ce,Do,Nl,ho,$s,Ge,de,xs,Fe,ze,bo,ws,D,Po,Tl,$o,xo,Rl,wo,Co,Vl,ko,Cs,Xe,jo,ks,T,Ue,R,Ao,So,Oo,ve,Jo,V,Lo,Ho,js,Ee,Me,Io,As,G,No,Gl,To,Ro,Ss;return B=new Ul({props:{src:"https://usc1.contabostorage.com/cc0b816231a841b1b0232d5ef0c6deb1:image/2022/06/f83e0e4eca39ffd0304f847c6ad7b7e2.png"}}),W=new Ul({props:{src:"https://usc1.contabostorage.com/cc0b816231a841b1b0232d5ef0c6deb1:image/2022/06/820aa9841a44a52a29436549463e3355.png"}}),ee=new Ul({props:{src:"https://usc1.contabostorage.com/cc0b816231a841b1b0232d5ef0c6deb1:image/2022/06/7aa6d1e4d5d539d725929075b4cf2c5a.png"}}),le=new Ul({props:{src:"https://usc1.contabostorage.com/cc0b816231a841b1b0232d5ef0c6deb1:image/2022/06/4a316f6d84f90c58af4d7da1c2480447.png"}}),de=new Ul({props:{src:"https://usc1.contabostorage.com/cc0b816231a841b1b0232d5ef0c6deb1:image/2022/06/6fc496318737b099af362731dc5958c6.png"}}),{c(){F=o("p"),h=a("\u6628\u5929\u642D\u4E86\u4E00\u4E0B Pleroma\uFF0C\u5B8C\u5168\u5931\u8D25\uFF0C\u5B8C\u5168\u6CA1\u4FE1\u5FC3\u4E86\uFF0C\u6240\u4EE5\u4ECA\u5929\u51B3\u5B9A\u968F\u4FBF\u5728"),E=o("a"),U=a("Awesome Self Hosted | LibHunt"),v=a("\u627E\u4E86\u4E00\u4E2A\u6392\u540D\u5F88\u9760\u524D\u7684\u4E1C\u897F\u642D\u4E00\u4E0B\uFF0C\u7ED9\u81EA\u5DF1\u5EFA\u7ACB\u4E00\u70B9\u6CA1\u6709\u5FC5\u8981\u7684\u4FE1\u5FC3\u2026\u2026"),u=f(),m=o("p"),Xs=a("\u521A\u597D\u6700\u8FD1\u670B\u53CB\u627E\u7535\u5F71\u8D44\u6E90\u5F88\u72AF\u96BE\uFF0C\u6240\u4EE5\u6211\u51B3\u5B9A\u62FF\u6392\u5728 Media \u7B2C\u4E00\u7684"),C=o("a"),Us=a("Jellyfin"),Ms=a("\u8BD5\u8BD5\u624B\u3002"),Ml=f(),M=o("h2"),_e=o("a"),Zs=a("\u5173\u4E8E Jellyfin"),Zl=f(),k=o("p"),qs=a("Jellyfin \u662F\u4E00\u4E2A\u5728\u7EBF\u7684\u6D41\u5A92\u4F53\u5F71\u97F3\u5E93\uFF0C\u5BF9\u7535\u5F71\u3001\u97F3\u4E50\u3001\u6709\u58F0\u4E66\u90FD\u6709\u6BD4\u8F83\u597D\u7684\u652F\u6301\u3002\u9664\u4E86\u5728 web \u7AEF\u89C2\u770B\u4E4B\u5916\uFF0C\u5B83\u8FD8\u652F\u6301\u5F88\u591A\u7684"),j=o("a"),Bs=a("\u5BA2\u6237\u7AEF"),Ws=a("\uFF0C\u51E0\u4E4E\u662F\u968F\u5904\u53EF\u7528\uFF0C\u76EE\u524D\u6211\u53EA\u8BD5\u8FC7\u5B89\u5353\u7AEF\u7684\uFF0C\u5176\u529F\u80FD\u4E0E\u7F51\u9875\u7AEF\u65E0\u5F02\uFF0C\u9002\u914D\u5F97\u5F88\u597D\uFF0C\u4F53\u9A8C\u6D41\u7545\u3002"),ql=f(),Z=o("p"),Ys=a("\u53EF\u4EE5\u5728\u8FD9\u91CC\u8BD5\u4E00\u4E0B Demo\uFF1A"),A=o("a"),Ks=a("Jellyfin"),Bl=f(),me=o("p"),Qs=a("\uFF08\u7528\u6237\u540D demo\uFF0C\u5BC6\u7801\u7559\u7A7A\uFF09"),Wl=f(),q=o("p"),gs=a(`\u4E0B\u9762\u662F\u6211\u7684\u6210\u679C:-D
`),Qe(B.$$.fragment),Yl=f(),De=o("p"),Qe(W.$$.fragment),Kl=f(),he=o("p"),be=o("span"),et=a("\u5176\u5B9E\u6211\u4E5F\u662F\u642D\u5B8C\u624D\u77E5\u9053\u5B83\u6709\u4EC0\u4E48\u529F\u80FD\u7684"),Ql=f(),Y=o("h2"),Pe=o("a"),lt=a("Cloudrever"),gl=f(),y=o("p"),st=a("Jellyfin \u76EE\u524D\u4E0D\u652F\u6301 S3 \u5B58\u50A8\uFF0C\u6240\u4EE5\u6211\u9700\u8981\u4E00\u4E2A\u7F51\u76D8\u6765\u5B58\u50A8\u548C\u7BA1\u7406 VPS \u4E0A\u7684\u5A92\u4F53\u8D44\u6E90\u3002\u770B\u4E86\u5854\u5854\u7684 "),S=o("a"),tt=a("\u97F3\u4E50\u5E93\u642D\u5EFA"),ot=a(" \u6587\u7AE0\u540E\u6211\u51B3\u5B9A\u8BD5\u4E00\u4E0B "),O=o("a"),at=a("Cloudreve"),rt=a(" \uFF0C\u5177\u4F53\u7684\u642D\u5EFA\u8FC7\u7A0B\u8FD9\u91CC\u6309\u4E0B\u4E0D\u8868\uFF0C\u662F\u5B8C\u5168\u7167\u7740\u5854\u5854\u7684\u6559\u7A0B\u548C "),J=o("a"),pt=a("Cloudreve \u6587\u6863"),it=a(" \u505A\u7684"),es=f(),K=o("h3"),$e=o("a"),nt=a("\u53CD\u4EE3"),ls=f(),xe=o("p"),ft=a("\u9700\u8981\u6CE8\u610F\u7684\u662F\uFF0C\u914D\u7F6E Nginx \u53CD\u4EE3\u65F6\uFF0C\u4E0E\u5F80\u5E38\u4E0D\u540C\uFF0C\u9700\u8981\u8BBE\u7F6E\u4E00\u4E0B\u6700\u5927\u7684\u6587\u4EF6\u5927\u5C0F\uFF0C\u4EE5\u514D\u540E\u671F\u4E0A\u4F20\u5931\u8D25\uFF1A"),ss=f(),ol=new Ye(!1),al=f(),Q=o("h3"),we=o("a"),ct=a("\u4E00\u4E9B\u914D\u7F6E"),ts=f(),L=o("ol"),g=o("li"),rl=o("p"),pl=o("strong"),dt=a("\u6700\u5927\u5BB9\u91CF"),Ft=f(),H=o("p"),vt=a("\u5728 "),il=o("code"),Et=a("\u7BA1\u7406\u9762\u677F-> \u7528\u6237\u7EC4"),ut=a(` \u91CC\u53EF\u4FEE\u6539
`),Qe(ee.$$.fragment),yt=f(),$=o("li"),nl=o("p"),fl=o("strong"),_t=a("\u914D\u7F6E\u79BB\u7EBF\u4E0B\u8F7D"),mt=f(),Ce=o("p"),Dt=a(`\u914D\u7F6E\u597D\u79BB\u7EBF\u4E0B\u8F7D\u5C31\u53EF\u4EE5\u7528\u5B83\u5728\u540E\u53F0\u4E0B\u8F7D\u79CD\u5B50\u8D44\u6E90\u4E86\u3002
\u5982\u679C\u7528\u7684\u662F docker-compose \u6765\u5B89\u88C5\uFF0C\u4E0B\u9762\u7684\u5E94\u8BE5\u8FD9\u6837\u914D\u7F6E\uFF1A
`),Qe(le.$$.fragment),ht=f(),x=o("ul"),se=o("li"),cl=o("strong"),bt=a("[\u4E0D\u53EF\u4FEE\u6539]"),Pt=a(" RPC \u670D\u52A1\u5668\u5730\u5740 => "),dl=o("code"),$t=a("http://aria2:6800"),xt=f(),te=o("li"),Fl=o("strong"),wt=a("[\u53EF\u4FEE\u6539, \u9700\u4FDD\u6301\u548C docker-compose.yml \u6587\u4EF6\u4E00\u81F4]"),Ct=a(" RPC \u6388\u6743\u4EE4\u724C => "),vl=o("code"),kt=a("your_aria_rpc_token"),jt=f(),oe=o("li"),El=o("strong"),At=a("[\u4E0D\u53EF\u4FEE\u6539]"),St=a(" Aria2 \u7528\u4F5C\u4E34\u65F6\u4E0B\u8F7D\u76EE\u5F55\u7684 \u8282\u70B9\u4E0A\u7684\u7EDD\u5BF9\u8DEF\u5F84 => "),ul=o("code"),Ot=a("/data"),os=f(),ae=o("p"),Jt=a("\u6700\u540E\u5728 cloudreve \u9762\u677F\u91CC\u521B\u5EFA\u4E00\u4E2A\u7528\u6765\u5B58\u653E jelly \u7528\u7684\u6587\u4EF6\u5939\uFF0C\u6BD4\u5982 "),yl=o("code"),Lt=a("jellyfin"),as=f(),re=o("h2"),ke=o("a"),Ht=a("Jellyfin"),rs=f(),pe=o("h3"),je=o("a"),It=a("\u642D\u5EFA"),ps=f(),Ae=o("p"),Nt=a("jellyfin \u7684\u642D\u5EFA\u975E\u5E38\u7B80\u5355\uFF0C\u7ED9\u4E86\u6211\u505A\u4EBA\u7684\u5F88\u5927\u4FE1\u5FC3\uFF08\u6CA1\u6709\uFF09\uFF0C\u6211\u8FD9\u91CC\u4F9D\u65E7\u9009\u62E9\u7528 docker-compose \u6765\u642D\u5EFA\u3002"),is=f(),ie=o("p"),Tt=a("\u5B98\u65B9\u6587\u6863\uFF1A"),I=o("a"),Rt=a("Installing Jellyfin | Documentation - Jellyfin Project"),ns=f(),Se=o("p"),Vt=a("\u9996\u5148\u521B\u5EFA\u4E00\u4E2A\u914D\u7F6E\u6587\u4EF6\u5939\u5E76\u8FDB\u5165\uFF1A"),fs=f(),_l=new Ye(!1),ml=f(),Oe=o("p"),Gt=a("\u521B\u5EFA\u914D\u7F6E\u6587\u4EF6"),cs=f(),Dl=new Ye(!1),hl=f(),Je=o("p"),zt=a("\u5199\u5165\uFF1A"),ds=f(),bl=new Ye(!1),Pl=f(),_=o("p"),Xt=a("\u5176\u4E2D\u9700\u8981\u4FEE\u6539 "),$l=o("code"),Ut=a("/path/to/media:/media"),Mt=a(" \u7684\u524D\u534A\u90E8\u5206\u4E3A cloudreve \u4E2D\u5728 VPS \u4E2D\u7684\u5B58\u50A8\u8DEF\u5F84\uFF0C\u6BD4\u5982\u6539\u4E3A"),xl=o("code"),Zt=a("/opt/drive/cloudreve/uploads/"),qt=a(" \uFF0C\u5982\u679C\u6709\u591A\u4E2A cloudreve \u7528\u6237\u5219\u53EF\u4EE5\u5728\u540E\u9762\u52A0\u7528\u6237 id\uFF0C\u6BD4\u5982 "),wl=o("code"),Bt=a("/opt/drive/cloudreve/uploads/1"),Wt=a(" \u8FD9\u6837"),Fs=f(),w=o("p"),Yt=a("\u7136\u540E"),Cl=o("code"),Kt=a("/path/to/media2"),Qt=a(" \u4E5F\u662F\u540C\u6837\u7684\u4FEE\u6539\uFF0C\u6539\u4E3A "),kl=o("code"),gt=a("/opt/drive/cloudreve/uploads/"),vs=f(),b=o("p"),eo=a("\u6539\u5B8C\u57DF\u540D\u4E4B\u540E\uFF0C\u6267\u884C "),jl=o("code"),lo=a("sudo docker-compose up -d"),so=a(" \u5C31\u53EF\u4EE5\u5728\u7AEF\u53E3 "),Al=o("code"),to=a("\u4F60\u7684ip:8096"),oo=a(" \u770B\u5230\u754C\u9762\u4E86\u3002"),Es=f(),ne=o("h3"),Le=o("a"),ao=a("\u53CD\u4EE3"),us=f(),He=o("p"),ro=a("\u6211\u7528\u7684\u662F Nginx \u6765\u8FDB\u884C\u53CD\u4EE3\uFF0C\u867D\u7136\u6BCF\u6B21\u90FD\u662F\u4E00\u6837\u7684\u64CD\u4F5C\uFF0C\u4F46\u662F\u76F4\u63A5\u5199\u53EF\u4EE5\u590D\u5236\u7C98\u8D34\u4F1A\u6BD4\u8F83\u7B80\u5355\uFF0C\u6240\u4EE5\u6211\u73B0\u5728\u51C6\u5907\u8BF4\u5E9F\u8BDD\u3002"),ys=f(),Ie=o("p"),po=a("\u9996\u5148\uFF0C\u521B\u5EFA\u914D\u7F6E\u6587\u4EF6\uFF1A"),_s=f(),Sl=new Ye(!1),Ol=f(),Ne=o("p"),io=a("\u5199\u5165\uFF1A"),ms=f(),Jl=new Ye(!1),Ll=f(),N=o("p"),no=a("SSL/TLS \u914D\u7F6E\u53EF\u4EE5\u770B\u6211\u4E4B\u524D\u8FD9\u7BC7\uFF1A"),Te=o("a"),fo=a("\u914D\u7F6E Cloudflare \u7684\u514D\u8D39 SSL \u8BC1\u4E66"),co=a("\uFF0C\u6216\u8005\u7528 certbot \u914D\u7F6E"),Ds=f(),P=o("p"),Fo=a("\u6700\u540E "),Hl=o("code"),vo=a("sudo nginx -t"),Eo=a(" \u4EE5\u53CA "),Il=o("code"),uo=a("sudo systemctl reload nginx"),yo=a(" \u4E00\u4E0B\u5C31\u53EF\u4EE5\u5728\u76F8\u5E94\u57DF\u540D\u770B\u5230\u521D\u59CB\u754C\u9762\u5566\u3002"),hs=f(),fe=o("h3"),Re=o("a"),_o=a("\u5A92\u4F53\u5E93\u8DEF\u5F84"),bs=f(),Ve=o("p"),mo=a("\u8FD9\u4E2A\u5730\u65B9\u6211\u6478\u4E86\u597D\u4E00\u4F1A\u624D\u660E\u767D."),Ps=f(),ce=o("p"),Do=a("\u8DEF\u5F84\u9009\u62E9 media \u6216\u8005 media2 \u4E0B\u9762\u7684\u6587\u4EF6\uFF0C\u7136\u540E\u540E\u9762\u7684\u8DDF cloudreve \u91CC\u9762\u7684\u662F\u4E00\u6837\u7684\uFF0C\u6BD4\u5982\u5728 cloudreve \u4E2D\u7528\u6237 1 \u521B\u5EFA\u7684\u6587\u4EF6\u5939\u53EB jellyfin\uFF0C\u5219\u5A92\u4F53\u5E93\u4E2D\u8DEF\u5F84\u4E3A "),Nl=o("code"),ho=a("/media/1/jellyfin"),$s=f(),Ge=o("p"),Qe(de.$$.fragment),xs=f(),Fe=o("h3"),ze=o("a"),bo=a("\u63D2\u4EF6\u5B89\u88C5"),ws=f(),D=o("p"),Po=a("Jellyfin \u6709\u5F88\u591A\u5B9E\u7528\u7684\u63D2\u4EF6\u53EF\u4EE5\u722C\u7535\u5F71/\u97F3\u4E50\u7B49\u5143\u6570\u636E\uFF0C\u53EF\u4EE5\u5728 "),Tl=o("code"),$o=a("\u63A7\u5236\u53F0-> \u63D2\u4EF6"),xo=a(" \u5B89\u88C5\uFF0C\u9700\u8981\u6CE8\u610F\u7684\u662F\uFF0C\u5B89\u88C5\u5B8C\u63D2\u4EF6\u9700\u8981\u91CD\u542F\u4E00\u4E0B\u624D\u53EF\u4EE5\u751F\u6548\uFF0C\u4E5F\u5C31\u662F\u5148"),Rl=o("code"),wo=a("docker-compose down"),Co=a(" \u518D "),Vl=o("code"),ko=a("docker-compose up -d"),Cs=f(),Xe=o("p"),jo=a("\u76EE\u524D\u611F\u89C9\u6BD4\u8F83\u597D\u7528\u7684\u4E24\u4E2A\u63D2\u4EF6\uFF1A"),ks=f(),T=o("ul"),Ue=o("li"),R=o("a"),Ao=a("Douban plugin for Jellyfin"),So=a("\uFF1A \u53EF\u4EE5\u6293\u8C46\u74E3\u7684\u5143\u6570\u636E\uFF0C\u9700\u8981\u901A\u8FC7\u94FE\u63A5\u5B89\u88C5"),Oo=f(),ve=o("li"),Jo=a("Open Subtitles\uFF1A\u5B57\u5E55\u8D44\u6E90\uFF0C\u9700\u8981\u767B\u5F55 "),V=o("a"),Lo=a("opensubtitles.com"),Ho=a("\uFF0C\u5E76\u83B7\u53D6 API"),js=f(),Ee=o("h3"),Me=o("a"),Io=a("\u4E3B\u9898\u548C\u8BED\u8A00"),As=f(),G=o("p"),No=a("\u53EF\u4EE5\u5728"),Gl=o("code"),To=a("display"),Ro=a(" \u91CC\u9762\u66F4\u6539\u754C\u9762\u8BED\u8A00\u548C\u4E3B\u9898\uFF0C\u6211\u6BD4\u8F83\u559C\u6B22\u7684\u4E3B\u9898\u662F Purple Haze, \u611F\u89C9\u662F\u6709\u4E9B\u514B\u5236\u7684\u8D5B\u535A\u670B\u514B\u98CE\u683C"),this.h()},l(e){F=r(e,"P",{});var t=p(F);h=i(t,"\u6628\u5929\u642D\u4E86\u4E00\u4E0B Pleroma\uFF0C\u5B8C\u5168\u5931\u8D25\uFF0C\u5B8C\u5168\u6CA1\u4FE1\u5FC3\u4E86\uFF0C\u6240\u4EE5\u4ECA\u5929\u51B3\u5B9A\u968F\u4FBF\u5728"),E=r(t,"A",{href:!0,rel:!0,target:!0});var Bo=p(E);U=i(Bo,"Awesome Self Hosted | LibHunt"),Bo.forEach(l),v=i(t,"\u627E\u4E86\u4E00\u4E2A\u6392\u540D\u5F88\u9760\u524D\u7684\u4E1C\u897F\u642D\u4E00\u4E0B\uFF0C\u7ED9\u81EA\u5DF1\u5EFA\u7ACB\u4E00\u70B9\u6CA1\u6709\u5FC5\u8981\u7684\u4FE1\u5FC3\u2026\u2026"),t.forEach(l),u=c(e),m=r(e,"P",{});var Os=p(m);Xs=i(Os,"\u521A\u597D\u6700\u8FD1\u670B\u53CB\u627E\u7535\u5F71\u8D44\u6E90\u5F88\u72AF\u96BE\uFF0C\u6240\u4EE5\u6211\u51B3\u5B9A\u62FF\u6392\u5728 Media \u7B2C\u4E00\u7684"),C=r(Os,"A",{href:!0,rel:!0,target:!0});var Wo=p(C);Us=i(Wo,"Jellyfin"),Wo.forEach(l),Ms=i(Os,"\u8BD5\u8BD5\u624B\u3002"),Os.forEach(l),Ml=c(e),M=r(e,"H2",{id:!0});var Yo=p(M);_e=r(Yo,"A",{href:!0});var Ko=p(_e);Zs=i(Ko,"\u5173\u4E8E Jellyfin"),Ko.forEach(l),Yo.forEach(l),Zl=c(e),k=r(e,"P",{});var Js=p(k);qs=i(Js,"Jellyfin \u662F\u4E00\u4E2A\u5728\u7EBF\u7684\u6D41\u5A92\u4F53\u5F71\u97F3\u5E93\uFF0C\u5BF9\u7535\u5F71\u3001\u97F3\u4E50\u3001\u6709\u58F0\u4E66\u90FD\u6709\u6BD4\u8F83\u597D\u7684\u652F\u6301\u3002\u9664\u4E86\u5728 web \u7AEF\u89C2\u770B\u4E4B\u5916\uFF0C\u5B83\u8FD8\u652F\u6301\u5F88\u591A\u7684"),j=r(Js,"A",{href:!0,rel:!0,target:!0});var Qo=p(j);Bs=i(Qo,"\u5BA2\u6237\u7AEF"),Qo.forEach(l),Ws=i(Js,"\uFF0C\u51E0\u4E4E\u662F\u968F\u5904\u53EF\u7528\uFF0C\u76EE\u524D\u6211\u53EA\u8BD5\u8FC7\u5B89\u5353\u7AEF\u7684\uFF0C\u5176\u529F\u80FD\u4E0E\u7F51\u9875\u7AEF\u65E0\u5F02\uFF0C\u9002\u914D\u5F97\u5F88\u597D\uFF0C\u4F53\u9A8C\u6D41\u7545\u3002"),Js.forEach(l),ql=c(e),Z=r(e,"P",{});var Vo=p(Z);Ys=i(Vo,"\u53EF\u4EE5\u5728\u8FD9\u91CC\u8BD5\u4E00\u4E0B Demo\uFF1A"),A=r(Vo,"A",{href:!0,rel:!0,target:!0});var go=p(A);Ks=i(go,"Jellyfin"),go.forEach(l),Vo.forEach(l),Bl=c(e),me=r(e,"P",{});var ea=p(me);Qs=i(ea,"\uFF08\u7528\u6237\u540D demo\uFF0C\u5BC6\u7801\u7559\u7A7A\uFF09"),ea.forEach(l),Wl=c(e),q=r(e,"P",{});var Go=p(q);gs=i(Go,`\u4E0B\u9762\u662F\u6211\u7684\u6210\u679C:-D
`),ge(B.$$.fragment,Go),Go.forEach(l),Yl=c(e),De=r(e,"P",{});var la=p(De);ge(W.$$.fragment,la),la.forEach(l),Kl=c(e),he=r(e,"P",{});var sa=p(he);be=r(sa,"SPAN",{class:!0});var ta=p(be);et=i(ta,"\u5176\u5B9E\u6211\u4E5F\u662F\u642D\u5B8C\u624D\u77E5\u9053\u5B83\u6709\u4EC0\u4E48\u529F\u80FD\u7684"),ta.forEach(l),sa.forEach(l),Ql=c(e),Y=r(e,"H2",{id:!0});var oa=p(Y);Pe=r(oa,"A",{href:!0});var aa=p(Pe);lt=i(aa,"Cloudrever"),aa.forEach(l),oa.forEach(l),gl=c(e),y=r(e,"P",{});var z=p(y);st=i(z,"Jellyfin \u76EE\u524D\u4E0D\u652F\u6301 S3 \u5B58\u50A8\uFF0C\u6240\u4EE5\u6211\u9700\u8981\u4E00\u4E2A\u7F51\u76D8\u6765\u5B58\u50A8\u548C\u7BA1\u7406 VPS \u4E0A\u7684\u5A92\u4F53\u8D44\u6E90\u3002\u770B\u4E86\u5854\u5854\u7684 "),S=r(z,"A",{href:!0,rel:!0,target:!0});var ra=p(S);tt=i(ra,"\u97F3\u4E50\u5E93\u642D\u5EFA"),ra.forEach(l),ot=i(z," \u6587\u7AE0\u540E\u6211\u51B3\u5B9A\u8BD5\u4E00\u4E0B "),O=r(z,"A",{href:!0,rel:!0,target:!0});var pa=p(O);at=i(pa,"Cloudreve"),pa.forEach(l),rt=i(z," \uFF0C\u5177\u4F53\u7684\u642D\u5EFA\u8FC7\u7A0B\u8FD9\u91CC\u6309\u4E0B\u4E0D\u8868\uFF0C\u662F\u5B8C\u5168\u7167\u7740\u5854\u5854\u7684\u6559\u7A0B\u548C "),J=r(z,"A",{href:!0,rel:!0,target:!0});var ia=p(J);pt=i(ia,"Cloudreve \u6587\u6863"),ia.forEach(l),it=i(z," \u505A\u7684"),z.forEach(l),es=c(e),K=r(e,"H3",{id:!0});var na=p(K);$e=r(na,"A",{href:!0});var fa=p($e);nt=i(fa,"\u53CD\u4EE3"),fa.forEach(l),na.forEach(l),ls=c(e),xe=r(e,"P",{});var ca=p(xe);ft=i(ca,"\u9700\u8981\u6CE8\u610F\u7684\u662F\uFF0C\u914D\u7F6E Nginx \u53CD\u4EE3\u65F6\uFF0C\u4E0E\u5F80\u5E38\u4E0D\u540C\uFF0C\u9700\u8981\u8BBE\u7F6E\u4E00\u4E0B\u6700\u5927\u7684\u6587\u4EF6\u5927\u5C0F\uFF0C\u4EE5\u514D\u540E\u671F\u4E0A\u4F20\u5931\u8D25\uFF1A"),ca.forEach(l),ss=c(e),ol=Ke(e,!1),al=c(e),Q=r(e,"H3",{id:!0});var da=p(Q);we=r(da,"A",{href:!0});var Fa=p(we);ct=i(Fa,"\u4E00\u4E9B\u914D\u7F6E"),Fa.forEach(l),da.forEach(l),ts=c(e),L=r(e,"OL",{});var Ls=p(L);g=r(Ls,"LI",{});var Hs=p(g);rl=r(Hs,"P",{});var va=p(rl);pl=r(va,"STRONG",{});var Ea=p(pl);dt=i(Ea,"\u6700\u5927\u5BB9\u91CF"),Ea.forEach(l),va.forEach(l),Ft=c(Hs),H=r(Hs,"P",{});var zl=p(H);vt=i(zl,"\u5728 "),il=r(zl,"CODE",{});var ua=p(il);Et=i(ua,"\u7BA1\u7406\u9762\u677F-> \u7528\u6237\u7EC4"),ua.forEach(l),ut=i(zl,` \u91CC\u53EF\u4FEE\u6539
`),ge(ee.$$.fragment,zl),zl.forEach(l),Hs.forEach(l),yt=c(Ls),$=r(Ls,"LI",{});var Ze=p($);nl=r(Ze,"P",{});var ya=p(nl);fl=r(ya,"STRONG",{});var _a=p(fl);_t=i(_a,"\u914D\u7F6E\u79BB\u7EBF\u4E0B\u8F7D"),_a.forEach(l),ya.forEach(l),mt=c(Ze),Ce=r(Ze,"P",{});var zo=p(Ce);Dt=i(zo,`\u914D\u7F6E\u597D\u79BB\u7EBF\u4E0B\u8F7D\u5C31\u53EF\u4EE5\u7528\u5B83\u5728\u540E\u53F0\u4E0B\u8F7D\u79CD\u5B50\u8D44\u6E90\u4E86\u3002
\u5982\u679C\u7528\u7684\u662F docker-compose \u6765\u5B89\u88C5\uFF0C\u4E0B\u9762\u7684\u5E94\u8BE5\u8FD9\u6837\u914D\u7F6E\uFF1A
`),ge(le.$$.fragment,zo),zo.forEach(l),ht=c(Ze),x=r(Ze,"UL",{});var qe=p(x);se=r(qe,"LI",{});var Is=p(se);cl=r(Is,"STRONG",{});var ma=p(cl);bt=i(ma,"[\u4E0D\u53EF\u4FEE\u6539]"),ma.forEach(l),Pt=i(Is," RPC \u670D\u52A1\u5668\u5730\u5740 => "),dl=r(Is,"CODE",{});var Da=p(dl);$t=i(Da,"http://aria2:6800"),Da.forEach(l),Is.forEach(l),xt=c(qe),te=r(qe,"LI",{});var Ns=p(te);Fl=r(Ns,"STRONG",{});var ha=p(Fl);wt=i(ha,"[\u53EF\u4FEE\u6539, \u9700\u4FDD\u6301\u548C docker-compose.yml \u6587\u4EF6\u4E00\u81F4]"),ha.forEach(l),Ct=i(Ns," RPC \u6388\u6743\u4EE4\u724C => "),vl=r(Ns,"CODE",{});var ba=p(vl);kt=i(ba,"your_aria_rpc_token"),ba.forEach(l),Ns.forEach(l),jt=c(qe),oe=r(qe,"LI",{});var Ts=p(oe);El=r(Ts,"STRONG",{});var Pa=p(El);At=i(Pa,"[\u4E0D\u53EF\u4FEE\u6539]"),Pa.forEach(l),St=i(Ts," Aria2 \u7528\u4F5C\u4E34\u65F6\u4E0B\u8F7D\u76EE\u5F55\u7684 \u8282\u70B9\u4E0A\u7684\u7EDD\u5BF9\u8DEF\u5F84 => "),ul=r(Ts,"CODE",{});var $a=p(ul);Ot=i($a,"/data"),$a.forEach(l),Ts.forEach(l),qe.forEach(l),Ze.forEach(l),Ls.forEach(l),os=c(e),ae=r(e,"P",{});var Xo=p(ae);Jt=i(Xo,"\u6700\u540E\u5728 cloudreve \u9762\u677F\u91CC\u521B\u5EFA\u4E00\u4E2A\u7528\u6765\u5B58\u653E jelly \u7528\u7684\u6587\u4EF6\u5939\uFF0C\u6BD4\u5982 "),yl=r(Xo,"CODE",{});var xa=p(yl);Lt=i(xa,"jellyfin"),xa.forEach(l),Xo.forEach(l),as=c(e),re=r(e,"H2",{id:!0});var wa=p(re);ke=r(wa,"A",{href:!0});var Ca=p(ke);Ht=i(Ca,"Jellyfin"),Ca.forEach(l),wa.forEach(l),rs=c(e),pe=r(e,"H3",{id:!0});var ka=p(pe);je=r(ka,"A",{href:!0});var ja=p(je);It=i(ja,"\u642D\u5EFA"),ja.forEach(l),ka.forEach(l),ps=c(e),Ae=r(e,"P",{});var Aa=p(Ae);Nt=i(Aa,"jellyfin \u7684\u642D\u5EFA\u975E\u5E38\u7B80\u5355\uFF0C\u7ED9\u4E86\u6211\u505A\u4EBA\u7684\u5F88\u5927\u4FE1\u5FC3\uFF08\u6CA1\u6709\uFF09\uFF0C\u6211\u8FD9\u91CC\u4F9D\u65E7\u9009\u62E9\u7528 docker-compose \u6765\u642D\u5EFA\u3002"),Aa.forEach(l),is=c(e),ie=r(e,"P",{});var Uo=p(ie);Tt=i(Uo,"\u5B98\u65B9\u6587\u6863\uFF1A"),I=r(Uo,"A",{href:!0,rel:!0,target:!0});var Sa=p(I);Rt=i(Sa,"Installing Jellyfin | Documentation - Jellyfin Project"),Sa.forEach(l),Uo.forEach(l),ns=c(e),Se=r(e,"P",{});var Oa=p(Se);Vt=i(Oa,"\u9996\u5148\u521B\u5EFA\u4E00\u4E2A\u914D\u7F6E\u6587\u4EF6\u5939\u5E76\u8FDB\u5165\uFF1A"),Oa.forEach(l),fs=c(e),_l=Ke(e,!1),ml=c(e),Oe=r(e,"P",{});var Ja=p(Oe);Gt=i(Ja,"\u521B\u5EFA\u914D\u7F6E\u6587\u4EF6"),Ja.forEach(l),cs=c(e),Dl=Ke(e,!1),hl=c(e),Je=r(e,"P",{});var La=p(Je);zt=i(La,"\u5199\u5165\uFF1A"),La.forEach(l),ds=c(e),bl=Ke(e,!1),Pl=c(e),_=r(e,"P",{});var X=p(_);Xt=i(X,"\u5176\u4E2D\u9700\u8981\u4FEE\u6539 "),$l=r(X,"CODE",{});var Ha=p($l);Ut=i(Ha,"/path/to/media:/media"),Ha.forEach(l),Mt=i(X," \u7684\u524D\u534A\u90E8\u5206\u4E3A cloudreve \u4E2D\u5728 VPS \u4E2D\u7684\u5B58\u50A8\u8DEF\u5F84\uFF0C\u6BD4\u5982\u6539\u4E3A"),xl=r(X,"CODE",{});var Ia=p(xl);Zt=i(Ia,"/opt/drive/cloudreve/uploads/"),Ia.forEach(l),qt=i(X," \uFF0C\u5982\u679C\u6709\u591A\u4E2A cloudreve \u7528\u6237\u5219\u53EF\u4EE5\u5728\u540E\u9762\u52A0\u7528\u6237 id\uFF0C\u6BD4\u5982 "),wl=r(X,"CODE",{});var Na=p(wl);Bt=i(Na,"/opt/drive/cloudreve/uploads/1"),Na.forEach(l),Wt=i(X," \u8FD9\u6837"),X.forEach(l),Fs=c(e),w=r(e,"P",{});var Xl=p(w);Yt=i(Xl,"\u7136\u540E"),Cl=r(Xl,"CODE",{});var Ta=p(Cl);Kt=i(Ta,"/path/to/media2"),Ta.forEach(l),Qt=i(Xl," \u4E5F\u662F\u540C\u6837\u7684\u4FEE\u6539\uFF0C\u6539\u4E3A "),kl=r(Xl,"CODE",{});var Ra=p(kl);gt=i(Ra,"/opt/drive/cloudreve/uploads/"),Ra.forEach(l),Xl.forEach(l),vs=c(e),b=r(e,"P",{});var Be=p(b);eo=i(Be,"\u6539\u5B8C\u57DF\u540D\u4E4B\u540E\uFF0C\u6267\u884C "),jl=r(Be,"CODE",{});var Va=p(jl);lo=i(Va,"sudo docker-compose up -d"),Va.forEach(l),so=i(Be," \u5C31\u53EF\u4EE5\u5728\u7AEF\u53E3 "),Al=r(Be,"CODE",{});var Ga=p(Al);to=i(Ga,"\u4F60\u7684ip:8096"),Ga.forEach(l),oo=i(Be," \u770B\u5230\u754C\u9762\u4E86\u3002"),Be.forEach(l),Es=c(e),ne=r(e,"H3",{id:!0});var za=p(ne);Le=r(za,"A",{href:!0});var Xa=p(Le);ao=i(Xa,"\u53CD\u4EE3"),Xa.forEach(l),za.forEach(l),us=c(e),He=r(e,"P",{});var Ua=p(He);ro=i(Ua,"\u6211\u7528\u7684\u662F Nginx \u6765\u8FDB\u884C\u53CD\u4EE3\uFF0C\u867D\u7136\u6BCF\u6B21\u90FD\u662F\u4E00\u6837\u7684\u64CD\u4F5C\uFF0C\u4F46\u662F\u76F4\u63A5\u5199\u53EF\u4EE5\u590D\u5236\u7C98\u8D34\u4F1A\u6BD4\u8F83\u7B80\u5355\uFF0C\u6240\u4EE5\u6211\u73B0\u5728\u51C6\u5907\u8BF4\u5E9F\u8BDD\u3002"),Ua.forEach(l),ys=c(e),Ie=r(e,"P",{});var Ma=p(Ie);po=i(Ma,"\u9996\u5148\uFF0C\u521B\u5EFA\u914D\u7F6E\u6587\u4EF6\uFF1A"),Ma.forEach(l),_s=c(e),Sl=Ke(e,!1),Ol=c(e),Ne=r(e,"P",{});var Za=p(Ne);io=i(Za,"\u5199\u5165\uFF1A"),Za.forEach(l),ms=c(e),Jl=Ke(e,!1),Ll=c(e),N=r(e,"P",{});var Rs=p(N);no=i(Rs,"SSL/TLS \u914D\u7F6E\u53EF\u4EE5\u770B\u6211\u4E4B\u524D\u8FD9\u7BC7\uFF1A"),Te=r(Rs,"A",{href:!0});var qa=p(Te);fo=i(qa,"\u914D\u7F6E Cloudflare \u7684\u514D\u8D39 SSL \u8BC1\u4E66"),qa.forEach(l),co=i(Rs,"\uFF0C\u6216\u8005\u7528 certbot \u914D\u7F6E"),Rs.forEach(l),Ds=c(e),P=r(e,"P",{});var We=p(P);Fo=i(We,"\u6700\u540E "),Hl=r(We,"CODE",{});var Ba=p(Hl);vo=i(Ba,"sudo nginx -t"),Ba.forEach(l),Eo=i(We," \u4EE5\u53CA "),Il=r(We,"CODE",{});var Wa=p(Il);uo=i(Wa,"sudo systemctl reload nginx"),Wa.forEach(l),yo=i(We," \u4E00\u4E0B\u5C31\u53EF\u4EE5\u5728\u76F8\u5E94\u57DF\u540D\u770B\u5230\u521D\u59CB\u754C\u9762\u5566\u3002"),We.forEach(l),hs=c(e),fe=r(e,"H3",{id:!0});var Ya=p(fe);Re=r(Ya,"A",{href:!0});var Ka=p(Re);_o=i(Ka,"\u5A92\u4F53\u5E93\u8DEF\u5F84"),Ka.forEach(l),Ya.forEach(l),bs=c(e),Ve=r(e,"P",{});var Qa=p(Ve);mo=i(Qa,"\u8FD9\u4E2A\u5730\u65B9\u6211\u6478\u4E86\u597D\u4E00\u4F1A\u624D\u660E\u767D."),Qa.forEach(l),Ps=c(e),ce=r(e,"P",{});var Mo=p(ce);Do=i(Mo,"\u8DEF\u5F84\u9009\u62E9 media \u6216\u8005 media2 \u4E0B\u9762\u7684\u6587\u4EF6\uFF0C\u7136\u540E\u540E\u9762\u7684\u8DDF cloudreve \u91CC\u9762\u7684\u662F\u4E00\u6837\u7684\uFF0C\u6BD4\u5982\u5728 cloudreve \u4E2D\u7528\u6237 1 \u521B\u5EFA\u7684\u6587\u4EF6\u5939\u53EB jellyfin\uFF0C\u5219\u5A92\u4F53\u5E93\u4E2D\u8DEF\u5F84\u4E3A "),Nl=r(Mo,"CODE",{});var ga=p(Nl);ho=i(ga,"/media/1/jellyfin"),ga.forEach(l),Mo.forEach(l),$s=c(e),Ge=r(e,"P",{});var er=p(Ge);ge(de.$$.fragment,er),er.forEach(l),xs=c(e),Fe=r(e,"H3",{id:!0});var lr=p(Fe);ze=r(lr,"A",{href:!0});var sr=p(ze);bo=i(sr,"\u63D2\u4EF6\u5B89\u88C5"),sr.forEach(l),lr.forEach(l),ws=c(e),D=r(e,"P",{});var ue=p(D);Po=i(ue,"Jellyfin \u6709\u5F88\u591A\u5B9E\u7528\u7684\u63D2\u4EF6\u53EF\u4EE5\u722C\u7535\u5F71/\u97F3\u4E50\u7B49\u5143\u6570\u636E\uFF0C\u53EF\u4EE5\u5728 "),Tl=r(ue,"CODE",{});var tr=p(Tl);$o=i(tr,"\u63A7\u5236\u53F0-> \u63D2\u4EF6"),tr.forEach(l),xo=i(ue," \u5B89\u88C5\uFF0C\u9700\u8981\u6CE8\u610F\u7684\u662F\uFF0C\u5B89\u88C5\u5B8C\u63D2\u4EF6\u9700\u8981\u91CD\u542F\u4E00\u4E0B\u624D\u53EF\u4EE5\u751F\u6548\uFF0C\u4E5F\u5C31\u662F\u5148"),Rl=r(ue,"CODE",{});var or=p(Rl);wo=i(or,"docker-compose down"),or.forEach(l),Co=i(ue," \u518D "),Vl=r(ue,"CODE",{});var ar=p(Vl);ko=i(ar,"docker-compose up -d"),ar.forEach(l),ue.forEach(l),Cs=c(e),Xe=r(e,"P",{});var rr=p(Xe);jo=i(rr,"\u76EE\u524D\u611F\u89C9\u6BD4\u8F83\u597D\u7528\u7684\u4E24\u4E2A\u63D2\u4EF6\uFF1A"),rr.forEach(l),ks=c(e),T=r(e,"UL",{});var Vs=p(T);Ue=r(Vs,"LI",{});var Zo=p(Ue);R=r(Zo,"A",{href:!0,rel:!0,target:!0});var pr=p(R);Ao=i(pr,"Douban plugin for Jellyfin"),pr.forEach(l),So=i(Zo,"\uFF1A \u53EF\u4EE5\u6293\u8C46\u74E3\u7684\u5143\u6570\u636E\uFF0C\u9700\u8981\u901A\u8FC7\u94FE\u63A5\u5B89\u88C5"),Zo.forEach(l),Oo=c(Vs),ve=r(Vs,"LI",{});var Gs=p(ve);Jo=i(Gs,"Open Subtitles\uFF1A\u5B57\u5E55\u8D44\u6E90\uFF0C\u9700\u8981\u767B\u5F55 "),V=r(Gs,"A",{href:!0,rel:!0,target:!0});var ir=p(V);Lo=i(ir,"opensubtitles.com"),ir.forEach(l),Ho=i(Gs,"\uFF0C\u5E76\u83B7\u53D6 API"),Gs.forEach(l),Vs.forEach(l),js=c(e),Ee=r(e,"H3",{id:!0});var nr=p(Ee);Me=r(nr,"A",{href:!0});var fr=p(Me);Io=i(fr,"\u4E3B\u9898\u548C\u8BED\u8A00"),fr.forEach(l),nr.forEach(l),As=c(e),G=r(e,"P",{});var zs=p(G);No=i(zs,"\u53EF\u4EE5\u5728"),Gl=r(zs,"CODE",{});var cr=p(Gl);To=i(cr,"display"),cr.forEach(l),Ro=i(zs," \u91CC\u9762\u66F4\u6539\u754C\u9762\u8BED\u8A00\u548C\u4E3B\u9898\uFF0C\u6211\u6BD4\u8F83\u559C\u6B22\u7684\u4E3B\u9898\u662F Purple Haze, \u611F\u89C9\u662F\u6709\u4E9B\u514B\u5236\u7684\u8D5B\u535A\u670B\u514B\u98CE\u683C"),zs.forEach(l),this.h()},h(){d(E,"href","https://selfhosted.libhunt.com/"),d(E,"rel","nofollow noopener noreferrer external"),d(E,"target","_blank"),d(C,"href","https://jellyfin.org/"),d(C,"rel","nofollow noopener noreferrer external"),d(C,"target","_blank"),d(_e,"href","#\u5173\u4E8E-jellyfin"),d(M,"id","\u5173\u4E8E-jellyfin"),d(j,"href","https://jellyfin.org/clients/"),d(j,"rel","nofollow noopener noreferrer external"),d(j,"target","_blank"),d(A,"href","https://demo.jellyfin.org/stable/web/index.html"),d(A,"rel","nofollow noopener noreferrer external"),d(A,"target","_blank"),d(be,"class","spoiler"),d(Pe,"href","#cloudrever"),d(Y,"id","cloudrever"),d(S,"href","https://mantyke.icu/2022/cloudreve-navidrome/"),d(S,"rel","nofollow noopener noreferrer external"),d(S,"target","_blank"),d(O,"href","https://cloudreve.org/"),d(O,"rel","nofollow noopener noreferrer external"),d(O,"target","_blank"),d(J,"href","https://docs.cloudreve.org/getting-started/install"),d(J,"rel","nofollow noopener noreferrer external"),d(J,"target","_blank"),d($e,"href","#\u53CD\u4EE3"),d(K,"id","\u53CD\u4EE3"),ol.a=al,d(we,"href","#\u4E00\u4E9B\u914D\u7F6E"),d(Q,"id","\u4E00\u4E9B\u914D\u7F6E"),d(ke,"href","#jellyfin"),d(re,"id","jellyfin"),d(je,"href","#\u642D\u5EFA"),d(pe,"id","\u642D\u5EFA"),d(I,"href","https://jellyfin.org/docs/general/administration/installing.html#docker"),d(I,"rel","nofollow noopener noreferrer external"),d(I,"target","_blank"),_l.a=ml,Dl.a=hl,bl.a=Pl,d(Le,"href","#\u53CD\u4EE3-1"),d(ne,"id","\u53CD\u4EE3-1"),Sl.a=Ol,Jl.a=Ll,d(Te,"href","2022-06-12-cloudflare"),d(Re,"href","#\u5A92\u4F53\u5E93\u8DEF\u5F84"),d(fe,"id","\u5A92\u4F53\u5E93\u8DEF\u5F84"),d(ze,"href","#\u63D2\u4EF6\u5B89\u88C5"),d(Fe,"id","\u63D2\u4EF6\u5B89\u88C5"),d(R,"href","https://github.com/Libitum/jellyfin-plugin-douban"),d(R,"rel","nofollow noopener noreferrer external"),d(R,"target","_blank"),d(V,"href","https://www.opensubtitles.com/zh-CN"),d(V,"rel","nofollow noopener noreferrer external"),d(V,"target","_blank"),d(Me,"href","#\u4E3B\u9898\u548C\u8BED\u8A00"),d(Ee,"id","\u4E3B\u9898\u548C\u8BED\u8A00")},m(e,t){n(e,F,t),s(F,h),s(F,E),s(E,U),s(F,v),n(e,u,t),n(e,m,t),s(m,Xs),s(m,C),s(C,Us),s(m,Ms),n(e,Ml,t),n(e,M,t),s(M,_e),s(_e,Zs),n(e,Zl,t),n(e,k,t),s(k,qs),s(k,j),s(j,Bs),s(k,Ws),n(e,ql,t),n(e,Z,t),s(Z,Ys),s(Z,A),s(A,Ks),n(e,Bl,t),n(e,me,t),s(me,Qs),n(e,Wl,t),n(e,q,t),s(q,gs),el(B,q,null),n(e,Yl,t),n(e,De,t),el(W,De,null),n(e,Kl,t),n(e,he,t),s(he,be),s(be,et),n(e,Ql,t),n(e,Y,t),s(Y,Pe),s(Pe,lt),n(e,gl,t),n(e,y,t),s(y,st),s(y,S),s(S,tt),s(y,ot),s(y,O),s(O,at),s(y,rt),s(y,J),s(J,pt),s(y,it),n(e,es,t),n(e,K,t),s(K,$e),s($e,nt),n(e,ls,t),n(e,xe,t),s(xe,ft),n(e,ss,t),ol.m(Er,e,t),n(e,al,t),n(e,Q,t),s(Q,we),s(we,ct),n(e,ts,t),n(e,L,t),s(L,g),s(g,rl),s(rl,pl),s(pl,dt),s(g,Ft),s(g,H),s(H,vt),s(H,il),s(il,Et),s(H,ut),el(ee,H,null),s(L,yt),s(L,$),s($,nl),s(nl,fl),s(fl,_t),s($,mt),s($,Ce),s(Ce,Dt),el(le,Ce,null),s($,ht),s($,x),s(x,se),s(se,cl),s(cl,bt),s(se,Pt),s(se,dl),s(dl,$t),s(x,xt),s(x,te),s(te,Fl),s(Fl,wt),s(te,Ct),s(te,vl),s(vl,kt),s(x,jt),s(x,oe),s(oe,El),s(El,At),s(oe,St),s(oe,ul),s(ul,Ot),n(e,os,t),n(e,ae,t),s(ae,Jt),s(ae,yl),s(yl,Lt),n(e,as,t),n(e,re,t),s(re,ke),s(ke,Ht),n(e,rs,t),n(e,pe,t),s(pe,je),s(je,It),n(e,ps,t),n(e,Ae,t),s(Ae,Nt),n(e,is,t),n(e,ie,t),s(ie,Tt),s(ie,I),s(I,Rt),n(e,ns,t),n(e,Se,t),s(Se,Vt),n(e,fs,t),_l.m(ur,e,t),n(e,ml,t),n(e,Oe,t),s(Oe,Gt),n(e,cs,t),Dl.m(yr,e,t),n(e,hl,t),n(e,Je,t),s(Je,zt),n(e,ds,t),bl.m(_r,e,t),n(e,Pl,t),n(e,_,t),s(_,Xt),s(_,$l),s($l,Ut),s(_,Mt),s(_,xl),s(xl,Zt),s(_,qt),s(_,wl),s(wl,Bt),s(_,Wt),n(e,Fs,t),n(e,w,t),s(w,Yt),s(w,Cl),s(Cl,Kt),s(w,Qt),s(w,kl),s(kl,gt),n(e,vs,t),n(e,b,t),s(b,eo),s(b,jl),s(jl,lo),s(b,so),s(b,Al),s(Al,to),s(b,oo),n(e,Es,t),n(e,ne,t),s(ne,Le),s(Le,ao),n(e,us,t),n(e,He,t),s(He,ro),n(e,ys,t),n(e,Ie,t),s(Ie,po),n(e,_s,t),Sl.m(mr,e,t),n(e,Ol,t),n(e,Ne,t),s(Ne,io),n(e,ms,t),Jl.m(Dr,e,t),n(e,Ll,t),n(e,N,t),s(N,no),s(N,Te),s(Te,fo),s(N,co),n(e,Ds,t),n(e,P,t),s(P,Fo),s(P,Hl),s(Hl,vo),s(P,Eo),s(P,Il),s(Il,uo),s(P,yo),n(e,hs,t),n(e,fe,t),s(fe,Re),s(Re,_o),n(e,bs,t),n(e,Ve,t),s(Ve,mo),n(e,Ps,t),n(e,ce,t),s(ce,Do),s(ce,Nl),s(Nl,ho),n(e,$s,t),n(e,Ge,t),el(de,Ge,null),n(e,xs,t),n(e,Fe,t),s(Fe,ze),s(ze,bo),n(e,ws,t),n(e,D,t),s(D,Po),s(D,Tl),s(Tl,$o),s(D,xo),s(D,Rl),s(Rl,wo),s(D,Co),s(D,Vl),s(Vl,ko),n(e,Cs,t),n(e,Xe,t),s(Xe,jo),n(e,ks,t),n(e,T,t),s(T,Ue),s(Ue,R),s(R,Ao),s(Ue,So),s(T,Oo),s(T,ve),s(ve,Jo),s(ve,V),s(V,Lo),s(ve,Ho),n(e,js,t),n(e,Ee,t),s(Ee,Me),s(Me,Io),n(e,As,t),n(e,G,t),s(G,No),s(G,Gl),s(Gl,To),s(G,Ro),Ss=!0},p:xr,i(e){Ss||(ll(B.$$.fragment,e),ll(W.$$.fragment,e),ll(ee.$$.fragment,e),ll(le.$$.fragment,e),ll(de.$$.fragment,e),Ss=!0)},o(e){sl(B.$$.fragment,e),sl(W.$$.fragment,e),sl(ee.$$.fragment,e),sl(le.$$.fragment,e),sl(de.$$.fragment,e),Ss=!1},d(e){e&&l(F),e&&l(u),e&&l(m),e&&l(Ml),e&&l(M),e&&l(Zl),e&&l(k),e&&l(ql),e&&l(Z),e&&l(Bl),e&&l(me),e&&l(Wl),e&&l(q),tl(B),e&&l(Yl),e&&l(De),tl(W),e&&l(Kl),e&&l(he),e&&l(Ql),e&&l(Y),e&&l(gl),e&&l(y),e&&l(es),e&&l(K),e&&l(ls),e&&l(xe),e&&l(ss),e&&ol.d(),e&&l(al),e&&l(Q),e&&l(ts),e&&l(L),tl(ee),tl(le),e&&l(os),e&&l(ae),e&&l(as),e&&l(re),e&&l(rs),e&&l(pe),e&&l(ps),e&&l(Ae),e&&l(is),e&&l(ie),e&&l(ns),e&&l(Se),e&&l(fs),e&&_l.d(),e&&l(ml),e&&l(Oe),e&&l(cs),e&&Dl.d(),e&&l(hl),e&&l(Je),e&&l(ds),e&&bl.d(),e&&l(Pl),e&&l(_),e&&l(Fs),e&&l(w),e&&l(vs),e&&l(b),e&&l(Es),e&&l(ne),e&&l(us),e&&l(He),e&&l(ys),e&&l(Ie),e&&l(_s),e&&Sl.d(),e&&l(Ol),e&&l(Ne),e&&l(ms),e&&Jl.d(),e&&l(Ll),e&&l(N),e&&l(Ds),e&&l(P),e&&l(hs),e&&l(fe),e&&l(bs),e&&l(Ve),e&&l(Ps),e&&l(ce),e&&l($s),e&&l(Ge),tl(de),e&&l(xs),e&&l(Fe),e&&l(ws),e&&l(D),e&&l(Cs),e&&l(Xe),e&&l(ks),e&&l(T),e&&l(js),e&&l(Ee),e&&l(As),e&&l(G)}}}function kr(ye){let F,h;const E=[ye[0],vr];let U={$$slots:{default:[Cr]},$$scope:{ctx:ye}};for(let v=0;v<E.length;v+=1)U=qo(U,E[v]);return F=new wr({props:U}),{c(){Qe(F.$$.fragment)},l(v){ge(F.$$.fragment,v)},m(v,u){el(F,v,u),h=!0},p(v,[u]){const m=u&1?$r(E,[u&1&&dr(v[0]),u&0&&dr(vr)]):{};u&2&&(m.$$scope={dirty:u,ctx:v}),F.$set(m)},i(v){h||(ll(F.$$.fragment,v),h=!0)},o(v){sl(F.$$.fragment,v),h=!1},d(v){tl(F,v)}}}const vr={title:"VPS \xB7 Jellyfin\u7ED3\u5408Cloudreve\u5F00\u542F\u7EBF\u4E0A\u5F71\u9662",created:"2022-06-15T00:00:00.000Z",summary:"\u57FA\u4E8E Docker \u548C Nginx \u7684\u4FE1\u5FC3\u642D\u5EFA\u8FC7\u7A0B",image:"/2022-06-15-jellyfin/1.jpg",tags:["Nginx","VPS","Docker"],slug:"/2022-06-15-jellyfin/index.md",path:"/2022-06-15-jellyfin",toc:[{depth:2,title:"\u5173\u4E8E Jellyfin",slug:"\u5173\u4E8E-jellyfin"},{depth:2,title:"Cloudrever",slug:"cloudrever"},{depth:3,title:"\u53CD\u4EE3",slug:"\u53CD\u4EE3"},{depth:3,title:"\u4E00\u4E9B\u914D\u7F6E",slug:"\u4E00\u4E9B\u914D\u7F6E"},{depth:2,title:"Jellyfin",slug:"jellyfin"},{depth:3,title:"\u642D\u5EFA",slug:"\u642D\u5EFA"},{depth:3,title:"\u53CD\u4EE3",slug:"\u53CD\u4EE3-1"},{depth:3,title:"\u5A92\u4F53\u5E93\u8DEF\u5F84",slug:"\u5A92\u4F53\u5E93\u8DEF\u5F84"},{depth:3,title:"\u63D2\u4EF6\u5B89\u88C5",slug:"\u63D2\u4EF6\u5B89\u88C5"},{depth:3,title:"\u4E3B\u9898\u548C\u8BED\u8A00",slug:"\u4E3B\u9898\u548C\u8BED\u8A00"}],updated:"2022-08-06T11:32:41.091Z"};function jr(ye,F,h){return ye.$$set=E=>{h(0,F=qo(qo({},F),Fr(E)))},F=Fr(F),[F]}class Vr extends hr{constructor(F){super(),br(this,F,jr,kr,Pr,{})}}export{Vr as default,vr as metadata};