以下是使用 Docker 部署 ShowDoc 的详细教程,适用于Linux系统(如Ubuntu):
🚀 部署前准备(已安装请跳过)
安装 Docker 和 Docker Compose:
sudo apt update
sudo apt install docker.io docker-compose -y
创建项目目录:
mkdir showdoc && cd showdoc
1. Docker-Compose
创建并编辑文件:
docker-compose.yml
粘贴以下内容:
version: '3.8'
services:
showdoc:
image: star7th/showdoc:latest
container_name: show
ports:
- "8080:80"
volumes:
- ./data/html:/var/www/html/
: always
🔐 根据以上命令操作的话,往后showdoc的数据都会存放在 /showdoc_data/html 目录下。
你可以打开 http://localhost:8080 来访问showdoc (localhost可改为你的服务器域名或者IP)。账户密码是showdoc/123456,登录后你便可以看到右上方的管理后台入口。建议登录后修改密码。
2.Docker
docker run -d
--name showdoc
--restart=always
-p 8080:80
-v /data/html:/var/www/html/
star7th/showdoc
3. 启动服务
docker-compose up -d
等待30秒后,浏览器访问:
http://你的服务器IP:8080
更新
# 从原版官方库更新镜像(中国大陆用户不建议直接使用原版镜像,可以用后面的加速镜像)
# 如果你是ARM版本的docker镜像,请将 latest 标签改为 arm-latest。如果失败,可尝试根据自身设备架构,加入--platform参数
docker pull star7th/showdoc:latest
# 中国大陆镜像更新命令(更新后记得执行docker tag命令以进行重命名)
# docker pull registry.cn-shenzhen.aliyuncs.com/star7th/showdoc
# docker tag registry.cn-shenzhen.aliyuncs.com/star7th/showdoc:latest star7th/showdoc:latest
## 后续命令无论使用官方镜像还是加速镜像都需要执行
rm -rf /data/html_bak
#备份。如果可以的话,命令中的html_bak还可以加上日期后缀,以便保留不同日期的多个备份
mv /data/html /data/html_bak
# 新建准备存放新版代码的目录
mkdir -p /data/html
chmod -R 777 /data/html
# 删除旧容器
docker stop showdoc && docker rm showdoc
# 启动showdoc容器
docker run -d --name showdoc --restart=always -p 8080:80 -v /data/html:/var/www/html/ star7th/showdoc
# 执行新代码安装。默认安装中文版。如果想安装英文版,将下面参数中的zh改为en
curl http://localhost:8080/install/non_interactive.php?lang=zh
# 转移旧数据库
\cp -f /data/html_bak/Sqlite/showdoc.db.php /data/html/Sqlite/showdoc.db.php
# 转移旧附件数据
\cp -r -f /data/html_bak/Public/Uploads/. /data/html/Public/Uploads
# 重新给权限
chmod -R 777 /data/html
# 如果中途出错,请重命名原来的/data/html_bak文件为/data/html ,然后重启容器便可恢复。
修改主页跳转
下面我们来修改一点源代码,首先从软件根目录依次打开以下路径:
/server/Application/Home/Controller/
在此目录下打开“IndexController.class.php”文件,
# header("location:./web/#/");
# 修改为:公开项目界面
header("location:./web/#/public-square/index");