开始
首先你需要有一部闲置安卓手机(root)(基于linux内核)我的是 乐视x520
安装软件
linuxdeploy (一个运行在linux主线容器,linux发行版将运行在其中)
缺点:无法使用 service , systemctl 命令,但是有解决方案后面提到。
优点:简单 方便。
如果你需要使用GPU以及手机的全部性能(GPU神经网络训练需求)你可能需要参考postmarketos毕竟花钱买GPU服务器很贵。
图解
1.启动界面
2.点击上图界面右下角的设置按钮
- 镜像选择CentOS
- 架构选择aarch64 (大部分手机是arm架构的芯片)
- 版本选择7
- 镜像我用的阿里云的开源镜像
- 镜像大小建议5个G以上,因为后续需要安装各种服务软件,jenkins, nginx, jdk ,git ,以及各种监控,和 docker等
- 启用初始化勾选 (方便后续编写shell脚本,设置开机自启软件nginx , jenkins等)
- 选择run-parts
- 启用挂载android资源
- 挂载点 和 正常linux挂载磁盘原理一样,这样可以访问安卓上的磁盘资源
- 启用ssh连接(后续需要使用终端软件来连接服务器) 并且设置ssh登录密码
11 . 点击界面右上角三个点 呼出面板 --> 配置-等待界面命令执行完成(<<<deploy)–> 然后点击下方停止按钮,等待执行结束–>然后点击安装
等待系统拉取远程镜像安装程序完成–>启动容器,centos服务就启动了。
使用SSH终端连接服务器,我这里使用的是 Termius 来作为连接示例
连接成功后的显示上图内容即为安装成功
可以看到我这台设备上所运行的服务以及核心数,是8核心的
2. 查看当前运行的 tcp 服务
我这里因为是内网服务暂时关闭防火墙,下篇文章我将介绍如何使用内网穿透,让外网访问内网服务器,已及各种arm架构下服务运行环境的配置。
以下是我安装的一些软件
可以看到nginx 和 jenkins 以及一些监控正在运行,接下来我们 IP 访问一下试试看
先看看nginx是否运行正常
可以看到我写的 react-proxy 开源项目 已经正常运行
再来通过图表看看监控程序是否正常
接下来看看jenkins 是否运行正常
这里以打包react项目为例,可以看到是可以完成正常的打包流程的和发布任务的
总结(我为什么会选择用手机来搭建linux 环境)
我为什么会使用手机来完成linux服务器的搭建?
- 我买的轻量应用腾讯云服务器被封禁,还没用上就莫名其妙被封,恼火。
- 想学习服务器运维相关的知识,以及服务器的配置等相关知识。
- 利用内网穿透让闲置的手机成为低功耗智能家居中控系统,后续安装Homeassistant来实现,毕竟某东的树莓派已经1000多了,性能也没想象中的好
- 尝试过用手机安装postmarketos系统但是机型驱动少,没能成功安装
下一篇文章将介绍
- 如何在arm架构上安装jdk环境,来运行jenkins实现打包+上线流程。
- 如何源码编译nodeJS 在arm 架构上运行。
- 如何使用源码编译安装git-2.0以上的版本。
- 如何让容器支持 service , systemctl。
- 如何源码编译nginx 安装和使用Prometheus + Grafana 实现服务器的监控。
- 如何在容器中编写shell脚本来让程序开机启动程序。
- 如何使用内网穿透使外网来访问内网服务器。
- 解决webpack项目中 node-sass 开发依赖在arm 架构设备中无法使用的问题。