✨ docker supports custom installation of pypi dependencies (#79)
✨ docker 支持自定义安装 pypi 依赖 (#79) * 有些插件额外需要一些未安装的依赖,支持用户自己定义`requirements2.txt`,创建容器时即自动安装好,这样更新镜像或重建容器不影响这些插件的使用。
This commit is contained in:
parent
69c6fa26ad
commit
c59566d458
3
.gitignore
vendored
3
.gitignore
vendored
@ -123,6 +123,9 @@ docker-compose.yml
|
|||||||
plugins/
|
plugins/
|
||||||
data/*
|
data/*
|
||||||
pagermaid.egg-info/
|
pagermaid.egg-info/
|
||||||
|
dump.rdb
|
||||||
|
keyword.list
|
||||||
|
requirements2.txt
|
||||||
|
|
||||||
# Spyder project settings
|
# Spyder project settings
|
||||||
.spyderproject
|
.spyderproject
|
||||||
|
@ -10,6 +10,6 @@ services:
|
|||||||
volumes:
|
volumes:
|
||||||
- ./:/pagermaid/workdir
|
- ./:/pagermaid/workdir
|
||||||
environment:
|
environment:
|
||||||
- RUN_AS_ROOT=true # 是否以root权限运行pagermaid,true为是
|
- RUN_AS_ROOT=true # 是否以root权限运行pagermaid,true为是,false为否
|
||||||
- PUID=917 # 当 RUN_AS_ROOT=false 才生效,即以普通用户权限运行pagermaid
|
- PUID=917 # 当 RUN_AS_ROOT=false时才生效,即以普通用户权限运行pagermaid,可以修改为你定义用户的UID
|
||||||
- PGID=917 # 当 RUN_AS_ROOT=false 才生效,即以普通用户权限运行pagermaid
|
- PGID=917 # 当 RUN_AS_ROOT=false时才生效,即以普通用户权限运行pagermaid,可以修改为你定义用户的GID
|
||||||
|
@ -5,4 +5,7 @@ git remote set-url origin https://github.com/Xtao-Labs/PagerMaid-Modify.git
|
|||||||
git pull
|
git pull
|
||||||
|
|
||||||
pip install -r requirements.txt
|
pip install -r requirements.txt
|
||||||
|
if [ -s requirements2.txt ]; then
|
||||||
|
pip install -r requirements2.txt
|
||||||
|
fi
|
||||||
exit 0
|
exit 0
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
perl -i -pe "{
|
perl -i -pe "{
|
||||||
s|^dir /var/lib/redis|dir /pagermaid/workdir|;
|
s|^dir /var/lib/redis|dir /pagermaid/workdir|;
|
||||||
s|^save \d+ 1|save 60 1|;
|
s|^save \d+ 1|save 60 1|;
|
||||||
}" /etc/redis/redis.conf
|
}" /etc/redis/redis.conf
|
||||||
|
|
||||||
cd /pagermaid/workdir
|
cd /pagermaid/workdir
|
||||||
redis-server /etc/redis/redis.conf
|
redis-server /etc/redis/redis.conf
|
@ -1,13 +1,23 @@
|
|||||||
## 一、一键脚本
|
## 特点
|
||||||
|
|
||||||
|
- 容器在启动或重启时,将自动更新脚本并安装pip依赖。
|
||||||
|
|
||||||
|
- 包括redis缓存数据和插件在内,全部数据支持数据持久化,更新镜像或重建容器数据不丢失。
|
||||||
|
|
||||||
|
- 有些插件额外需要一些未安装的依赖,支持用户自己定义`requirements2.txt`,创建容器时即自动安装好,这样更新镜像或重建容器不影响这些插件的使用。
|
||||||
|
|
||||||
|
- 由用户自己选择以root权限还是以普通用户权限来运行pagermaid,以普通用户权限运行时更安全,但需要用户具有解决权限问题的能力。
|
||||||
|
|
||||||
|
## 一键脚本安装
|
||||||
|
|
||||||
```
|
```
|
||||||
wget https://raw.githubusercontent.com/Xtao-Labs/PagerMaid-Modify/master/utils/docker.sh
|
wget https://raw.githubusercontent.com/Xtao-Labs/PagerMaid-Modify/master/utils/docker.sh
|
||||||
bash docker.sh
|
bash docker.sh
|
||||||
```
|
```
|
||||||
|
|
||||||
*注:一键脚本安装的Docker将以root权限运行,在使用pagermaid时最方便。*
|
*注:一键脚本安装的Docker将以root权限运行,在使用pagermaid时最方便。如需要自定义,请使用docker-compose安装。*
|
||||||
|
|
||||||
## docker-compose 安装
|
## docker-compose安装
|
||||||
|
|
||||||
1. 准备脚本
|
1. 准备脚本
|
||||||
|
|
||||||
@ -22,7 +32,9 @@ cp docker-compose.gen.yml docker-compose.yml
|
|||||||
|
|
||||||
3. 如果会配置,就自己编辑刚刚复制的`config.yml`。如果不会就直接下一步。
|
3. 如果会配置,就自己编辑刚刚复制的`config.yml`。如果不会就直接下一步。
|
||||||
|
|
||||||
4. 启动容器`docker-compose up -d`。
|
4. 有些插件还额外需要安装依赖包,这些依赖包初始状态是没有安装的,例如`neteasemusic`插件的依赖`eyed3` `pycryptodome`,`coin`插件的依赖`python-binance` `xmltodict`等等,你如果需要用到这些插件,并且希望容器自动将依赖安装好,可以将依赖列在当前目录下的`requirements2.txt`中(没有这个文件,需要你自己建立)。容器将在启动时自动安装这些依赖。有此`requirements2.txt`文件以后,重新部署容器或者更新镜像,都将自动安装这些依赖,不再需要重复地手动安装。
|
||||||
|
|
||||||
5. 如第3步未配置`config.yml`,则运行`docker exec -it <容器名> bash utils/docker-config.sh`进行配置。
|
5. 启动容器`docker-compose up -d`。
|
||||||
|
|
||||||
|
6. 如第3步未配置`config.yml`,则运行`docker exec -it <容器名> bash utils/docker-config.sh`进行配置。
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user