From 422219601863cb9b80e845a80f257c62bd68f85b Mon Sep 17 00:00:00 2001 From: Junxiang Huang Date: Fri, 11 Oct 2024 17:28:17 +0800 Subject: [PATCH 1/2] feat: add strucutres of seafile docker and descriptions of caddy --- manual/docker/deploy_seafile_with_docker.md | 41 +++--------------- .../deploy_seafile_pro_with_docker.md | 36 +-------------- manual/docker/seafile_docker_structures.md | 11 +++++ .../images/seafile-12.0-docker-structure.png | Bin 0 -> 104053 bytes mkdocs.yml | 1 + 5 files changed, 20 insertions(+), 69 deletions(-) create mode 100644 manual/docker/seafile_docker_structures.md create mode 100644 manual/images/seafile-12.0-docker-structure.png diff --git a/manual/docker/deploy_seafile_with_docker.md b/manual/docker/deploy_seafile_with_docker.md index 5ca698266..f7915b54e 100644 --- a/manual/docker/deploy_seafile_with_docker.md +++ b/manual/docker/deploy_seafile_with_docker.md @@ -44,7 +44,7 @@ The following fields merit particular attention: - `SEAFILE_ADMIN_EMAIL`: Admin username - `SEAFILE_ADMIN_PASSWORD`: Admin password -NOTE: SSL is now handled by the caddy server. +NOTE: SSL is now handled by the [caddy server](#about-ssl-and-caddy) from 12.0. ### Start Seafile server @@ -175,40 +175,11 @@ The required scripts can be found in the `/scripts` folder of the docker contain docker exec -it seafile /bin/bash ``` -### LetsEncrypt SSL certificate is about to expire +### About SSL and Caddy -If the certificate is not renewed automatically, you can execute the following command to manually renew the certificate. +From Seafile 12.0, the SSL is handled by [***Caddy***](https://caddyserver.com/docs/). Caddy is a modern open source web server that mainly binds external traffic and internal services in [seafile docker](./seafile_docker_structures.md). The default caddy image is [`lucaslorentz/caddy-docker-proxy:2.9`](https://github.com/lucaslorentz/caddy-docker-proxy), which user only needs to correctly configure the following fields in `.env` to automatically complete the acquisition and update of the certificate: -```bash -# /scripts/ssl.sh /shared/ssl/ -/scripts/ssl.sh /shared/ssl/ example.seafile.com -``` - -### Change the environment variable `SEAFILE_SERVER_LETSENCRYPT=false` value to `true` - -1. If you want to change to https after using http, first back up the `seafile.nginx.conf`: - -```bash -mv /opt/seafile-data/nginx/conf/seafile.nginx.conf /opt/seafile-data/nginx/conf/seafile.nginx.conf.bak -# or -mv /opt/seafile-data/nginx/conf/seafile.nginx.conf{,.bak} -``` - -2. Destroy the containers with `docker compose down`. - -3. Edit `docker-compose.yml`: change `SEAFILE_SERVER_LETSENCRYPT=false` value to `true`. - -4. Run `docker compose up -d` again. The new Seafile container will automatically request for an SSL certificate to be generated and installed. - -**Notes:** - -- You need to manually change http to https in other configuration files. - -- `SERVICE_URL` and `FILE_SERVER_ROOT` environment variables in the system admin page also need to be modified. - -- If you have modified the old `seafile.nginx.conf`, now you can modify the new `seafile.nginx.conf` as you want. Then execute the following command: - -```bash -# test the Nginx configuration and, if OK, reload nginx for configuration to take effect: -docker exec seafile nginx -t && docker exec seafile nginx -s reload +```shell +SEAFILE_SERVER_PROTOCOL=https +SEAFILE_SERVER_HOSTNAME=example.com ``` diff --git a/manual/docker/pro-edition/deploy_seafile_pro_with_docker.md b/manual/docker/pro-edition/deploy_seafile_pro_with_docker.md index a825cc7c2..3a6d621f8 100644 --- a/manual/docker/pro-edition/deploy_seafile_pro_with_docker.md +++ b/manual/docker/pro-edition/deploy_seafile_pro_with_docker.md @@ -79,7 +79,7 @@ The following fields merit particular attention: - `SEAFILE_ADMIN_EMAIL`: Admin username - `SEAFILE_ADMIN_PASSWORD`: Admin password -NOTE: SSL is now handled by the caddy server. +NOTE: SSL is now handled by the [caddy server](../deploy_seafile_with_docker.md#about-ssl-and-caddy) from 12.0. To conclude, set the directory permissions of the Elasticsearch volumne: @@ -269,7 +269,7 @@ Q: I forgot the Seafile admin email address/password, how do I create a new admi A: You can create a new admin account by running -``` +```shell docker exec -it seafile /opt/seafile/seafile-server-latest/reset-admin.sh ``` @@ -286,35 +286,3 @@ A: You can view the docker logs using this command: `docker compose logs -f`. Q: I forgot the admin password. How do I create a new admin account? A: Make sure the seafile container is running and enter `docker exec -it seafile /opt/seafile/seafile-server-latest/reset-admin.sh`. - -Q: The Let's Encrypt SSL certificate is about to expire, how do I renew it? - -A: The SSL certificate should be renewed automatically 30 days prior to its expiration. If the automatic renewal fails, these commands renew the certificate manually: -``` -docker exec -it seafile /bin/bash -/scripts/ssl.sh /shared/ssl/ SEAFILE_SERVER_HOSTNAME -``` -SEAFILE_SERVER_HOSTNAME is the host name used in the docker-compose.yml. - -Q: **SEAFILE_SERVER_LETSENCRYPT=false change to true.** - -A: If you want to change to https after using http, first backup and move the seafile.nginx.conf. - -```sh -mv /opt/seafile-data/nginx/conf/seafile.nginx.conf /opt/seafile-data/nginx/conf/seafile.nginx.conf.bak -``` - -Starting the new container will automatically apply a certificate. - -```sh -docker compose down -docker compose up -d -``` - -You need to manually change http to https in other configuration files, SERVICE_URL and FILE_SERVER_ROOT in the system admin page also need to be modified. - -If you have modified the old seafile.nginx.conf, now you can modify the new seafile.nginx.conf as you want. Then execute the following command to make the nginx configuration take effect. - -```sh -docker exec seafile nginx -s reload -``` diff --git a/manual/docker/seafile_docker_structures.md b/manual/docker/seafile_docker_structures.md new file mode 100644 index 000000000..d25655929 --- /dev/null +++ b/manual/docker/seafile_docker_structures.md @@ -0,0 +1,11 @@ +# Seafile Docker Structures + +Seafile Docker consists of the following two components: + +- Seafile server: Seafile core services, see [Seafile Components](../overview/components.md) for the details. +- Sdoc server: Seadoc server, provide the online collaborative document editor, see [SeaDoc](../extra_setup/setup_seadoc.md#architecture) for the details. +- Database: Stores data related to seafile services, seadoc services, user information, third-party plug-ins, etc. The default database image is `mariadb:10.11`. +- Memcached: Cache servers are used to store avatars, profiles, etc. +- Caddy: Caddy server enables user to access the seafile service (i.e., Seafile server and Sdoc server) externally and handles `SSL` configuration + +![Seafile Docker Structure](../images/seafile-12.0-docker-structure.png) diff --git a/manual/images/seafile-12.0-docker-structure.png b/manual/images/seafile-12.0-docker-structure.png new file mode 100644 index 0000000000000000000000000000000000000000..690a14cf4d23c45a9e9fd345fa0f848689a54585 GIT binary patch literal 104053 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

=j+y!81)BbV`4U?@K4gKWTadC}+YY@+?jd zxU#Yk#G=3<``aTV{na)a#xyL2sG4(0G4HHW5LxB{yaM!hMrR& z!zg~l*RwyFp&i0yU{qgvGP$6!pycjP3x{-GiVAYD`MjS6kVF-(shsC&IY=m`NG2br zqn;#r-!gSH1;!7g1vXs1xFqFx16`dHb4-Q;bJHG^YO2 zu$WLJNZdX^|z+TP)?bANPZQe2-P_~h@`FUsKuSMC@Z)~5gx(8^$yXu_j@ z#xT&1(Ee?V5TigzCD!A5{lZWG^udTWYe zo+GXAjQQQACkdkRJpFuXD^1R({S}ZSC3IB9X7u^e?z!l0)jdFxQLI5s&haHb=t?;P zMQ#Dt>*mq6t0x6w4^KRVGS>EO)~3n(5&$8y`=lz$O=m>!^Pg2TZy2MUp60SC>IH>) zRT(VhvC{2&k90GWCqZu3;7l22`^sK0$Gv1wf@SSJU-yt)mJOsP(fT2d?%kPqjcxF} z0I<<%wZ}!DC+ybz;h@?iZ7FleXTvV*G;390`lOH1SY7wC@V^0yMg-p@%wgLHGjDzd zg@$Vwm#}AMZK=6Zi;_%t)mgJ4l##vf6o z5%Lc?um>xW&Z;v%oMw|;AH2_GvWVOHQeu4rafvM>M}nq@y9zDaknIT4gQu0{vrkPPryO*!(S|u|molOV52Q>%-JB_f{pg2O zie0QA}_#QvAGwdv7Ujw$k&iD#SL+2mj|_AdktU+M)agXMR7Xg znsHkmXl1|ZlQMn&8W{+atx)aNE_Xr8;+Y7VBe=%OE|wJc^*Javg1PJ4oTIlBU=%R| znB3}B3SkA=<{c++jaX5wQZl_rIi2*oqm7SxvM!%klL`a<^)!?pIqN`DD&P~(G;BZ0 z)uqhE`)jDC26rnf4|qdJVSMdobHTC`4V6~7=Z(zYFCCZ0uWeAj48Kr4-BWdp0U1!F z5Kq^KRA+p-S4tcz2(6|f-!IGIu1ut2BKyJVlJCUE{s#6@dGE205^HA$pd_Q9!IzP4 zC|)+}jq1D|b+}WxRvB+{hes{mSdhZl8b8=;dKqCI&9}qO?z=q^4Cce%IcLIrg!G;x zTG@!sgR*Fyir6cH$}|+rlm`-wt$DOq{p?R;1%4M?*MfvhAfIJ~y!1yst;TO~aXl?L z|8DHdjBDjc;E8dFHzoOU?|MKDVPJu4XUQzV5^h2y6f4aV{1oZa4}?dh`pW`9g=GKr z^jvS_4{N@@c5>|@^LwWm?t4{hu}(*)K+3DkN~XpKwU-hddz76Wbtrrz_#zi!RM4Pz z3nU;1W={cZk&NVlONTs0X{Q~hyW|RN^~9!r-XXJx#KP>PUTIE}K#uzy#?(D+=z2xg zahi~>0NHF_TJN#ah&DO{%`)BiOF%nH!76XSbbcd|sE z(n$s!vnMAb?J8piDp z#qXh?USzLbU>D}=C@`;QX>9B@09n_!)N&j6Zv-hG<0R7N;r5CHMd4RBuEOe#9H#a9 z@-N(ZM^Vm@b}j@heo-a`kigS=iqlqm>jVekOw)S zc+BHia6AV=IS$wbpb#2XW7Wxg8?IJkQc))mr3_MG2M|;I>hyNk0ZGD zuw>X>pANtf4(a7*I?OvFGjs%{d>riaYwZ(a{lFtdd*mTwJawq7{p{K5>Cyff8*$>s zIPa4?K20n~F5LRWQ@u{02L%De5&SS7zmXPwbSXaf4!hXhs;{#tdVBf*zJs>P{KY`K znz-m^`*XCkl~8E5gocO<#4HlVx)xORK@OSY4=T@vjW`&9D;BR9f2wK@Vg#iuJg@v^ z5r&qtc8gt@RQlm38K}|YdO)L5x&I@ zj^^zbzv{IywYLIoBFdPGVX9SCzNb$tGU2l;u`0p=YNxzKi`rLl*u}>JWc;$+0_R^| zJ}v`|%3uO$5@jv&kX3y;6Q~UBF3rPJJ@uTQDj`F5kVA#a$(I001OZmm0ttSMND;ir zHW193f0qp7P%~l_6WP*JiTB6hKWX2q9|L`>@tu{k;@3-rGyG7WLu&8A%1yYX^QJ<57Av8viVH# z)%i8y-wZh)(#xKm0llj-=lL%0g5|F}WA0zx8h4F>;`)V(HydfB!~#W7dIxiY_C5PI z!5kX69+IgcH|vy+_zI6p^u#;t+!b72?oRxZQNU>H?gNk@LD5Bg2TokqfQ?x^cJ&^y z1-5FK+OjI)EJ|u!AR&vSJ7yKnGSUgmwnG;p;cZA#@BexaGDZmQP^i~}6CyVa$Y;^# zuQ|F}V0vV|O`RkILLd&XsR!bIOhCf{dew12j~Rf%;oZs{%v-GaF^hX@)~7(Is{d}O zy7I?5Mrq8-&3~A1mm$Lq@{UZnu@nj&NgY{xeChdPq+xW+0(hOy#mH|A%*U*^8~)=Q zD2-?+ojqpc$mU~#m;`h;4yua-oGF z8Em5r&|Ir@B{Z*=0fAKo@OrL5L<8a!4?y&Vp%P<{#d~Nmz>I4$5zW5*{EQgb8%t}P zvnO>Nyde0*in(TU@&pn@XW#^I-3OU&IP2(aem~T>A>ZsP7ft{g*}t+zLxngC+F>|= z^(lBsJu)vVxQbQ<-KR1OIBgX6H8D~@<+GY@Pc+-mqZ#m%wDfHWgL?Ia;8AlhL}4tWZIfsV_3$&H5xwgv!QP={Uhs zE2xvtRwVFH&{l!|fO8i#!;wW&>8?o0$Jzy zQGOq$on}2k8$<@~k%@#q*MP~sQfcR9StNsTPLH68GHzvBJApJ&7j0^3hkFDXoq>BH4E*Fj+pZJ&1PK@nO2Tk&2 z5Pkdzg3JrL!EoI8^DEhTha4ef(~i$MQ#{jm83_oR`vB}B0bmkEQE{pCcLUb?P6GJm zufTGTNkgOHJaL;$0dG24?Bj@Vy(3X78}QT2&Cb_aI#rMO*%4*4W?T&ttE1LS=5lCZ ziS=Rqc^eFPaK%x1?;%u;gIa%al*z!U2Q2+`T8XvKy1^W3RtG8k1CI60Gtq_E5ribz zAvbzJSsfg{w=hs9tZoZ#S9ZTZIDW2KS!Yv<M^#$P=fOm! zl(|}jBZ$x$YUA8E?Q(~Sr(B^;rz;m1FVvlX5~uI*2&AUPXy+_B?yG_k(crS>ZP=Pi ztgz5BTM4;a+Groyf*9FR z+9#k_s+Ogm^t<4UzXNCiUPo=#Vx^gQr47GOj!TaVu;R~z=gG(41Jz%VnIaSD6`v>% zYw(SbkD^Wj;6L74ZP)V+4OmNkrfr9&+~q0R`f)TxOqpaZ_Y5Wl~Vtji?98#421 zrpi@FLis6Z!;q6J!ijBTc%x2V&uKaXL?)9=o|rWz#R+}pvNcwHq!w>%pq~_nBkU{C z4%@?HDMrY6G!h>q`CKgF+hCnv#Z7T3K`6)lli29PynlyEMF^Eg`a#CYfZ1zj>9P3x z->=^YoaSM^Y40@e!TH1O)Q1?-0VV-_gJ|L{u46WW2?xWD<8+Wgth}kw(Svv~Ofh>xqSA= zHO@O?BN~w{%=iWDs~~Kk1daAk{WXpqSLAF37oqS|ZG!f>ZW!xSlmrL}iJLzBW}kC4 zGsNb5@kh!mW}CNxl|A+@`Q*$p{pvkXSsu_LytsMh1=|LDU8#s2cVbVwE}P#5Y3j&n zlL@_yRQkiyIwI5dP+YP7P;>7-L_nL>GRXHu%^@)61h05#g9lK<3e7)KsZxd-y?Xud z)D0(l+4#DZ#Rl@u>q`PW-0135RxC<@{VB->`%~S%2oVT^DZ1>rUQ;VTn!)|Q-vpPs zNY9(}K6gdTRc|_2BG)VSfeEr*`P#Y9N@AkLFIk?~IdlgcFp}tHQ-49YoI9%l;GW~atYWtH(O|$mJ zj2i}fF5bOy7M$uc^g?e}nm5C=y&}ru6n}NS@H5*MUYA+~>*@@z{XMcbO3tQzAN`4` z1x%v(`W|oEcx`j}{ zSzv_6Njd%QU%Q;~teC^!Zq!o*LJr2<@?-^$dQ~;#7Q!xBJ5X74f1zlOlR_5bGCAQF z!%}3m@xR{&|8qOaxc#yDHBgp+jFLU|#NBsnPV6b7#-A(!@Yc3jRVZZA^xR#$;Zu?b z@u)}LjMlGs1HS|8)-u4*Y?7;4vb0MIz)^Vxc~obAfw};R3#vx=K77Yi`W#tga2cZ# zf4gw5SzGT88{q|ZBKOKc$l!7d0hzinz6?TKoCmc5qmyBQv5yR3BEEZz4ip?F23v4D z#laZ<2Y!{-0tCJqM-t{iICTINI!kSgryd5L`E<+z?+;xxoT-HdYYp&Z6lyU8;pI%F zx(#P;f&Fvh_R~4&fE<)l|K8)*&>rs<+^JI?%T5ndiI-$vrN9FYg+Xi#(}PBEV)*dT zq`aYFIlY?Bz%eqZYTLxdh-j&CrcNzXmJJhryO(CKv3Ts84eW7EVmlcIK0`}XT(DuJ zV&!Af?oKo}e)#XD*WUlT^ipW3hGfMj^O?Etv$R)NgIGJELTZJ?j-Qax4)+_oAGU;M zZ-1}C@U9Ygt77XD3CLx-9z2XDt)ncRbkJ+sgity0CcnB6%L6w;$@d+W{Uw%Bi*qe+ za9@Z!G(3RZXl85i2l4|Ff>w*8~z~L_AJsrWX20@3@xA(++NVNy@$97ef%Z zH&%O71Odd2pYOP|;ddM)moi(bkU%qH)p+o$7TqQWN02VF@9yll5smX}v@?L+L5m>g6vZWKCE9 z2wrw%-g;cHEO_(k&ILzsR*?{~s%LT31&-IUZ7rRFNENmJq7|S-2#fm$yaIz)K(4eG0mc!Kc~G#euWy3Jqbb>9N^x z5KkbHUWa@|85;4nvg*jM5E(H;ttnN{_5ne@2dMb@g!pSdhd3l=OTIy~_?2E+ULqKw zAl{l}&$DEC@<}i`G=ivak4#!@&SbYii%r;N7;=^RxPI>Jhj)_dY{3Cz8InMq?Wffc zM`*VZiO#;6iH9fA&iA^k$l};fXz|VTm4QkFqEqWBN6^l~C*uO4s*wP4L6?LF#v4HE0fMSr}Eg|t)}jCut7-C@*|8c#jYkvBIC7_=alo*%fV^3pPsNZzBc5MYH2OuabK*d|TgQUdjo6tYJ zo0depseCc3=4kNn_5tBQW$?UVkbVP34Il9d8I8Ba&k^$vsm*99{c;pKIeq$Tmmpd< z2DuyOTbbGqwrDiCcNhu18^$PR_U0MrHTJZfe3{4&ZMgf5suL)iM^pSEhpkT+V59Fc zBVsD*vbzp1G}4^Rpm|FG}B8DHLjm(am2Ep7Wxr91T$ zn3rI1*>kxGp4HfoYR`Rlt*^IN$1)d0V}BP|0uuvZTw7cI0GEOczh%(6K7+s9ZaN% zS%jFK5YtKXxkWsnU$@l(0p9}7tQh#u1SznNhZ=QPBJX;P`F3Xb`eFk9DI{)VbIK`BwI5qG=IeXHVpL` z5}kT=$a-;T0>prGM$z^57c!gJ-ChsB5Tir*Z>kp&MVBbX zb6OMzz=^&DUq2v++@dD37J?Cgh^-{y3ggvHI(?V%47|@C%9#6{=|YV+3jv$jEYF!Rf%i0AfBX z%5oAR^NbyC=Kl$_NdygrsUmfen2sZ>RC~B_2eQtn$U*Q&GkoByb>x)wJmwndT*vuACPe-ML&UFzJr+bAuC$s4g?w=jv(V1M0z@qCSf zCeoq){N|aw!I2s&{c2v&t6UW9HQ{c;BeIkExQ))<5Yce?F+wQ&YU~(o{&pVNsJo_^ zzWq~Ulf7hDe?>Gqdhh-0(IB+S5~C)c;j=3ajw1lkWYU$0ieIKv`OX0F#b{(*kz1EkfpO>3KY!v!bSDk zpKS;6S+57dFp-{VI=Ca=K0OW@ZWOr6e)mj#7a&_U=n$&!IuR2lVaRObRO-3=aJvUa zCqr$HS{kiND8EcLCZ+6!n|C%5d8rlbe9qAo?-Z<=4gT;E(pn)Tx5DJRYyNgRqTK`3 zU&H3=dG(bq@h_cD!sD!IeC!f{Hf;|oPb(VfQKBP3G^~5VVg@I#!n_tH-Jh=SBDZWehNTb1F#ZgtcF%=Vuma5no3^glA)H$cfPE;tL|MfiN5!z5#U&Mtn7(^{1est5$m7+s$jmHp@Js#c zV#B8rA+`haCDcvBBj)6x=#{zpNLJ8xR@Kna`9{fT3zvE<>pRV;A0FwiAeP7gT+;)V z5TAO#XU)JxS+@JI&|yM_LBtrR@*@00pIO8KAlwSr;>3#}=AKy(mR%yRfBG1g6Q*Ep z!yF#WSw^Qv5~j9ny}H&K({DlB$N^yE?-ra=w?Ah+sdb2S+b)F{PqHO)f{;`N?3wJ( z=r)Sw3T;8=z|t0GnGPG(0VP<8qn0M{V7Do1S59_ldk$th{`505Im@txb}|UiuH1i~ zf8p1aQpjWv!l*A7r27Rj2-(4zfc9rbsu%7Opy%sH>F)UApYT5b#3Epz@FSW&Q89oP zj<4+twV)YDpU(Q_tbh-k5`f*va6Aq!XHBS;WM_s@r?2_wRX}Nr(*q#c(LrO1zz>av z?uHVQPyoF@GJc$=zwG_V_P3>9d)%p+V2bgsE@RJ3K?^~f^l#t1my_E7jemrCPXJ&` z=hXzmv*DdGE0577NOsU=0$iw+Ww#pG_5*v@codnOqS5#OU=^v?uDJeC!13Uh_m5yM zg3t&|Y01Ij2n>s!gy+14bsP-BjDi6>wtcGPZ+|dA374|FGb!Bo^FI@eL8?=3f$gA< z$a)^G{f|Y}lZ{3qOtg^EgE0z3o79M`!XmWKZ~g1nvWv zuNH*%YSBs)an3$y=JZmXkQCba<+Dggd*{n0|kqNx$9pyb@XORc5 ze+iY7mD?$~JU-c!wc?MoJ*mJ?Z{%70(R^5oaanw!$q6r(!b9*^(H8|be%P`4j5gHh zB6)(-=~TN3odNZc3ztQVi;nHtfL!6$vES(8A(6`t5k;Mn}{K0LPJ`c;H!45v3HwgLTn;mF*wb z^cwOx0Jydntu8DX}_(m8Aex)3_Cfv36*7DRr(vdENzb9X)P z2!pAjU%z76t!>y|jJ=PMA325HD+N|*N(~H8YN(w4G!dhqIH2LdqJYer4Q_%Wxx7DK z^2Oriv3&83_CL*!-oj~L4)^w4(AtRd@@PJeDh*U@Kl!fj9o2Kv)N z`%qfq7a+rsUm#aBi?u@-%Ced6^q@hQ!I(F0TPWQq0-RfNGTtntaThp^nNSjt)m>&E zA*Xu3vfEd)#|8PZd!#$%aA}6$pXanTr@DbgU_RaTV)Smh(Fpl+6%>@2Fi`v~(<2eg zwpZr{`u>bzwL^?^l?>npj5WMhxfF=3IqqAZ7Nk?uk$DGNe{-zsrMCUFb3hF&$TtEL z95D#;ouzj&0C>BAm><^sMc~C`;ODC5=dF&tx)F8w)TIORF%94tYWTr%u)i;GrH)C{ zT;P}8)0`15mEiu<9EuhvO{3PGZjo-MdqKE2;-9-QB-ES4YeVpw{<&HQ_{rr*I5{G( z(N&+8fM>>gl>q6~`4OtZEDBQs1cA;%`>{)#tDiLv(HeoG_2|32Wa#1OYTHyc3I!w6 zAVl^%UGW9VD>Or(7mRuP2{Kt>5Hc?}Qx)M<;@^k$5=ivLfaR zC*F)7=<)}_@VM$?9?a3|Q+YQjR=7~rx@(QiADz0Yj_8d=zN8_^z z9(<;Ir|*1ec^1{tsa?>EE~7;+xN0|L|LV>7m;=x!P4Z)u{CHrv{LTdt^{8eO=bMGk zGrRK20|>UjCJ+yYhm`$g6N>Wzpon$Jf{vncR6ZEiz`Xk~MGPx`PmF+W57i@N11BDC zUY`O=6eI#iGaYmW8)(h?lV_3Lfjq+6k=gVz#I80#QyBZyG{AsB+@Np;z!(*v_G)vg zM65Z6<`s(sKTUnusBM$tzWfL}4$3el5?sJKZ7*$Cd*M}_pHenpu*8Q<@3KYSU_QdH zg5!Zk>&ezYwkB1)1v8>8NcSee>StPs)rcsX_sRuU?@SJ#QFiZpl1@5_-VGa1@)n7v zM--flNNfSxYXOhrs%e}SrFV#{2$d33;ws(NUgQ#v5r2Bxg+{FO;%6p$zkkyYS(<;4dL5B81Od2Y*ii^ zlMbzCsi}&vlu`eaNh~0@3hD|vdU~8i4t^O0(F7xh_rAW;Qe0FWhk(^;1nmo~Bo7&a zi3LZF(n<}E((C;3kr@A?rBPCv)nj|su5vVlpUP@$DyIDY)J+x#ij7$i+n}VYe*xp< z+KZu{PH5x-jkcqK?4yNYxA@PK!3B6}rf>i9vr}(NnJ;cgFI1Y@vRHEC$|+>)N^XC? z#I2sli}>o-_lc>wX(1IusC zLT(lf04!q^9~j-i2k0UO(8yL8yL+xFpJDH+riL@RmYAc|9(<#o%iE2j^Ts-R$xZ&Q zo-uO|&4KmJuS~Ok>iw2y%hkGErm`o&!4& zu?rWmb|o5NV55L)BrZptqC%#^!069!(x+K^lZm_4<=CY4vDP-okRHjd=z z<`VXbh9KeNf?NjrU1++{j=^Q3OB>l5EBL0{oh5Pz+T1)as8}Mw&i1aM{wi=WJf<3g z;U)|vi8_`bB_v{@BJ}guV)bc38sj>uQ4K~{ji&9N#xoE&94_LS;YrAZezlL(RF>bK z_6#Z<@|_V*BFBa4x08nP-$w($NAY*76>rDaq`^oJQ8Lt&b>bFba33~l;Pqled87en z8O=XpeUPwGLJX@FsV)JZtyiC&(!zzyBk;sgH&%&Kgy%5F^|z<^8v+te`5ZHITsP(V zS*BBv(f^WOIzR#OHj=&FWN>WCj`xU*@;AtizD!a3z-SiO5MK_75>^8@B_1h0G*-6) zzdRM|SV!m?MjcHO4j*I_TncSX1T3edPxM0V2rN7AyRR5O6g>r>6vo9XveCdMp%*BE zj}MF^gZ^ybAQ*?9FKZ|g3F)X3q~Xy^>sM8n$yh&;XZN;{mnHBZ|FEYPN%@>jN=Fv@ zUU4tqz05AwW5vs+UP64IR-)sGpU4WFU81Mn9Tw~w)hxc8ZIw!?y!Zx;&BwwhLzYdD z3A`srm7Ykk-u&j3a~l4*fn9yhFR+W|Db`H-ndq*TB!CzW_vGtR3&D@#_*1 zH-kkM0Gnp+!jU3A)p#{^%z2{e!NX||K7)iJmk@iC6tgwgFm=<=k&YipR2=~`ABNtu zbntncUVDlJW%iT2`i|H(&`@Dd73OF9@<#TGrOT_jE7<5@iiRqp=|=jYTti2C5cC9W zh|@TXxPB}9iDg^57Qg%R3(>i;WZ%fk7f$RkjVDX0!s;x-=vGmL?*h^OAbk|Jkj;4S z$1nYxXEsF-9$VfAuTLSpixh!RxM*1=z*eL=v7a4u z4`!Oj3GkT+JRw1PaSc>(H48$f$Is+a`D5b`hG9ay)#)pE_*ZpGV8k)n)S5U$p`%=Z_u++l|$8ypMRxufj)g|_nc1kW>%%(3ISNs^a(MGj_N zpo8PC=&u~-8s#mEshIZbXFRbDc{kePa=4UxCW3dS2oLo>MX#um7{^FV*DDTt{NB87 z(C@}GbSH~0eLMo+TK4u9GUj}i(}gda{77d|BzK#24u+^_=XkpG8-2#KjcEgQ_Ft~k zvihH<4>@goCK>&E4p3$O+POqRSK)B!q@h{9ovPKmC&-Rvm>I3cNvi*OPWM+5j}H_7 z(qCNRg}Y)#+J_lV3TFHyo{PkfCVT4nlOzwi1TNUs%@0<3E{_w${~iL@R1q({gUbCd z?6rUM-h^|^2_8Q2JM7ZbaQ{ABT2OTdhsLqe$>G?O)fb+N5MEs3Y|}pYCzmLOIgMQg zMPtS295?5Wgga?Unk5og-K_Ix@gP*Bto%EBV2-O*olgIzxtPxB!s#>0k!oi8rPewu zXXDO?r|{~PSfw%gCq9L-Xu-cpBjlr><8%eE_uYm#Jtbpw6mguy)1>@g%>zDMGkU=cCD&xvpC1#ue?G05v+QO>SXVrHK!9J=L>|UrTz#Se|-WimXBw)WNJZ+3br$ z?FLZbY5Hjt!eImJu$7QtbwJt97mLJsmQ)eJa8~UonuxoA zzDGx9kzvHZ@xoIGs%tswqu=2(i3Su1WddZ&H_c2=!Vh+{rV8h&C9iBzddHeS{i%w@ zvQc{OD)HmG-^upm9vXV_i^}Y;pN%ZWz1OPON^0`LoyQMYw_aQiYS$4vcChmfYGWE6 z{G`s&!Rz*aFz5pi0ikiTfxXQgo^kn!cgMuUXpkEy!xS2HeJbntytSN}1?K@`9|69H zy#@OqKFj6s6&pj(7D7Gd_yJZ{Sqb$F9s1=_*(#R8a=PWT7df2hcQqz@d-5;e=y-Jx z>u&TqQ@(LhTI{s=2lN8}`xp2L-042|`Ly5Y8%b68JcxNUT_i%ck^=T~efPo=p(`<* zipuy};%rTh=W>;k_}9J(S&lFqSqksdHr{ZO@dCNm6IT}kZ029yDvK!jJ35Sqe{65j zHD$-MYn|P+yHx`kqX%>J|Me>1T~QpxYzc-g^aB>DkbX7iK-OqH!uvd7k-^HUo&|~5 z&Qld}<^b8-7&AxsWR={h!ud9I^QTy9iGC{t%ZyaYf~1Xz}4Qz=>AN^I#!9tjVh9OC3;X~lat1k&$i?E zJKNz~N~}jQQr?}~8-DCgloV5PUKGO$ZMn6$GZpIFveVV!cSCi>(V_;Q#rG61V4!8EBDnWB7a-aevnv;ai@kl z%gHXRP6USpl&}Vi4Zk}UAMm1o|MPkBH#MPEJ~@A%#M{q1jBR6(uKNKiUI3T7bL~sm zA%6q;fBdfl4B_rcdbcA*GIqJz#39m$pH5weqE%UeH*{u;z0K*R}!k^f1@ zQ$|ls-k4pXO+1OIuh&bz^yJnd-gIe>UHPr~ag5#8Y`ib}Ez6PK)l*|TgD+!J+$-C4F_M4{pP1voxfO=Q!=bBaMYHolyLaLFGseMu-83k7nq~*a9_(Wdy%mp)~ z)VvOxJ&pO42R&mh68Ka`W~=_)bWWcb-XLmG-k7CmK)?i<&s?;R6y5TuMkiEm+1! zpU4ZZPM?!MERM%;&~8%OcyZ<8AsSzMIQb2ckov<$tfmM~UsUA5bSctz8Z%P*M{Gce z6pJWS0K^HP-Y5bp5LpENT)CDH23=QQTsUM@_5n&*bD&0HtizDw3t&g8zh*C!= z^j53iKiY)Wn;Z#pRpK;kCI! zL3yj3F?*&Nzu;KhJE}RuQkw*eqe}0|kDx6}rMw@{PpP|g8np<~r6xi&eOAk!=;0M- z3f~ho`kKs*4F#M;bmRTEmqwd|kFb8p-^adPJh6&vH) z#C67~ezsFV2T7|p55C8%iLHRFiL|RtyFSLf3T#)f8Js=R05LKPe>k{~-FY^BTuEg~0zC!;$8-Edye z!~o|4LWXk>i=klu;PL2SqzNs^e|#ya)b5xZ>C=o#8&!anBBBoVjl@us!#wvBijI_FUL*)9V!rEb$j*8M4+e4@b880+_U8JwPpS}PVy|0>{JqT~?LN8F{ov?p zmOp2oNnWaZe{?K5wT$)zh&u{?cxCXu6!q{xTkIQq6@m46I(<8zoSP-B6}?4P8c1)G ziCoYBG?1=;@*Np)mBWoYLsPfr@rkn?BzeF%7SMmE2}r?2*rkIe!vENA8|=oO(u%h| zhi*(TJc1DAjJ>w)6R2n_$o~@f={KvoA5COCxzFyAd^3hus!24RTKSG}d@DzRBlNwH zVQNg2>(MoTkl?FfV4S%>r&uj+=5eB630|=%XN2lV_)Wee_ba{E8FKaoK~nDbCy}-a zn1fI#oAkY&0x}vRBTTCxzN0h7DK7!N#R;Hzm5p^gJFN;6BvzY1`sKY>vs?Nym5|mS zVaGuCDH>HzmeGB7_TJs82I~KKSwMAjtZZQk%Cu~vhu^-$I-D#^z9J3H@^32e!BdH+ zw_+ww{2?bPNpuW@tVokVrr>Qb-D>`c&$n;cfA};Z?`&ThWdZqjW4Je;Uiz}{=dIx+ zzi_|oss|z>wd|>oq1bzB{5A?BgGA;E`(OPK8KUvuZpu7V4T-ofVqN#k>BHmeQxN6q zCR`$mSqZXU)m5i&fE=4ePlmGdAi4sgG|u1N{L$+@tF(U}%_}CALfhz%_RD#fRaE2r z>&t~&r1|lc1g(|4lNS%-Mj3Ph&EkjV%WaRTLcDLW!tnKXG?DKVPDE3WXq3jZudh~6 ze3EmoUgw+vJ04>y5yFuxh0~V3{H>h^U#L4&u{1aMallpbGWlDEZcwxYEH*Q;_>0~> znWyXx&3?p%&UtQ8>y7UKJX@|xd$l?;P{ejN{0&AVY~Vs)Q2FYE##Z$ubDe!;A%E(` ze?~gCmZUpL{MY11YI3L zIhJ2erqQ%V+-psdj&dbiY81_tYd@cdx^0U1_-+a5mA3z+!k)!{SKsu@FK|KiP1`05 zTB61&b7%2zN4*csV$d|295vboVi%iOIp} zmI{vW#}&`4+e|CA7=;1Qx(W__GEyC2dfnxV7!|kD#8-KI+xLj90<# zeAGY8!P#MeC{Ssteoxa1^C{jotrFvX-K{vh84h^U4{IPXy2W4v~W6DHdTxXNQh~kSl!lIQTQC{#%>JLCCF9}NJ8$d$skV>H0V5F zi{?qB=OI*D+kVT$M`CQzAn**6(x03-RPunwHMW54&`Z+`p9{&8+3eyK+ncR`O{~2>F)8c8HjzYY@Or~rk-;r!nM z>KBzJTNmI^IV>+Xl=FRApS;obJ5VISL8tECk2$JG4+oc4?-})dB~hkP8VP@2cJa?l z8h6OZUKLw|*j~g%ztIF zNK$b0^(@DJVMQ(Lwol&C_FT=QhmL=HylBHRw99XxKBvZvG)VTup7+>lfqXLO9f(m! zLPy{FjKk<79uj$ZyLcJN(O`~Q>-i|q?fHHtJEZjJQ}SPh%BVUFfBn;-!3hz? zo3a+k)QsYZA4T-66{KOUzBgrFf__LlD+9jgOh2hf;+@; z>wJn{_j}@1jt{EXXbo-e)${3#JP+6Dtq-gfO{j=&Zln+C$yI8c5-w)hG-0GUWkQCjU?6o?Yda5fc_q1r5s?vTVHC9WFsvoD+c+n7at>&@Gv9hIf+OcGrPa(F&Pnu4=AcSuChRyDFIdOH&f#a@1qfaP zBqRS$)qEbKJ3zEzmik##PsTH4-us{KR7;o^sVV5h|o;bL`P%PHU&I&Zg2Q2l^ z8sU=Rhw0TSqzS}#EjuDg1)_!)7)Oyyf;9L2tIVX33Gy0Z6I))zkH+-SN2 z+Ml^Qc9nm=TNAWBXF#p2D4b?J%Whulwbe0Z0*hxFdAwdrO>{lL)O-I9F031T+Bvtj zfAB!E6{V#v*+k|E?&*j(RJwzx7K!f5AODn~4mOagY-*B?-3nkhF8jvbTE5pu$lvb$ zqa^>&qeVOeWb+k+=wGAfzrhtmhv4zUZ`^wOBeakPFCg$41H?g2)?vfhv|%3nY#DOr zntNT0t4?r@hj{Rdz$RUvdP>t333uO90g&(R2;E6|4#Qh;bMk#AP7hOf9<_@JeBVoI35uiBC9k=MP)}R$~l#h z%#e|-VXtiBbdrjUN*R?AWrS?9S5sshBV^0U%66>Z_23*D-rw&(zdwGz*QZy1Jf8DB z_jBLZzOVZl?}`H{dHPgbeQVi-olwNQ8h)$jN$I185Cc z1%bPg+uQe=B6;h_LxvJ(*Gr=uR0Dl#U1b*Q4-lAc0TB4B+;ht++&AEY>PjsaQ?mVT^60mz>kDtG<8!goO}bxh@@iY?zGmE8 zj+}JT;@pR^&S#j+FI;1SDxjA^gt)`O;D5{$e$^ z2GLPMxoN+cUb&)c%`b~&V$QHmhMVf8`^O_krQ{@9t!LCTx7l@uYjN!pA=Mt*`JFTK z+eWXV(0)7*t{RcbaPSNDjx}7N;_G|bYfifE-4Fro50!@+s6Y7gA?Y;(2BN>-Mn#{=x>iT0`b-tQ zjxMS1d##Az^F|oWjP_f;^pKas9Kp?0?1NC>)yxAbn?s=N zWp3(cdLCbeESixZN&o!WAG}iTXFRH$-Ib;~#NGAwD|{n6!Z07*Lt!(^6BuZuOr~Yn z5dk4=C8|0u2WZxx?o@(S^N_G0CLvS_8(Rwx4AR^B1T;NZUth%^;mJq4Vzkq5C-IWz z-@~1nWQet;dj>@`2zH|5Syr1i-x%$vVGfJIO)8I|7)49K4h~+0Bs)So-y^dA=)`ES$CUfEA5jiY_g^7q=NkXT zyg~9^_(@w!aA>m0tjj;=W^Hk5$2hd=5Wd9lgiY3X{Jy4$}x)Aizs!M^_=^qBu-}-K^SL9zn}8nAFrV2 z^F@fsrE|zTwCNZdy>Ye|J7d2Q)PS7BdW25O?~0qH?=LI71M+{Z`M%r_g6q7P7Xf1X zTg40DbfQuYr0|hsQn5B)rXQAYAXMclCIx*A{2-j+j$#kg;bVpJiw_aSQJbJ+@dP_y zAa}ft3~B275=w9Qt8r+xmGkD$vLOXwkc1y(3j@)KcFpkX6EI4oAjAAem>cy-6Hn(f zI0HUGYRi=$*^ouXX@=D0dfVaS2hG~QAZ5=WQDi*WK$sSC!6h9L56?)U8HBglO-C0a zRaW_9p=@u0DN@%_T883SNgfoSQOq#cGJ)hWt?cvDBR}Z6(yo;;?>KVho~{XWg~F>} z-8Ta9ZHJI*6(h~5Mt)By(p}fv&z^!Y29hC85^4DineyCv^Ih%`6_2!a?84f(qYigU9l*bM655Ktcj7-FEfxTjQ8}=4>BIoU%*dUaJVj3# zKHTDZ-V$E`7JcuJu3c>2VB9shLx~dHw&(p|vDm4lb0B>czT4nrM<9xXqio|<)O4rc zbx1ld0ViqyTSO1I42l+>a+@)Ql=DGp@!7YMNNcbC-*+cE{LXrMJ zRkvRZi`kh_*tc+BWpu%hCEY#_?O9u|*IZPsFM1)iLnTI09MTv##`|hUy-4?Dk?$&T zLMmLRLl2fO;_bf7N6+)*P3eERUJXgD#yUF5S3JU=E1QF>1F1MH(g1tZYaa3aH&ODQ zDO%S~IUqo~jp~|VuOBV+qPTE4gyGxQ2hf3zAZP!+*og3udu@a%p?eGcK9YNkh=V(m zVLPL?A9oh`H)niiz-oL6wBd6Lj22Fa_K!lU6!{FxoJ?#cH4%k|Uz1OE712;?Bc6bd z@~Md^Wb-Lv7q`2-oJx$3X77RPNG}ISx!qrRwcPUF6C|Im+@yDdC^)60es(`$;SwxV z^lL1{({fD*ay40fcfE%}V)v;1Ip4fJ1H}<6?uJ@@*n!w45IT#7R%uckpUpCw*dbv0 zwoC6*lQ&6R3*SigaD00m3#BQjD{&yB4+7<;TxPP*?)MztuRz*MiJ@WQd6>qMBduGu zc_{qKuekfOi%C3x!)58t#+v{g@(PcoE+4?xVh`8FaTn;3sAwf4WOU(t=BcN(nx&8Q zc2hK31Vc3RE$+-CR?8vFB9HWAUxVp(4ro6v{sn7);Bl+);u7DW0_iEY_za|Csld~z zGN!99Ze%!v3CJaV^xE;b#)8+>akRTZ2O|}cf<)}!6gyRd->9=crTm!RRhxP6rl=Pk zSBkbq>YE=3(9~BiSq#fV>aSLhvMfy9<@U*hs))N8uPaO;6IZtqk>yW!$q#bhD1PxQkiIUV}sQz*M1%q2(uv+Go{!hmi86 zAp0Uti~GW9BCtdP6|P3MpS#CeWv`gd(B(C50n&KOG~ez}cNE`u~;_+!z-(S>x27IP}S zM`i)!l^et~kcc(#@u@@DVQXSh`^8@HLVZYX*4IAkWV++(CCkEbL{x)^r=6zS5PE`8 zsOZ6Ff`jHwv^0lKD!InRAX}t}%hhQ^h#G(T3dys&4yG?s#L4__?`O~lTu@Od01ByV zOj2$NQtv2e5ru3< z5&1BeYt(@XlUP#^1t~96c?rfle$TK7eGX;*eO#R&9Gsl-)wWECy%gc10>>FHX-&ZiLtNMSB_(XQ;x48LCcMcf)&OSvHT(f7b=q@v|XSq3Qd zmD^TObcj(#79u`KXcgQyGIT;~qgK+_bn0?95?|gjd&64t>t~`n6IT{A4KEk?474>s z^9Fqo$)2O9jWN`}XOVc-U*l#c<9yC=(WZ36%|-&B>$uU_d#!LZQ2koX|6UGP%QxCH z#|!=SAT=w^`m4<*el_YM6^*_EiuOHfT<1F_yteO!vxH<`3)rTDpZw|!)Tn{R@P6Q~ z|7MjVcdayV?|KUARNlfqg>dK1SJNT?*k@Bx70|QcOhh$Lw&F=DFZ5w#r=buw6Qrx{ zwhkJ+U1>azkGDDUV(SQ6J#ozKGR=?a_@&61wG{A8BumSjZN&-Pd3znBNt-g6G9;ft zZuu5>)QJ~ETAvUv9~e@Ml*hm>?%MsC!81PE9C~T6HJ;6k&-m^#*;Ey;A*5;?RmV+V zcyW?#fgpy0`TTAq)i9;cDpC|~xqYlp;R9x_4ih89u^33JYbL1$*2L9siBR3m#YRAE z&nM0x4cP5M2>g2=WNY;Kq2wMTq&`@_ZDXc&R9aeKrVG+lw)5L%-?Y(MKX4#ZrOPVa z<<3j23CKE_CjIl>WlJ(BM`yYF>-Tm}Lr&CT8C#7goQh%(5|~5WzW;S`j~RAL;kEnX z2txnegLQB`KSdYp(*g}CZ$L;bQe7Fl9Wm*BxSxGL>YlbqZHhns9cyW7b4PRf=U|Fi z?MAmucNERm(}CeUemCH7i%r^}tCEYWa??BBKBT(xVZn+-Wl6rBC$7KDfm-n~;pagP zcKU0WKZKSo4OXC7=}fZuMOw@0D0SXs^&O5;Pl?>|d~6nCXaj%=zx%8=k)Yw)Z;iMS zim%hfjRZ2vK;^7^k*pyj9TL8KxIxTjL`?M6e9^0?WJ;{j0OMPn{7j-E8Lb3Vhv>Jt zU=pCk9|GNnf`%oz@qytiTh6w<%@;@-Ir~DMRqLb7T2deGv!TJ=L}^1BOSIKkYtLXH zh2Q8GN4U^>u^q^%Ne&b(puR71NsCe)DWv`-+oDAj$%hzwWPAH)6jGXkwrc`?QfYi4 z&3tH&SY=T1DB)$bZESm>2_-^9@0U+i%J&%A5GXMwU(13P=Wucgl$J8ph04YGF3 zXGstk4Qg^6oSA#aK^?b;dj8~ijQjw(n0~R*F8irK+9JgDLeY?fb4zp_kJZV=UCZsx zA9<1h2fe~Elg9_&rK<5KmkmSt%DXl?On`zLLSb~cO=dND896_=4@I_>q-a8b@geQ| z^+$Hi?l5=?hG3(4wi&Afy~}icxvM|5=v1qzpLys^6q)m6c1!SA(V70{QL8A^IcCG> z6q)4d8|SZ(gi=n5-QzAli0UA7VMEhPV}`lyyLa7OM?y+QNyCc%?LvT&W;TdFv6yb@ zeg{-DOumKcP-n=kfn>*!uTXSl@ElrQ120+W@j&6WQSt!^%S>>@q}*+6ruL<;W|{SP zsE3!#|7`soI{)yCQ(k==pTrZ=IB>)`HGIG)DK9U?2b#NKWy87Q%K{6RZL&3q5@TqM*F0xo(p=%ez#K1m~uoPT5;1Fm@trikh6r8San+e{Kt>_Ak%o zj)0ub1HE^4n)jUYp{a>rnd@opc&qfmb&FtynQ>^l?oXUx~1UvN!+ zpwQ1UL(N;yub&%Mp6K)OZwQc4Dode;n`yAEk)7Y0&DCM}d^psREZ(V+Q+{exb4sC`(gj1SJlnBP4d< z%Pd^|sE@ba#M*g{w%X^V(GEM8?raGnBT6WzZOeLWcurwxpu_-V!3+gY+@_N|$1kqI zMXTtkAfNs&S_%q!Nlhf$YkY7WXYQ6W$6hE5Rb!H#eMTeA*xVaB5XX=Q;#e$mpcK;6DDti_sFyJ?V9}@In{@{bnJ|Lj&?`OeYIrT zo5>0a>A7L@>}~!8>JN(}{S{RE$?s~sj~(qYGrZ>Dt7|PEW)iCDsM23z5?vM2Td0&r z!A(|o&mONIQ@8ri788^=_KNqF0cxhc@mLpheL8P}nQ5d*-!VVC9anf&2mkSo->%7{ z368Q^kT>MqykMED1?$cr0oC@ib_Np%JbfM>1X1;xN zl9!L*#Zk^{LgHsHq=pQnaY`@zj#K`$6+bbW}n&7uWkZ;=-lV1Qu5?!Uj=b&Txo+`fyi`YT~>OC$s$GZ`Tg9P6;SA zKcw(|XolpUjOBEn;yu-UqP$nm<>>WdTFw-wtMc#9q4+(e)88EwWYTufn@AMl{-&Cb zuW9aR6X7qbgF@jC!)52bSPplOhA!N|7f^^+H13ZqYZ$OqPnzNdk zgCvH#2eXIdI6@rs@iQ$8%_4ImEz@7=u_302`Hhp-!B_RS6_}~d9IZIFm7Vd^Efhb4 z>g^f3OI|%Geh<2-2-2>E>j60?+}p&&Bv0s&byBMLGBqgBVl&AwhxK0sEkP2EB~^d$ zPA8`nBQoJ3frKS@@Z=*%==ZR_2(y7Zjw6$qV{0lpO31x7&xGjY#(Cw;M-6hzq<7HwW~;oT@rwhC zfDNkzZW`srcqLjx#_phX)%FuzS9zV)g(2rHd*OWt1!}6W7Z_g#GgZt|1(}WGV@*S@ z_PY6$W;bRUTjXG;IaPrF@#Du>T7rw2u9i&fxQ~6#zTLLf7Y-Fkq86shv-gpEZ=8GQ zQw-8h=rH=opcM*V=^NP=liVH{I@`&C6KB$*w|AB%+uS_UJZV>aieLXL>>K>@U|VG$ zMU@S*E35JSK}r6G3(Y@3wz+y9%GURwm1kpRD2$u`0c|>Eb!OX{ly1LF{?RLsal&^A z{Txw&YhVCXL83=Gg=3 z+BYNYhbab;${L3xjx?AbGRaRjN$LJT2ehl+BUxc^Qb>a!mME2#KrubF#ThRH8yy6a zxI}Ze*}g?3zGWNeZcNhUu_u(3omybvy&g-AI%O7G{O+7Ezq{JPnB0tMYOyCM0L=Vo zXz#@Yr;9?V$;E@~#!%zAWekyr8$zC8839^cluB(;a+fUsu}@~#WLGUk!@a(5;7iV z14njIkR)vN#RWF3T{a(f7$99au6{8~=Ewt|Z4^Z7Br^4Qw0`jxY7RVg%5o=3;PwMu zuo2s(mS5wRkvAUSt2N}L3L4ifz2T)uxV(&qZT-~%vrO3qI{xwMl9KcGVlU^%{l5EN zcwBTu;v%!XM|xhbtVP51QOYa9&V!kkDH7QFN87eyj_3A>^D-a5CPQKmM}%Xw;>Y{= zeH~?newhz?F{g1z2zmB4e9$WSmS6?u9l{(DT5$&mmRWQZ@Xo29uT_`DJC+U5?pbYb zz67E$4%R7L#KBHEnM{VZ&>@#0=iVsPT(7^`Jp-MP`suj9S}szQ{Ec=x z`;&`yBM-RO%ma;Lhc8wO_)NAl}-wAH0~}JF0BwEFsU=KwjQv#uqaiv6Ii^ z!DlSRp1?ih(UPy=C@aeu6TW^>KPoW`F&4Y?!IzUAu@UhvH68QX*xhf_Ln+k+Io%*P z@JjX#iQh!=+i>^1t#d5BP1>mB9nLhsUdK+j$*25oFUTZZ{6ch0o!!ZT^*bNO>vW_y z+PT59-1h7t%7tnTkPFS@H6jGLKno9uM~iSQS@?+{d&@=ltAO?kLw@l-m?F20VE3P7 zWu59!B>Y7am=4dTitqMa;UL?k z!NtCFd15KZULq~A15C=W=kW56xce%^IhRVnv&Y`}oL^QDhRHzWez6HdOA0~^o;}S2jDZ7`vLE%)EUq^?5=J`uGqMIo`ozgP<)>OP zzsxx#q!&R(#wezxJ|W1GEkHrW)l!^`wgGwoMmE;b-@PAwv)~;3@{mh~2&rmifO4dJ z4L1SGSeO@iyU5WcC=a9H`33d2k~i03*{LY!1!EfUgvB8+W?lv30?k{fU*g)aHBapt z380RC2-EiVjNyd2esc#b@FbcN-&b&i!Ak-ZC5b1MzR(*oow2W~vLX z+X8!NWLYJ90USQUhU9SF#SMm?g;n>GhJc|DDu$t^Iz;@~INQE2Lj{YcEIm1eTi9!7 zW>)qIHJ)iVc6$*#G8X|yub)#(z>-RUvy>y1nTb>4JAj>X>$S@sn0a)_QF!wb5YS=0 z02JAL(y`FR5gv;H%=WuiYzCN>s>5hsTjc;i%MY(ypyNS^8()+Q-n+Pj8V10U`9SJ( zc+wGm8R@AH`1_@G*vL%)=edm)m_?K*Yy%)YqCX=5K;koi>l1DwyZ`zWjFW~C!Nn7{ zcNWJ~R)slcrQxo_Af2={(7Vn+XBox6ee)>~$k{PY^uiLUNWr|$D^ivLS__^7*>r6l zv>}q&s*CFLFucl->K#jS)Pi~S)yjQ=K^{n=p+{bb3(+hkAQ#>?%mQk_C9Ip{SOmxc znAahxy@GBqBWwEMW|X99)H1eLy###b58zMZij`aBGpzB(?c*<&4F(y+#E*GC_uKOX z3=Hd#6tbw2E&)q{8B00;E*WU*=`kZpl*PEI3R+oM$TGUkTz|AaIUEv_H`^VH&e z4n8SpZ`Z%1qa)NVAM-k#AD|N$4E)h=x|?7T5ETMkV6OqC3PyZ|5_bst4(|n1zqYnk zF}CKl*t4ULkbCS*Aeg>?4OxXHf+(S+p#(_Okt}|hRe>3nQT6!DSy%=i6P9ag-|z`0 zbB-k<{r&B*I{^8kT(5bSApd$JuuIzY23eTUXR@3j`L1ic|5_^L6;gq%^QNYzFWueU z2d9q-38jo?5d>=gz6UPmh8c}9xZeKJ90ufr3cOgT1#TnKY4F~u=As1==IM-|Tql!K zQy=>W1Y|T<2&_!*13gFzjs{wmD;n{&fwIXvmX=m=1v|A(Z8++)>dibl)(UzO9S6Zz zRZy^KndU2aAIRG8{3+wu$lD>h^a>#FC8;%_t>O60vK%j?;~S73HGTtr6hS4{nWADH zVWE_HCs_63D~7Mp6VARp`K|Iw38Zs?{l(idz;FgxAwD2hkf%E7Ke>{01?ZgEI{>={ z?4wOrh9)DY4?DgPTvkG$0$!8WcefsoZgG)$Qd>w^v^PizBhy}6L`slRK2~CVhJSCP z^CQj|(K5Q1Ncqz)bKOGWw%P6?KpuM-kzy~-H=J9ZV6;E5Sz6z#v_*JL%I{l zVzE_JS4iZCMqhDyZ&(Hx@RAzqOt9qh56U_MAM6|mqn`z7!mMc61d0b%b8*|J$QjRL z&qyQBKfxhxsD3Wp)X-pW)0Le(Fl;EkR;8Q(3~^97^aqA=mJnZ%PMWv9+5e*-{23jG zKGxu?Yj9OMx{XK{C*XV6Tk8pG5Uu+XIO-hZk{VoxJwka!hk7SIYjaJ-2Kam@6HQ;K zMGqzM^%_v^F?MsQA&Z~~vXp@798nQ}wlp2=8}tOZRd$nHu-x5^2y&ER$7sVm5Y_Hp zePema>#!aGQT9m4U0=Razz7i4C{SCbp2ufdXWYM4RViN5*5;9nNWF!8%Z|Hs?nd1e zJEAg;eu19IJf3y!b_X+~S^xnWf7pRjq&s)+G}6<1k?l5IK4lJBrZ>?+WXZJOb9@70 z4mX@xrUq7p+dvMqeP0P&5S;;k=l+bfUtD+?BWV#T?O=o)4Qqu0w*USX+_7V0q!nhw z1(9I;N3G%n+soH^QxHK#2a-UB(m-hGDcwBMdP7<(m3~D{9{@lw ztsGh1xmkC_YY!0T_77l#;2B%6o$u=EVk}F1y8IEoJoG~M{cm3aN;(?r5owu1--E&U zTySllt7pNMDt=EQ3jf#a6$_HGc>*z)##0IESwRl*Fukn%qV5pCq@ZkRdKPY-$kX(> z>gbqBt%ak2DJe^^=Doewo1=dz!Ibt>>HhCTBa7ynDywTK?Pjitnk-8*7V z?qaO2AN)@(eg+tU;jn+?GFYa`l6#HX4@OADf3ml6M$Bn#(&ByLRMXY5c}`~u#JenA z5lx0Z1?=5-K{A)fCjW6^7zjjOyzxyok?{WGVw?tOQgZkBA~O=WZH?!{^k5lVINuJg zV0Z0lRG$SiX^(C7rhfu;MLi=UVDBLIbzEzf^gq_Vh=f(oD{KYP|1}_^tq>U%Q)A3fx6Xi|DQTjg6qLH5ev#Pe>FrHx9H{QKF?Nqy zrQH8m6V{4cMMb5mug}5^WU)wWVKT;a9HWCES=~`Lw$0sD%JLjaQ zU+WCrP@}C%;P({7z4RomV{L5Wf$H#l-wEamO`s=mt@8HWOS_4GK`{~G>j}{i;wyhJ z`ajWPr8|m_2=n+OvWe(45dlQ00G9k*)-y+;7>c zEmI@f4blFZH?)?_@qZ9}7wka=P$mWheijr5dOq}|_MZkWg0?UPpvyDU!AsT)A{XHA zOa2$5{=g}b60ylZ^^fD(8VDR8od=9NZW6tsYyOxQnj8>vSYf~Hl2rk6R|Y1fPma@E zi^;;C!n$kXo~aOyfl9bwFWJ>+xRW@IKQ0t@!n7M6D@qck{R-Kt$Q}}06Y0?@Fzw*j zSc~P^V)bE`o>ult$8AKku3Y>jN4i+~0$R&Ie2~cCj8`$C*1EoNt@YeQPs89Ps&w20 zyeMnwb`^#`dGaJRE33h_;rsWvtbhr^Y6)vtfg}62d#K0SYHH^O>_lvZgFSroI99$j zhuH4t5+<#)mrhasew|WKowW#c?VRBVL)emM1Eg0kViDBgD*y5L-}GJzbY#F&Do3G2jzKMXWE!W8;YUVBuEeJ@t%=#Nb|7yC-moqLzn(wHH`*#sH4`WG_hgsvU^Br- zR2ux9iU5=}*!;)1c-THzYmx^+pUCfc9kzuqf)mKy>e!HfT3U;PJVrc&FWoD-mKTL~ z2W@d!^Q7#W+T!)TM5tG*eOX9I$a%7fXy&r=#Q>MRygsouEA;;#oUZ=>#0b@u!ce>H zVBui7Jh%F1#B~=e04S_>tYR(#o|YN#8dqXc(nCf@#w-I`hzdz3M1_zs?+5)ErvLNs zTBuU+LSu#vjEoL(^YSv`Xbgz@J^Bd%H@+lhO&bQigJ8mB7~Mi$jeBs6uycNW2vkv7 zmeI1m^^ds%jVkN~(Xf$0T8V&a2E@;&kR(Xl<^Cx#qa%@NnwfE@U5Yoh6N@FhNOt}J zeCzdfLxNlL&lg!0B(d+`zfaA}YaVFm>bkZ&J6fIy`QJC6L~s)?&?#icjvcEiDmr7l z=-UyD9d#mFvU~!th@eVgzO_KRdfnK1s#5MLzcQ`tCC`sR-9E{+&7f6?u2_f7B*&C$ zHQtPsVj`}Zz~{u3tXy=lE1V-hD$};g<3Ao<`Kek~*Ss*)+uJ)eF|lG?ph>lfXW!fk zv9Dgq@2d^WK<`~9*{?Y>eK%I-u`>9o)hrEUypJ!VRsJ3~4^QOy_&859pv8>Fc1<&6 zwUQ~wA>X)ZJ}y4~l}hZ0+sQ6d)CVJ}gZ9-T^A<`7G1X=x+a;WFM6CYqUR zFA)4w&7|(+n1%tnJ{#fD!Guu)mH)>AVQ=q_2-&^qZ{G&i*41S@M9#c^fAl5Y{|$J^ zDN9dH;ZRKh7cd*6-zu$b#IH=C`i$;iVW>hQlw{ayVQrma-?Ez^wf`GFALtJ5pSqlt z@XPZu=l|6k8dUV#X8D`yRDL89JW7ATE;mq+T{rlzhg6&oAdbeVF#Gdxv*u!aI^1QRct?4!M+)?x*03DwwL*YIDU zG@tx*+d$Ail**D}iLLT9@9(xic2A^Sl+tc~ZlbLFi)>8yB2vFuV3|}Vzpa8Nj`5)2 zl)%8(<9i76TA{S%J7EX0^Odd*1L>$6Jg;fK5=4gK0}!chp7F73kwHN}nb(AXh{lR& z*p8eEHN3yHCUOeCkX1&GOpv($Gqvz@J`nB)Y8s5;p9N-@bi2 zw`tR++&S4_H4&C~3E2AUwDM1MhV3DBp6Ktj73+zTY@;Up`kzNg$k)+n0z<$>O7CON{r=`boWAlX_O<7LDOk^i>F-(YqtLKs*2W$|~>T-}ooo z5tItMUKo1ttK}3&E!8^rTkZset|dtIF!PcP+*RHzCgknv2aD$ zd@cB6Wx`Oye(@%YBy(kJ6OoT;qHm+kZlQwgFze0@b0}F6NB%?RKIP^++>hf;UgG72 z!;>ptdaNC0R~Sm;J1oC{)CJ8uHy(vu1C_e$q~MS}@T|n7TB<$!_S8Q877nkfBp(8J z!#0wpZJt*q(cZZ-`tLA})gWB8 z7<4ZgBNG#aYXa&!S}#0Z_sJ3}7vuPWO)$5WRxPJ%x;Gpw@{7{Pd zaoyDN4VUA#PijU`|Cn_nNw^@<82@D_<(HqKQ4^I3?4c-&mSSGt{LyZxgx`cJPh+xk zOvpcs+2A5r+>4PtXpSMczT?} zd;P-+6bj#o@T!&rXMvbh2L*DPNL$`-UIWg3ACb)qtjQhJ`;OgX(PW?2GrTmXsiE<# z=We7?FlJXbt*O!Tn|0B1cj`_oe65>KR6p6=n_wX^Adti3YB^*hTpat+Nwd?0mszcI zI%>Ru6Q8D2Gg{Y{%TaEU&{H=r_!ZTgpDmt0abFap)$BZ*4Kddh_Ev0A4I>MM(M$mGp$D6aPHw?tp)5zR-#Td-9+cF~8W79Ta!kZo^a|8w3} zV?cCpD+g{08`qPo1N3@N?8c0ITEd{hWyor-S%e+?2RlWx`xIhPFG` zAi1JZuz7|(ccNq%Szb%$sC-AmeUncn`ELRIn8~OMn4wdC7!tKBQ@YG)zICn-Lq$CE zCZ4&%@;>X#h+_t$i_1@n+S5;F7Moy3;CEO{em%}%fN6Tjb*yl4oT-nGx=*#{OAar^ zDlAfG8RAjZ&+Q0ks84>D&)(C*+lUd$$UadQ-O+Ud(`+s2{CojZR~C&o&3Mx{?`X`z z<2W-kTb4V~j{mH*kW;6PD-ZoB+CPF9S?Gkt%#GIO^(N#-PPUk|n4q-R`*AfpU-C=b z((l(j9#DrW&y1k^8k#VFaiUyf=B?|`Bap@ktW5$sYeSd zTEy@USQi3)aRF=a_iy6yC>>~9_0zUQZTQ=-zmE{M12*$z(J9(1a%oMONm-3JF0YZ- ztTLE>A8pl#{s;hALnbWC9|dH)^^`$*Ezv;`Q;Xw2g}@q|m+;R6Yl-dEGN%k&V8$v6 zt2Xzme*JA&i1zp&kcnveACQUE^*>5pVVVDl3!;|)pSW1H1O5M`xLDYVo}A+HcQ(vl Q2mhqR<;32c(Y^Km06hcw2LJ#7 literal 0 HcmV?d00001 diff --git a/mkdocs.yml b/mkdocs.yml index ce892d4d2..b638b3137 100644 --- a/mkdocs.yml +++ b/mkdocs.yml @@ -77,6 +77,7 @@ nav: - Setup Seafile cluster with NFS: deploy_pro/setup_seafile_cluster_with_nfs.md - License: deploy_pro/seafile_professional_sdition_software_license_agreement.md - Seafile Setup with Docker: + - Seafile Docker Structures: docker/seafile_docker_structures.md - Seafile Community Installation: docker/deploy_seafile_with_docker.md - Seafile Professional Installation: docker/pro-edition/deploy_seafile_pro_with_docker.md - Seafile Docker Cluster Deployment: docker/cluster/deploy_seafile_cluster_with_docker.md From dbbe455da051f3a467d62384a980e2e9c61628a7 Mon Sep 17 00:00:00 2001 From: Daniel Pan Date: Fri, 11 Oct 2024 21:07:56 +0800 Subject: [PATCH 2/2] Update seafile_docker_structures.md --- manual/docker/seafile_docker_structures.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/manual/docker/seafile_docker_structures.md b/manual/docker/seafile_docker_structures.md index d25655929..182b7d0b7 100644 --- a/manual/docker/seafile_docker_structures.md +++ b/manual/docker/seafile_docker_structures.md @@ -3,9 +3,9 @@ Seafile Docker consists of the following two components: - Seafile server: Seafile core services, see [Seafile Components](../overview/components.md) for the details. -- Sdoc server: Seadoc server, provide the online collaborative document editor, see [SeaDoc](../extra_setup/setup_seadoc.md#architecture) for the details. -- Database: Stores data related to seafile services, seadoc services, user information, third-party plug-ins, etc. The default database image is `mariadb:10.11`. -- Memcached: Cache servers are used to store avatars, profiles, etc. +- Sdoc server: SeaDoc server, provide a lightweight online collaborative document editor, see [SeaDoc](../extra_setup/setup_seadoc.md#architecture) for the details. +- Database: Stores data related to Seafile and SeaDoc. +- Memcached: Cache server. - Caddy: Caddy server enables user to access the seafile service (i.e., Seafile server and Sdoc server) externally and handles `SSL` configuration ![Seafile Docker Structure](../images/seafile-12.0-docker-structure.png)