关于源码运行改造
原容器内部docService是pkg打包的node可执行文件,现改造为源码运行。
.env文件来源
cat /etc/supervisor/conf.d/ds-docservice.conf | grep environment
使用dotenv加载环境变量
index.js为启动脚本入口文件
启动容器
docker run -d -p 80:80 -v /Users/yuwb/Documents/code/iflydocs/onlyoffice-unlimited/docsoffice-docker/server/Common:/var/www/onlyoffice/documentserver/server/Common -v /Users/yuwb/Documents/code/iflydocs/onlyoffice-unlimited/docsoffice-docker/server/DocService:/var/www/onlyoffice/documentserver/server/DocService -v /Users/yuwb/Documents/code/iflydocs/onlyoffice-unlimited/docsoffice-docker/server/FileConverter:/var/www/onlyoffice/documentserver/server/FileConverter/Converter docker.iflydocs.com/docsoffice:20221212
安装node环境
apt-get update
apt-get -y install npm
npm install -y -g n
n 14
node环境配置
apt-get install vim
vi ~/.bashrc
添加两行
export N_PREFIX=/usr/local/bin/node
export PATH=$N_PREFIX/bin:$PATH
source ~/.bashrc
安装vscode插件
- docker
- Dev Containers
打开vscode
点击左侧docker图标
attach对应的docker容器
code /var/www/onlyoffice/documentserver/server
打开代码对应的编辑器窗口
启动服务
停止原pkg可执行文件运行服务,启动源码
supervisorctl stop ds:docservice
supervisorctl stop ds:converter
cd /var/www/onlyoffice/documentserver/server/FileConverter/Common
npm install
cd /var/www/onlyoffice/documentserver/server/DocService
npm install
npm start
因为需要保留FileConverter下的bin目录,所有没有直接载到/var/www/onlyoffice/documentserver/server/FileConverter/目录下,而是下一级Converter。
cd /var/www/onlyoffice/documentserver/server/FileConverter/
拷贝文件到FileConverter目录下,否则目录无法正常加载。
cp -r /var/www/onlyoffice/documentserver/server/FileConverter/Converter/* /var/www/onlyoffice/documentserver/server/FileConverter/
注意.env文件是否拷贝成功.
npm install
npm start
网页打开分别执行提示脚本,然后新建,打开编辑页即可。