Files
oneclickvirt.github.io/assets/guide_docker_custom.md.aed331f6.lean.js
2023-08-14 11:20:05 +00:00

10 lines
15 KiB
JavaScript
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
import{_ as s,v as a,b as p,R as o}from"./chunks/framework.70afa331.js";const D=JSON.parse('{"title":"使用Docker一键安装某些容器的脚本","description":"","frontmatter":{"outline":"deep"},"headers":[],"relativePath":"guide/docker_custom.md","filePath":"guide/docker_custom.md","lastUpdated":1692011973000}'),n={name:"guide/docker_custom.md"},l=o(`<h1 id="使用docker一键安装某些容器的脚本" tabindex="-1">使用Docker一键安装某些容器的脚本 <a class="header-anchor" href="#使用docker一键安装某些容器的脚本" aria-label="Permalink to &quot;使用Docker一键安装某些容器的脚本&quot;"></a></h1><p>每个容器都有对应的配置要求,自行查看</p><h2 id="一键开设android系统的容器" tabindex="-1">一键开设Android系统的容器 <a class="header-anchor" href="#一键开设android系统的容器" aria-label="Permalink to &quot;一键开设Android系统的容器&quot;"></a></h2><ul><li>自定义安卓版本</li><li>自动创建带校验的web网站</li><li>自动进行nginx和反向代理的配置</li></ul><p><strong>宿主机的配置至少要有1核2G内存15G硬盘否则开设可能会导致宿主机卡死</strong></p><p>安卓版本越新占用越大,以上的配置要求是最低版本安卓的配置要求 (个人测试到 12.0.0-latest 的tag可用更高版本映射白屏了自己测试哪个能用吧)</p><div class="warning custom-block"><p class="custom-block-title">WARNING</p><p>内存开点swap免得机器炸了</p></div><p><strong>开设虚拟内存(SWAP)</strong></p><p>单位换算:输入 1024 产生 1G SWAP-虚拟内存虚拟内存占用硬盘空间当实际内存不够用时将自动使用虚拟内存做内存使用但随之带来IO高占用以及CPU性能占用</p><p>建议只开实际内存大小两倍大小的虚拟内存</p><p>国际</p><div class="language-shell"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#FFCB6B;">curl</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-L</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">https://raw.githubusercontent.com/spiritLHLS/addswap/main/addswap.sh</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-o</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">addswap.sh</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">&amp;&amp;</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">chmod</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">+x</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">addswap.sh</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">&amp;&amp;</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">bash</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">addswap.sh</span></span></code></pre></div><p>国内</p><div class="language-shell"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#FFCB6B;">curl</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-L</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">https://ghproxy.com/https://raw.githubusercontent.com/spiritLHLS/addswap/main/addswap.sh</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-o</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">addswap.sh</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">&amp;&amp;</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">chmod</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">+x</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">addswap.sh</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">&amp;&amp;</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">bash</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">addswap.sh</span></span></code></pre></div><p><strong>开设</strong></p><p>国际</p><div class="language-shell"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#FFCB6B;">curl</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-L</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">https://raw.githubusercontent.com/spiritLHLS/docker/main/scripts/create_android.sh</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-o</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">create_android.sh</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">&amp;&amp;</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">chmod</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">+x</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">create_android.sh</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">&amp;&amp;</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">bash</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">create_android.sh</span></span></code></pre></div><p>国内</p><div class="language-shell"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#FFCB6B;">curl</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-L</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">https://ghproxy.com/https://raw.githubusercontent.com/spiritLHLS/docker/main/scripts/create_android.sh</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-o</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">create_android.sh</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">&amp;&amp;</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">chmod</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">+x</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">create_android.sh</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">&amp;&amp;</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">bash</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">create_android.sh</span></span></code></pre></div><p>命令执行后按照提示输入即可,注意选择版本输入的是序号,对应选项的数字序号,安装完毕后打开<code>本机IPV4+80端口</code>可登录</p><p>如果需要查询生成的安卓信息和web登录信息执行<code>cat /root/android_info</code>可查询信息</p><p>默认的用户名 <code>onea</code></p><p>默认密码 <code>oneclick</code></p><p>远程的桌面点击<code>H264 Converter</code>跳转就是了</p><p><strong>暂时只支持生成一个安卓容器,勿要重复生成,如需替换版本请执行后续命令删除后再次开设</strong></p><p><strong>删除</strong></p><ul><li>删除容器</li><li>删除容器对应镜像</li><li>删除配置文件</li></ul><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">docker rm -f android</span></span>
<span class="line"><span style="color:#A6ACCD;">docker rm -f scrcpy_web</span></span>
<span class="line"><span style="color:#A6ACCD;">docker rmi $(docker images | grep &quot;redroid&quot; | awk &#39;{print $3}&#39;)</span></span>
<span class="line"><span style="color:#A6ACCD;">rm -rf /etc/nginx/sites-enabled/reverse-proxy</span></span>
<span class="line"><span style="color:#A6ACCD;">rm -rf /etc/nginx/sites-available/reverse-proxy</span></span>
<span class="line"><span style="color:#A6ACCD;">rm -rf /etc/nginx/passwd_scrcpy_web</span></span>
<span class="line"><span style="color:#A6ACCD;">rm -rf /root/android_info</span></span></code></pre></div><h2 id="一键开设windows系统的容器" tabindex="-1">一键开设windows系统的容器 <a class="header-anchor" href="#一键开设windows系统的容器" aria-label="Permalink to &quot;一键开设windows系统的容器&quot;"></a></h2><ul><li>共享宿主机所有资源基于docker所以只占用系统的大小适合多开</li><li>共享IP做了docker的NAT映射可选择是否映射到外网或仅内网</li><li>设置的win系统默认最多占用为1核2G内存50G硬盘实际占用看使用情况</li><li>无需iptables进行NAT映射删除容器时自动删除了端口的映射方便维护</li></ul><p><strong>宿主机需要支持嵌套虚拟化且暂时只支持X86_64架构的系统手头没ARM机器编译对应的镜像</strong></p><p>执行</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">egrep -c &#39;(vmx|svm)&#39; /proc/cpuinfo</span></span></code></pre></div><p>结果需要大于或等于1不能为0</p><p><strong>宿主机的配置至少要有1核2G内存50G硬盘因为image大小为20G左右开设的windows容器是1核2G内存20G硬盘你还要留一些空间给宿主机系统保守点50G才够</strong></p><p>然后需要先设置docker切换使用v1版cgroup启动</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">sed -i &#39;s/GRUB_CMDLINE_LINUX=&quot;\\(.*\\)&quot;/GRUB_CMDLINE_LINUX=&quot;\\1 systemd.unified_cgroup_hierarchy=0&quot;/&#39; /etc/default/grub</span></span>
<span class="line"><span style="color:#A6ACCD;">update-grub</span></span>
<span class="line"><span style="color:#A6ACCD;">ls</span></span></code></pre></div><p>如果执行都无报错,执行<code>reboot</code>重启系统以使得设置生效</p><p><strong>支持的镜像</strong></p><p>使用的自建的镜像:<a href="https://hub.docker.com/r/spiritlhl/wds" target="_blank" rel="noreferrer">https://hub.docker.com/r/spiritlhl/wds</a></p><p><strong>下载脚本</strong></p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">curl -L https://raw.githubusercontent.com/spiritLHLS/docker/main/scripts/onewindows.sh -o onewindows.sh &amp;&amp; chmod +x onewindows.sh</span></span></code></pre></div><p><strong>使用方法</strong></p><p>开设前务必在screen窗口中执行避免SSH长期链接造成掉线卡死</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">./onewindows.sh 系统版本 RDP的端口 是否为外网映射(默认是N)</span></span></code></pre></div><p>比如开设占用最低的 Windows 2019 容器映射外网端口13389设置为外网映射</p><div class="language-"><button title="Copy Code" class="copy"></button><span class="lang"></span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#A6ACCD;">./onewindows.sh 2019 13389 Y</span></span></code></pre></div><p>开设后默认的用户名是<code>Administrator</code>和<code>vagrant</code></p><p>默认的密码是<code>vagrant</code></p><p>如果你选择开设映射的外网端口,务必登录后修改对应账户的密码(两个账户都可能有,自行尝试),否则可能被人爆破</p><h2 id="一键安装guacamole" tabindex="-1">一键安装guacamole <a class="header-anchor" href="#一键安装guacamole" aria-label="Permalink to &quot;一键安装guacamole&quot;"></a></h2><p>一个网页端连接SSH或RDP等协议控制服务器的玩意</p><p>网址:<code>http://你的IPV4地址:80/guacamole</code></p><p>默认用户: <code>guacadmin</code></p><p>默认密码: <code>guacadmin</code></p><p>安装完毕登录后自行修改</p><p><strong>宿主机的配置至少要有1核2G内存10G硬盘否则开设可能会导致宿主机卡死</strong></p><p>国际</p><div class="language-shell"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#FFCB6B;">curl</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-L</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">https://raw.githubusercontent.com/spiritLHLS/docker/main/extra_scripts/guacamole.sh</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-o</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">guacamole.sh</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">&amp;&amp;</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">chmod</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">+x</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">guacamole.sh</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">&amp;&amp;</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">bash</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">guacamole.sh</span></span></code></pre></div><p>国内</p><div class="language-shell"><button title="Copy Code" class="copy"></button><span class="lang">shell</span><pre class="shiki material-theme-palenight"><code><span class="line"><span style="color:#FFCB6B;">curl</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-L</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">https://ghproxy.com/https://raw.githubusercontent.com/spiritLHLS/docker/main/extra_scripts/guacamole.sh</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">-o</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">guacamole.sh</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">&amp;&amp;</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">chmod</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">+x</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">guacamole.sh</span><span style="color:#A6ACCD;"> </span><span style="color:#89DDFF;">&amp;&amp;</span><span style="color:#A6ACCD;"> </span><span style="color:#FFCB6B;">bash</span><span style="color:#A6ACCD;"> </span><span style="color:#C3E88D;">guacamole.sh</span></span></code></pre></div>`,61),e=[l];function t(c,r,i,C,d,y){return a(),p("div",null,e)}const h=s(n,[["render",t]]);export{D as __pageData,h as default};