From 6720db1bb551b1e281ee9af467d7bcd297acd3ed Mon Sep 17 00:00:00 2001 From: okxlin Date: Mon, 10 Jul 2023 02:48:33 +0800 Subject: [PATCH] =?UTF-8?q?feat:=E6=B7=BB=E5=8A=A0=E5=AE=9D=E5=A1=94?= =?UTF-8?q?=E9=9D=A2=E6=9D=BF=E5=88=B0=E6=B5=8B=E8=AF=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/baota/README.md | 113 +++++++++++++++++++++++++++ apps/baota/data.yml.bak | 20 +++++ apps/baota/latest/.env.sample | 7 ++ apps/baota/latest/data.yml | 50 ++++++++++++ apps/baota/latest/docker-compose.yml | 24 ++++++ apps/baota/logo.png | Bin 0 -> 6620 bytes 6 files changed, 214 insertions(+) create mode 100644 apps/baota/README.md create mode 100644 apps/baota/data.yml.bak create mode 100644 apps/baota/latest/.env.sample create mode 100644 apps/baota/latest/data.yml create mode 100644 apps/baota/latest/docker-compose.yml create mode 100644 apps/baota/logo.png diff --git a/apps/baota/README.md b/apps/baota/README.md new file mode 100644 index 00000000..f76874cb --- /dev/null +++ b/apps/baota/README.md @@ -0,0 +1,113 @@ + +# 本应用介绍 +这是个民间制作的"宝塔面板"的"1Panel"商店版本应用; + +- WebUI入口:http://IP地址:面板端口/btpanel +- 默认账号:btpanel +- 密码:btpanel123 +- 容器内root密码:btpanel123 + +> 容器内数据 +- 网站目录:/www/wwwroot +- MySQL目录:/www/server/data +- 域名数据:/www/server/panel/vhost + + +> 原作者项目相关 +>> - https://hub.docker.com/r/btpanel/baota + + + +# 原始相关 +## 宝塔面板docker部署 + +此docker镜像由堡塔安全官方发布,镜像版本为宝塔面板7.9.4正式版,镜像会随着正式版的宝塔面板更新 +目前支持x86_64和arm架构平台可供下载使用 + +维护者:[堡塔安全--宝塔官网团队](https://www.bt.cn/bbs/thread-79499-1-1.html) + +### 注意:部署完成后,请立即登录宝塔面板--->面板设置中修改用户名和密码并修改安全入口 + +### 注意:部署完成后,请立即登录宝塔面板--->面板设置中修改用户名和密码并修改安全入口 + +### 注意:部署完成后,请立即登录宝塔面板--->面板设置中修改用户名和密码并修改安全入口 + +`latest` 标签拉取的是`lib`标签,安装了面板并且安装集成依赖包,安装每个软件都会快一点。 +`fresh` 标签表示安装了面板但是没有安装集成依赖包,安装第一个软件会比较慢,因为需要装依赖包。 +`lib` 标签表示安装了面板并且安装集成依赖包,安装每个软件都会快一点。 +`lnmp` 标签表示安装了面板、集成包并且集成LNMP【Nginx1.22+MySQL5.7+PHP7.4】arm标签是MySQL5.6 +`lamp` 标签表示安装了面板、集成包并且集成LAMP【Apache2.4+MySQL5.7+PHP7.4】arm标签是MySQL5.6 + +## 如何拉取镜像 + +仅拉取镜像保存到本地,不部署容器,仅需拉取一次,永久存储到本地镜像列表。 +``` +docker pull btpanel/baota:lnmp +``` +小贴士:即使不拉取镜像,在下面部署的时候如果docker本地镜像列表找不到镜像,docker会从云镜像库里面拉取,只要执行一次之后镜像就会永久存储到本地镜像列表中。 +疑问?:我是arm服务器arch64架构怎么办? +答疑!:直接拉取镜像即可,docker默认会根据系统架构自动拉取匹配架构的镜像到本地。 + +## 如何部署 + +方法1:复制下方的命令,无需映射端口使用本地网络直接部署宝塔面板docker镜像。 + +``` +docker run -d --restart unless-stopped --name baota --net=host -v ~/website_data:/www/wwwroot -v ~/mysql_data:/www/server/data -v /vhost:/www/server/panel/vhost btpanel/baota:lnmp +``` + +方法2:复制下方的命令,映射指定端口部署宝塔面板docker镜像。 +``` +docker run -d --restart unless-stopped --name baota -p 8888:8888 -p 22:22 -p 443:443 -p 80:80 -p 888:888 -v ~/website_data:/www/wwwroot -v ~/mysql_data:/www/server/data -v ~/vhost:/www/server/panel/vhost btpanel/baota:lnmp +``` + +两种部署方法都会把用户的目录映射到容器中,用户可自行修改映射的目录,方法1案例以如下: +`~/website_data修改成/home/website_data` +`~/mysql_data修改成/home/mysql_data` +`~/vhost修改成/home/vhost` + +此时我的容器启动命令就是这个 +``` +docker run -d --restart unless-stopped --name baota --net=host -v /home/website_data:/www/wwwroot -v /home/mysql_data:/www/server/data -v /home/vhost:/www/server/panel/vhost btpanel/baota:lnmp +``` + +## 小提示! + +如果你希望运行的docker在你设置了内容以后,再`commit`打包成自己的镜像留着日后使用,请不要映射目录运行容器,可以使用下面的方法运行容器,这样打包容器就能将你的网站内容、各种设置、数据库一起打包在里面 +``` +docker run -d --net=host btpanel/baota:lnmp +``` + +## 如何访问 + +现在,您可以在浏览器访问默认地址`http://您的ip地址:8888/btpanel` 上的宝塔面板。 +默认用户:`btpanel` +默认密码:`btpaneldocker` +容器默认SSH密码:`btpaneldocker` + +### 无法访问? + +请检查系统防火墙以及服务器商家安全组是否开放了8888端口,下面给出系统防火墙firewalld(必需)的开放方法 +添加8888端口放行(必需):`firewall-cmd --zone=public --remove-port=8888/tcp --permanent` +重载firewalld(必需):`firewall-cmd --reload` + +开放安全组示例(必需): +[阿里云](https://www.bt.cn/bbs/thread-75887-1-1.html) +[腾讯云](https://www.bt.cn/bbs/thread-61042-1-1.html) + +### 端口使用分析 + +宝塔面板:`8888` +phpmyadmin:`888` +SSH:`22` +网站服务:`80,443` +MySQL:`3306` + +### 目录使用分析 + +容器里面的网站数据目录:`/www/wwwroot` +MySQL数据目录:`/www/server/data` +vhost文件路径:`/www/server/panel/vhost` + +使用有任何问题或者建议,欢迎广大用户在[-->此贴<--](https://www.bt.cn/bbs/thread-79499-1-1.html)提交,您宝贵的建议会让我们有更大的动力 https://www.bt.cn/bbs/thread-79499-1-1.html + diff --git a/apps/baota/data.yml.bak b/apps/baota/data.yml.bak new file mode 100644 index 00000000..2c2e7d58 --- /dev/null +++ b/apps/baota/data.yml.bak @@ -0,0 +1,20 @@ +name: BT-Panel +tags: + - 工具 +title: 宝塔面板,服务器运维管理面板 +type: 工具 +description: 宝塔面板,服务器运维管理面板 +additionalProperties: + key: baota + name: BT-Panel + tags: + - Tool + shortDescZh: 宝塔面板,服务器运维管理面板 + shortDescEn: BT-Panel , Server O&M management panel + type: tool + crossVersionUpdate: false + limit: 0 + recommend: 0 + website: https://www.bt.cn/ + github: https://github.com/aaPanel/BaoTa + document: http://docs.bt.cn/ diff --git a/apps/baota/latest/.env.sample b/apps/baota/latest/.env.sample new file mode 100644 index 00000000..1a892e1a --- /dev/null +++ b/apps/baota/latest/.env.sample @@ -0,0 +1,7 @@ +CONTAINER_NAME="baota" +PANEL_APP_PORT_HTTP="8888" +HTTP_PORT="10080" +HTTPS_PORT="10443" +PHPMYADMIN_PORT="10888" +SSH_PORT="20022" +FTP_PORT="20021" diff --git a/apps/baota/latest/data.yml b/apps/baota/latest/data.yml new file mode 100644 index 00000000..8f91452a --- /dev/null +++ b/apps/baota/latest/data.yml @@ -0,0 +1,50 @@ +additionalProperties: + formFields: + - default: 8888 + edit: true + envKey: PANEL_APP_PORT_HTTP + labelEn: Web Panel Port + labelZh: 面板端口 + required: true + rule: paramPort + type: number + - default: 10080 + edit: true + envKey: HTTP_PORT + labelEn: HTTP Port + labelZh: HTTP端口 + required: true + rule: paramPort + type: number + - default: 10443 + edit: true + envKey: HTTPS_PORT + labelEn: HTTPS Port + labelZh: HTTPS端口 + required: true + rule: paramPort + type: number + - default: 10888 + edit: true + envKey: PHPMYADMIN_PORT + labelEn: phpMyAdmin Port + labelZh: phpMyAdmin端口 + required: true + rule: paramPort + type: number + - default: 20022 + edit: true + envKey: SSH_PORT + labelEn: SSH Port + labelZh: 面板内SSH端口 + required: true + rule: paramPort + type: number + - default: 20021 + edit: true + envKey: FTP_PORT + labelEn: SSH Port + labelZh: 面板内FTP端口 + required: true + rule: paramPort + type: number diff --git a/apps/baota/latest/docker-compose.yml b/apps/baota/latest/docker-compose.yml new file mode 100644 index 00000000..af7ba017 --- /dev/null +++ b/apps/baota/latest/docker-compose.yml @@ -0,0 +1,24 @@ +version: "3" +services: + baota: + container_name: ${CONTAINER_NAME} + restart: always + networks: + - 1panel-network + ports: + - "${PANEL_APP_PORT_HTTP}:8888" + - "${HTTP_PORT}:80" + - "${HTTPS_PORT}:443" + - "${PHPMYADMIN_PORT}:888" + - "${SSH_PORT}:22" + - "${FTP_PORT}:21" + volumes: + - baota:/www + image: "btpanel/baota:latest" + labels: + createdBy: "Apps" +volumes: + baota: +networks: + 1panel-network: + external: true diff --git a/apps/baota/logo.png b/apps/baota/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..6ceb7d91ec7d5d65a98833e53c1175e5f8fc7947 GIT binary patch literal 6620 zcmd5>_di?V+m5~WDvB;!w6&?dOKYa~tWAT)-m$87TSSWzl*Wp-_D%GbS+e;$s#|F3Y;a*^UQ}86>V%ybee!^& zaa|Qxg^8%ujMbVg|IB17yfkI?uDK7!{#KD923zmc9X(4 zJ{T>^t{e`^i~Dr=6swMCM8qyMV!L6ZGGpq>EAnHpW!rmkr9n3eOs>+qU;Vkj!=B=B zEs0k*mEM7#=bG1BHn=T+3*wuhGaJnp85r5XM=QnK-K} zLX|}sN{qxSrTq;GOY!zVGW`7d?=r;!xiN$O`;azQXfOP5v(SP5{s^3-nO8Z~ZLb?Y zsmr9wd`ZXJuKR!QLUjZ?p{)wtV!BguSEw8Mv)wUR#>)cCm*;kgB;J_@y zmQSuU0~8JMBRf}DV_oQkDZN1<{R#{sVSK;_9N;%WMlra+8N{6ChrCr}?Q6k0xIJn% zraC}X#KzGrp&YkNKYg*Ah`LyicN(#u?Q4sQu8J?X9#kSHImzl_zLVfmaeo#+NA!b|OL&UX6Go7h#}M5bMpyTMEQX!b$;# zH`T266|$xMHm8?iEXxt6y-Pa$hNaf@J>ssX%=3i~N9OrjoVT=Fg)lN56MvMjr*FAD zrb3j$E72AC!T36oH1*oPOFNI)&tcSjqZXtYE{~kQ9`?I!^*e+$j&auk8vxfxY=DQn zc>kp`RTi+brl}Kh zmS<5p%aQqC+ZZhh&8b!*alpJj4Wax<9}4pu z9_cexX29wi;d?!1?tJe$0#pSvUN_>rxi2LP#Hv!xys-6%Jp_g9#uCsZnMvs0x`a-Z z;~QCG3ZqM#qCwmD8jQVt7lN{@9nth&=TM8`$axmM4H*4x#3QX~DiMQMOh^LpEeJ|D zEWm^!^LnY`If!<0Y>yb*>1OD?Uw|B}K)x9g`PDhZJs4aA6~KY&ELkIe zU>ks4l1v&87vHk!F~q7%wRQ>+=vqhr5oj*2IE-dpNhP;NF}w@GbZ#(TE@|5i!USlJ zkZIz7IgH}sW&a3oY^13;jxSK0V|_G|f&(qPMEOnU>-)38@R7Rip@$GAb-_p}e$#q3 ztEarmYKc^T!bK<`GQL=t4aH#;0K%>GHM<<6o-o?udYjglTC_QAQr@|yb?vR}bkW7G z-k@G;yiC5rm%R61cuG+Tivn(Sme{kgJ7Uk4D1UqshKptT@$qD>9T8&u zUM>_D%So!GA*IQ#rbtMy0%(|A93Z1a6f`8mM0YN|vN>8H4NIo-DjxuTfy)9d-`5!5 z9niZ0wFY|9MRG?{M@}{}jkH|mBb}5~Q0m2tI$TIx7qYIMthh116p9Y(wBmnL*qXlwQ55UUf512-UJf8yL+ zefg5*lZQI|~*5k{=Ib}56zXz+9kITyrT8BEJfyvQ3 z%Uy^j)UqO-Qjmy4#BHi(Lr3zXzgnJ1-11|1K}*0`x3%oPS_V?BsIU_u-^pfCq=WycuxyX zEKJrcVHUdQlrM6pue>P~R|2@tX_Mi4(s)EPy&C?xfc3wOj31y=p2$m)68xs^b97<2 z4gIhmIr=R78<&W}91!P05Fcd#@XanaCJ?bAj-qwDi&lvG_~L-&1rx{S-iPaV|L%Zz_0a@t9I1{i$~Ba3Pqy(?i0sXS6#OB7&qa@^9H zh05zLA8yg~ZWcUWz6{A?&>j|~`g+sD2hu0w6Z`As>wzZRj&pnb$IVBpL;R~w)Fotx zQLg?q9^hykTApKsEM-wsFW&3x2#VJ6Xinn%Z?AXK@uX;RMXK zyrd41?%+_w1hboPr&-U7tfw7XfC<+zl|yz9y;z37eQYUF#845Q1Qwq>#^{Y_%dWF7GHGKf(^i2tt7_QY;Re`EDy{5x9BV79$6W^a1 zA$g8BU91bQ=)_JDnPq)Nbn_)g?Ocf-Jx2x7AE*YdfgI+KXm<8G&v-g^zp+tVe9e7R z$GuG^R20Eu0gjT#p!^#2h^x6?rqiT)2DD89lt@60yQD}t__+}-onK#u~ zCxXj2bTUR;Q?L5(xq3^8WH{9l04%g2iRVj<_TFcQLBMUnG`5Rv(;BU{#{qydoU(ga zACf(?XAV{}s78J4VvhMPV%D{YNqw$ET8JL2)g41(_5Ihn;J`;L-S@nUGF`1OrYPP> zG5;OWVD)#r%B<8mM%kxcHz$p8v&nwsZ{)K^aSxmslT;vRo9^YamTZYQgS+vI4x{-} z=*FksJPK}=71B&J#tk&*+T>>$59gB|(!+xZ=km%m*Z57l8~d|^DpD+K;yO4*D~v4k zh`qED!#e@6WLuMobU6{R3YQaex}F*zfgkYAhT;7v$cV=CdHbuRNKm_yuf`{MfGWNd zDxCUH<6v0LlZp>{ujxusufUO{|FexQiK(a$0jkO?3L(HTLh~w%QP~zqJkqS?DWy@j z{my=LpuBlOp8d5cjlWB?If9gJ(?lC@!YVa>5u6)oxYrFM@&(vuRseU<*g@^ z4VEOgs$;oS`ddo0&r)syffI&T%B4NeVSIQ}6QFwYlUSD;y(AWP&Qel~TV}!7VPSz! zK2b?yk(B*YvXwI^?Kh#)msQyBW(o?Sj61I4ZG&cIe3zi&4Iq^zu(r%1mJ6d!KBLHd+Xm8?&!N1tdXr}O;#({ZYqx@Q90EH+ARLu@pI4}e(9SX)-};=AX+ATrMC zF@F~_nrKcuu1j82J>EuDXT7VyEnh(@Ys3%)ug;h6Kj4{2&ghx*Jea*;TyA0 z3~vaLnD{!c`?*AOWc|ufY~ShnKNZ;#!UgO)XO<#0CP9YiIJWep|9Yu_}m>+&>7BEb3Y&=)c3ImTYlzN z@U)0vsQ#abPN+-DpV@C@hgSEnu};~rwqaG4m%Q1APHskcrIqKezRNWxj&OOV-9tR& z?vO`!oMqa+Uw`*47I!?t2ixrqn63ZOzQ%p!gaWKO)yo*K7kJ~hom>*SDm`!M`5qWZ z4lZZ>Ns2{$;;B>du88n3e-m&#z!symCY&41?%y9sI7n^<-|?NRZ^$I%m(3L9-!HqC z`cF`68>&TzSZ_V15BBfjLp}!kfY(0Cq_3onx?|n%G~wB^36PspE-f9JkLmC|_~P;u zCBT#L`9CnnD@9z9FP6L?Z@0~t;oKK>GX5~_-@DcTjh>pt&AZQde^$UQg6~>6_w0wp zIX$qrC#p}^(rl?F+!dVp+=K@vl%pLMoS^^w*;nrh@fp3v&j}Owt{Un0JUh*S#e*FP z`KB*bqPyx63)(F4q_Kf9AJwR!X9_1dKk`ln7aVru8cP$HlrQ$SDh898cWo|DSN3N& zG`H`9lNuE#B+LMMtUbn4c$Jf1BJtcHIrC=)bUxIgWGUj<kl@3f6*K#ESGaEiisK4}XYg)$|S5%84rTgPb$jNp`-L|J3`Xr9{vaKi*Pei~9Iw#nx74`6o@=1ZPcsfYRRUK7_h# zQlRjGUOzK7<%Cf3V8}1VBGRk&So^LHHUkJdUTe}31zPWQY4uBWbx_=X<;7_kpB)6X z^=9)ARt;!AK2ZDD$!0KV38(M$3kLfjlozqg8WYi4PIKpHSf>$wTXHIZnB27hZYfi0 z{5^=^v?Bc7*WaGIcjk`eAotWzHX1%j<@64|Dg^!X46MXZ*MXjiI`yO^_y6e@I@HdY zf7hwYWvMwr<@Y}oCpyTai%nm;t(s&V_Th2)!T(d!_*JR>zaI&5?Q>!8O*Mu z%+U!wFPiLNz#@6uUa`$DIppL;^iZ6Nj0+PFB#C`aBgb6}OkudoR3&K+M{$va_idIP zkZSJX8Z>U%4E4yF15%q|`k`gs+t=I- zzpCus?b`h3t>-v2zO!P+;8UTvQ$&F3@zg}bjXh=8r$tr|Wc!H-R38rn z76WW|N&rf#@9AaH_E~qUcupVCHQR)a(by`Acy&@1Mb7{DmLllcP`Z5Cw-+s{2GJ|6 z<-81isl6j<4Mq(Hw!rSfkyZy)T)twK(&8Fa-PzHmS+u>mCb-*|UjhQcFEr_!q~*Rr zCsgxNXc&YelxuSC=f~Xa#dQf;=fdCZM&>I$xd;j;fL*enNsmIoEB7<%H-U~vH!4}2Sw7a%_59!&%!MgxVHtCP<^FmmQ0s65Na}dRT(}?}# z9_lKNW#Xm6znA-1F#I-;6R(P+y=Lk65+!+FiUpY~%lCnVNys0pZo!aaCJXbAZasEE z@m$1l>5o_0{N@(;a-bLT%~>n61Dh1mr0Ht)YcUHObs;7xY#J~5Y)hrI5m&t(_BENl zb1l^CYPoA+b*#q>ZtgG2Pprl&65UbR(^!YPHTR-WI65Uj^}6#&N6lBiyF@y|N;COa z00sF+s00Aw+OjCld^q}m1tA;{5vZY zS9mo`SHc>1lu*rd(COyKvG_SKnT>u4)S+4Q5xd0xeJ`?8kUDeNH$Z@rY7_1_neVY0#n!TaS&PYN_%+%hMDmUm>P`f1H^6iRT`O_ zEPB@C04jDi*~}84bXkV;Sf*RipHHHn1{TNj&PNISCw&YRIgDW}kl`jyVG6278%@Rm zUZ)|Y2%9<`4_kbMg>9{Go8*^Ul8Y$L7tij{7o@$DAzT?cmnbY-2u)bYyUP(LHq0z( zJYyIqhd2VMBz?0MR2mHjuPBqu1JungPJ+m}lEb-d({e0$1vx$PZGh^?hJ8@J6cRRz zUO$_c8QTZ7cmL>6Bv*-fq+cL)1wMPm?^9|4-qAn7_C^_ypI3kD%LW{=*>-d{WncTv z+-b9^!PX6hxQ(6H)w!EoYe1I#Q0{K30udNH0u0FsEY^dQQTp{DCX2^oy*u}Eaovpu zBBMnHIKaMdc$Ehz5-7!HYvALkKzt#2^YTndxbYWkDuJ< zpkKEjz+p#1wS81xX8T(TarFnwZ+!ORM)^P|l&-oYjVM5YI)M)+wpkF;ZlmID)OI}i zrJhOp4wK7}_vS78%}{*gQQ(u}{TL`8rqe0Ee$7uvnbJ-0DjwDoQ;R zkR>Q&Cl{Y252wEOYS^|kItP_3JB${^cV6t}n|Z&|rAg~~B5)A@%_!i|C?6%gxvox{ z@zO9br0)4x@}HEQF_!I8t^oC2qbaDqS9_=6%Pj}9@{-@C@K-2OI$uFuet@buK$3VM zMvvu*{ToYR&g=G>f;i+xsny=^*s0dPZVqYz|77ByuASnoM|8E)S6kW7diO>CXlgWqF+79zSSa>AE<;E?C6g6o!ksF66RR*kDXR@mbz$3~6xkH8N(31+t zmDOw%Pf8&32hL}=g8c+^d;lgzW${Tfky5YKfEq~E@?mT{bbt&u+fk&;HJP7e2E6bQ z<-Q+OQ5_qmEuzz>Z}`RZq_R|ZZ+tpw)G$*}FR>E7glk