-
Notifications
You must be signed in to change notification settings - Fork 5.2k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #272 from NZESupB/master
增加部署脚本
- Loading branch information
Showing
4 changed files
with
215 additions
and
11 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,54 @@ | ||
version: '3.1' | ||
services: | ||
# reader 在线阅读 | ||
# 公开服务器(服务器位于日本):[https://reader.nxnow.top](https://reader.nxnow.top) 测试账号/密码分别为guest/guest123,也可自行创建账号添加书源,不定期删除长期未登录账号(2周) | ||
# 阅读官方书源 : [https://legado.pages.dev](https://legado.pages.dev) 或者 [http://legado.git.llc](https://legado.pages.dev) 点击打开连接,添加远程书源即可 | ||
# 公众号汇总 : [https://mp.weixin.qq.com/s/5t8nfSnRfHjJNAvT76fA_A](https://mp.weixin.qq.com/s/5t8nfSnRfHjJNAvT76fA_A) | ||
# 手动更新方式 : 在此文件所在的目录下执行 docker-compose pull && docker-compose up -d | ||
# Debian 10+/Ubuntu18+ 一键安装命令 浏览器打开ip:4396即可,国内服务器需手动放行映射端口(默认为4396 | ||
# cd /home && wget https://raw.nxnow.top/NZESupB/Profile/main/dockercompose/reader/docker-compose.yml && apt update && apt install docker-compose -y && docker-compose up -d | ||
# CentOS7+ 一键安装命令 (未测试) | ||
# cd /home && wget https://raw.nxnow.top/NZESupB/Profile/main/dockercompose/reader/docker-compose.yml && yum update && yum install docker && curl -L "https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose && docker-compose up -d | ||
reader: | ||
#image: hectorqin/reader # 普通镜像 | ||
image: hectorqin/reader:openj9-latest # Openj9镜像,arm64架构或小内存机器优先使用 | ||
container_name: reader #容器名 可自行修改 | ||
restart: always | ||
ports: | ||
- 4396:8080 #4396端口映射可自行修改,8080请勿修改 | ||
volumes: | ||
- /home/reader/logs:/logs #log映射目录 /home/reader/logs 映射目录可自行修改 | ||
- /home/reader/storage:/storage #数据映射目录 /home/reader/storage 映射目录可自行修改 | ||
environment: | ||
- SPRING_PROFILES_ACTIVE=prod | ||
#- READER_APP_USERLIMIT=50 #用户上限,默认且最大值为50 | ||
- READER_APP_USERBOOKLIMIT=200 #用户书籍上限,默认200 | ||
- READER_APP_CACHECHAPTERCONTENT=true #开启缓存章节内容 | ||
- READER_APP_REMOTEWEBVIEWAPI=http://readerwebview:8050 #启用webview(若下方readerwebview容器不开启需注释此行 | ||
# ↓多用户模式配置↓ | ||
- READER_APP_SECURE=true #开启登录鉴权,开启后将支持多用户模式 | ||
- READER_APP_SECUREKEY=adminpwd #管理员密码 建议修改 | ||
- READER_APP_INVITECODE=registercode #注册邀请码 建议修改,如不需要可注释或删除 | ||
# 如需支持webview书源,打开(占用较大,不需要可加 # 注释) | ||
readerwebview: | ||
image: hectorqin/remote-webview | ||
container_name: readerwebview | ||
restart: always | ||
environment: | ||
- TZ=Asia/Shanghai | ||
# 自动更新docker镜像 | ||
watchtower: | ||
image: containrrr/watchtower | ||
container_name: watchtower | ||
restart: always | ||
environment: | ||
- TZ=Asia/Shanghai | ||
volumes: | ||
- /var/run/docker.sock:/var/run/docker.sock | ||
command: reader readerwebview watchtower --cleanup --schedule "0 0 4 * * *" | ||
# 仅更新reader与watchtower容器,如需其他自行添加 '容器名' ,如:reader watchtower nginx | ||
# --cleanup 更新后清理旧版本镜像 | ||
# --schedule 自动检测更新 crontab定时(限定6位crontab) 此处代表凌晨4点整 | ||
volumes: | ||
reader: | ||
readerwebview: |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,128 @@ | ||
#!/bin/bash | ||
|
||
red='\033[0;31m' | ||
green="\033[32m" | ||
yellow='\033[0;33m' | ||
plain='\033[0m' | ||
|
||
file_dir="" | ||
remotePort="" | ||
|
||
# CheckRoot | ||
if [[ $EUID -ne 0 ]]; then | ||
echo "请使用root用户登录!" 1>&2 | ||
exit 1 | ||
fi | ||
|
||
# CheckSystem | ||
if [[ -f /etc/redhat-release ]]; then | ||
release="centos" | ||
elif cat /etc/issue | grep -q -E -i "debian"; then | ||
release="debian" | ||
elif cat /etc/issue | grep -q -E -i "ubuntu"; then | ||
release="ubuntu" | ||
elif cat /etc/issue | grep -q -E -i "centos|red hat|redhat"; then | ||
release="centos" | ||
elif cat /proc/version | grep -q -E -i "debian"; then | ||
release="debian" | ||
elif cat /proc/version | grep -q -E -i "ubuntu"; then | ||
release="ubuntu" | ||
elif cat /proc/version | grep -q -E -i "centos|red hat|redhat"; then | ||
release="centos" | ||
fi | ||
bit=$(uname -m) | ||
if test "$bit" != "x86_64"; then | ||
bit="arm64" | ||
else bit="amd64" | ||
fi | ||
|
||
os_version="" | ||
|
||
# os version | ||
if [[ -f /etc/os-release ]]; then | ||
os_version=$(awk -F'[= ."]' '/VERSION_ID/{print $3}' /etc/os-release) | ||
fi | ||
if [[ -z "$os_version" && -f /etc/lsb-release ]]; then | ||
os_version=$(awk -F'[= ."]+' '/DISTRIB_RELEASE/{print $2}' /etc/lsb-release) | ||
fi | ||
|
||
if [[ x"${release}" == x"centos" ]]; then | ||
if [[ ${os_version} -le 6 ]]; then | ||
echo -e "${red}请使用 CentOS 7 或更高版本的系统!${plain}\n" && exit 1 | ||
fi | ||
elif [[ x"${release}" == x"ubuntu" ]]; then | ||
if [[ ${os_version} -lt 16 ]]; then | ||
echo -e "${red}请使用 Ubuntu 16 或更高版本的系统!${plain}\n" && exit 1 | ||
fi | ||
elif [[ x"${release}" == x"debian" ]]; then | ||
if [[ ${os_version} -lt 9 ]]; then | ||
echo -e "${red}请使用 Debian 9 或更高版本的系统!${plain}\n" && exit 1 | ||
fi | ||
fi | ||
|
||
install_dockercompose() { | ||
if [[ x"${release}" == x"centos" ]]; then | ||
yum update && yum install wget curl docker -y | ||
curl -L "https://ghproxy.com/https://github.com/docker/compose/releases/latest/download/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose && chmod +x /usr/local/bin/docker-compose | ||
else | ||
apt update && apt install wget curl docker-compose -y | ||
fi | ||
} | ||
|
||
install_reader() { | ||
mkdir ${orgin_file_dir} | ||
cd ${orgin_file_dir} | ||
rm docker-compose* | ||
wget https://ghproxy.com/https://raw.githubusercontent.com/hectorqin/reader/master/docker-compose.yml | ||
sed -i "s/\/home\/reader/${file_dir}/" docker-compose.yml | ||
sed -i "s/4396/${remotePort}/" docker-compose.yml | ||
# 多用户 | ||
# 远程webview | ||
docker-compose up -d | ||
} | ||
|
||
getRemotePort () { | ||
echo "请输入部署端口,例如 4396" | ||
read -p "不填默认为4396: " remotePort | ||