安卓本地搭建说明.md 7.8 KB
Newer Older
H
hjdhnx 已提交
1 2 3
#### 基于 ZeroTermux 搭建
###### qq官群1:714730084
###### qq官群3:878847174
H
hjdhnx 已提交
4
##### [加群链接生成器](https://qun.qq.com/join.html)
H
hjdhnx 已提交
5
##### [git图标生成器](https://github.com/badges/shields)
H
hjdhnx 已提交
6
#### 教程开始
H
hjdhnx 已提交
7 8 9 10 11
###### 特殊-termux直装(由于termux的Python最低版本是3.10,会导致此项目无法获取首页推荐,但是其他性能方面非常牛叉)
```shell
apt install libxml2 libxslt -y
apt install python3
```
H
hjdhnx 已提交
12

H
md  
hjdhnx 已提交
13 14
##### 特殊-docker直装(支持amd64/armv7/arm64)
##### 不知道自己架构的通过arch命令查看
H
hjdhnx 已提交
15
###### 可以通过点此下载获得最小必要文件压缩包
H
hjdhnx 已提交
16
[蓝奏云下载](https://wwi.lanzoup.com/igPCG0dlqouf)
H
md  
hjdhnx 已提交
17

H
md  
hjdhnx 已提交
18 19 20 21 22
##### 三架构自动识别(测试功能)
```shell
docker run -it -p 5705:5705 -p 9001:9001 --restart=always --name drpy -d hjdhnx/drpy
```

H
md  
hjdhnx 已提交
23 24
##### amd64/x86架构(主流设备)
```shell
H
hjdhnx 已提交
25
docker run -it -p 5705:5705 -p 9001:9001 --restart=always --name drpy -d hjdhnx/drpy:amd64-v3.9.0
H
md  
hjdhnx 已提交
26 27 28
```
##### armv7架构(树莓派,机顶盒,软路由等)
```shell
H
hjdhnx 已提交
29
docker run -it -p 5705:5705 -p 9001:9001 --restart=always --name drpy -d hjdhnx/drpy:armv7-v3.9.0
H
md  
hjdhnx 已提交
30 31 32
```
##### arm64架构(部分服务器)
```shell
H
hjdhnx 已提交
33
docker run -it -p 5705:5705 -p 9001:9001 --restart=always --name drpy -d hjdhnx/drpy:arm64-v3.9.0
H
md  
hjdhnx 已提交
34
```
35 36 37 38 39 40 41
#### 补充说明(2022/10/19)
由于3.9版本以上镜像引入了quickjs库,这个库官方编译版在armv7上无法正常运行  
armv7架构的朋友需要在项目根目录执行以下两条命令然后重启9001服务  
```shell
pip3 uninstall quickjs
pip3 install ./whl/quickjs-1.19.2-cp37-cp37m-linux_armv7l.whl
```
H
md  
hjdhnx 已提交
42 43 44 45 46 47

##### 上面代码如果成功了下面都可以忽略
#### 端口映射参数,三种架构通用
```shell
-v /home/pywork/dr_py:/root/sd/pywork/dr_py
```
H
hjdhnx 已提交
48
```shell
49
# 运行容器-小白只需要这一条命令(存在问题是不能在远程面板上正确获取配置地址和进程管理地址,但自己知道地址就不影响使用,可进入容器自行修改config)
H
hjdhnx 已提交
50
docker run -it -p 5705:5705 -p 9001:9001 --restart=always --name drpy -d hjdhnx/drpy:amd64-v3.9.0
51
# 稍微懂一点可以运行下面的操作
H
hjdhnx 已提交
52
先把本项目拷贝到 /home/pywork/dr_py 
H
hjdhnx 已提交
53
docker run -it -p 5705:5705 -p 9001:9001 -v /home/pywork/dr_py:/root/sd/pywork/dr_py --restart=always --name drpy -d hjdhnx/drpy:amd64-v3.9.0
H
hjdhnx 已提交
54
# 进入容器然后修改config.py文件改配置里面自己的远程地址等信息,改完退出容器再重启容器(或者通过进程管理9001端口在线重启flask服务)
55
docker exec -it drpy bash
H
md  
hjdhnx 已提交
56
vi ./base/config.py
H
hjdhnx 已提交
57 58 59 60 61 62 63

如果不提供外部地址,请把这个设置为True,否则视频播放不正常
PLAY_DISABLE = True  # 全局禁用播放解析
如果提供了外部播放地址必改这三个:
PLAY_DISABLE = False  # 全局禁用播放解析
LAZYPARSE_MODE = 2  # 播放解析模式(0 本地 1 局域网 2远程 仅在全局禁用为False的时候生效)
PLAY_URL = 'http://你的主页服务地址' # 匹配远程解析服务器链接 远程接口主页地址,后面不能有/
H
hjdhnx 已提交
64
:wq
65
# docker run -it -p 5705:5705 -p 9001:9001 --name drpy drpy /bin/bash
H
hjdhnx 已提交
66
```
H
hjdhnx 已提交
67
#### termux容器ubutnu1804内安装(此方法请无视上方代码)
H
hjdhnx 已提交
68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119
1. 准备工作-termux通过tome搭建完整的ubuntu1804系统(基于proot容器技术)
ZeroTermux左侧边栏按住手指右滑出现操作面板  
点击面板的切换源-北京源并确定,之后出现的任何提示都回车或者y确定    
再次进入面板,手指上拉滑到侧边栏下方的MOE全能并点击,之后各种一路回车或者确定  
然后跟着提示一步步安装proot-ubutun1804系统并不需要gui界面  
完毕后输入debian进入系统后才进行如下操作进行搭建项目(exit命令可以退出Ubuntu1804并回到termux)  
2. ubuntu1804换源及python换源和依赖安装
手机浏览器访问: [https://mirrors.bfsu.edu.cn/help/ubuntu-ports/](https://mirrors.bfsu.edu.cn/help/ubuntu-ports/)  
选择ubuntu版本为1804,并复制其中的源地址,或者用下面的源代码也行  
```shell
# 默认注释了源码镜像以提高 apt update 速度,如有需要可自行取消注释
deb https://mirrors.bfsu.edu.cn/ubuntu-ports/ bionic main restricted universe multiverse
# deb-src https://mirrors.bfsu.edu.cn/ubuntu-ports/ bionic main restricted universe multiverse
deb https://mirrors.bfsu.edu.cn/ubuntu-ports/ bionic-updates main restricted universe multiverse
# deb-src https://mirrors.bfsu.edu.cn/ubuntu-ports/ bionic-updates main restricted universe multiverse
deb https://mirrors.bfsu.edu.cn/ubuntu-ports/ bionic-backports main restricted universe multiverse
# deb-src https://mirrors.bfsu.edu.cn/ubuntu-ports/ bionic-backports main restricted universe multiverse
deb https://mirrors.bfsu.edu.cn/ubuntu-ports/ bionic-security main restricted universe multiverse
# deb-src https://mirrors.bfsu.edu.cn/ubuntu-ports/ bionic-security main restricted universe multiverse

# 预发布软件源,不建议启用
# deb https://mirrors.bfsu.edu.cn/ubuntu-ports/ bionic-proposed main restricted universe multiverse
# deb-src https://mirrors.bfsu.edu.cn/ubuntu-ports/ bionic-proposed main restricted universe multiverse
```
然后换源可能需要用到下面的命令:
```shell
vi /etc/apt/sources.list # 编辑源列表
dd # 在非输入模式下,vim中输入dd可以删除整行
i # 进入vim的编辑插入模式,记得复制粘贴源进入
:wq # 保存
apt update # 更新软件包列表
apt upgrade # 升级本地软件包
```
 换源完毕后进行安装项目需要的相关环境
```shell
apt install net-tools  # ifconfig查Ip命令需要
apt install python3-pip # python3依赖管理器,装依赖需要
pip3 install -i https://mirrors.cloud.tencent.com/pypi/simple --upgrade pip # 用腾讯源临时升级pip
pip config set global.index-url https://mirrors.cloud.tencent.com/pypi/simple # python换腾讯源

```
然后把dr_py项目搞到内存卡以下目录:  
/storage/emulated/0/Download/pywork/dr_py  
cd 到该目录进行安装依赖:  
```shell
cd /sd/pywork/dr_py
pip3 install -r requirements.txt
```
3. 运行dr_py项目
两种方法,一条命令对应一种
```shell
python3 app.py # 需要shell上运行调试,并且也可以 nohup python3 app.py &
H
md  
hjdhnx 已提交
120 121
. ./app.sh 0
#. <(cat app.sh) # 用于生产环境正式运行,更加强大的进程启动和在线日志
H
hjdhnx 已提交
122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144
```
4. termux配置启动命令
如果在debian里面记得先 exit回到termux里
```shell
apt install openssh vim -y
vi ~/.bashrc

echo "用户:"$(whoami)

if pgrep -x "sshd" >/dev/null
  then
    echo "sshd运行中..."
  else
    sshd
    echo "自动启动sshd"
fi
:wq
echo "debian" >> ~/.bashrc
```
这套命令配置完了下次打开termux会自动进入debian虚拟机(ubuntu1804)

5. 启动成功访问查看
[本地地址](http://localhost:5705)
H
hjdhnx 已提交
145 146
[进程管理地址](http://localhost:9001)  
```shell
147 148
开发者构建指南:
#apt-get install language-pack-zh-hans
H
hjdhnx 已提交
149 150
cat /etc/issue
locale -a
151 152 153 154 155

# 构建容器-给开发者用的,小白不需要
# docker build -f dockerfile -t hjdhnx/drpy .
# docker build -f dockerfile -t hjdhnx/drpy:mini .
# docker buildx build --platform arm64 -f dockerfile -t hjdhnx/drpy:mini_arm64 --push .
H
hjdhnx 已提交
156
# docker push hjdhnx/drpy
H
hjdhnx 已提交
157 158 159 160 161 162 163 164 165
# 教程 https://www.cnblogs.com/wuyoucao/p/16461988.html
# https://blog.csdn.net/u014110320/article/details/124406628
mkdir -p ~/.docker/cli-plugins
mv buildx-v0.8.2.linux-xxx ~/.docker/cli-plugins/docker-buildx
chmod +x ~/.docker/cli-plugins/docker-buildx
systemctl daemon-reload
systemctl restart docker
docker buildx version
docker buildx ls
H
md  
hjdhnx 已提交
166
vi /etc/docker/daemon.json
H
hjdhnx 已提交
167 168
"experimental": true
# 教程 https://blog.csdn.net/u012586326/article/details/125589644
169 170 171 172 173 174 175
# DOCKER_BUILDKIT=1
# 创建builder
# docker buildx create --use --name mybuilder
# docker buildx use mybuilder

# build镜像
# docker buildx build --platform linux/amd64,linux/arm64 --push -f dockerfile -t hjdhnx/drpy:mini_arm64 .
H
hjdhnx 已提交
176
# docker buildx build --platform linux/amd64,linux/arm64,linux/arm/v7 -f dockerfile -t hjdhnx/drpy:mini_arm64 .
177 178

# arch 看架构
H
hjdhnx 已提交
179
```
H
hjdhnx 已提交
180