outline知识库是由google开发的一款多人协同文档软件,并提供了自建版本。我使用outline-docker-compose这个项目自己搭建了一个,已经稳定使用了一个多月。最近收到github release发来的邮件,提醒outline 0.74.0版本已经发布,而我还在使用0.72.3版本,就抽时间把outline升级了一下,也顺便做个记录。
首先在outline-docker-compose目录下make stop
停止当前容器,并备份整个outline-docker-compose文件夹。备份这一步是必不可少的,当你操作失误无法启动outline时,至少还有个备份让你恢复服务,不至于丢失数据。
然后检查一下新版本outline的要求,比如nodejs,postgresql是否需要更新。因为我是用docker安装的,nodejs版本已经在docker镜像中升级,经过检查我使用的postgresql版本也符合要求,无需migration。所以无需额外的前期工作。
最后编辑scripts/config.sh里面的OUTLINE_VERSION为想要升级到的Outline版本,如果要修改PostgreSQL版本,也可以修改POSTGRES_VERSION,然后重新make install即可,由于容器无状态,可以直接使用之前的数据。
make stop
vi scripts/config.sh
make install
由于使用了make install后,会执行初始化流程,创建好容器后会执行创建用户的脚本,由于我们已经有了管理员账户,因此要求我们输入用户名和密码的时候,我们直接使用Ctrl+C结束即可,过程可以参考下图。
[test@localhost outline-docker-compose]# make install
cd ./scripts && bash ./main.sh init_cfg
docker compose up -d
[+] Running 13/13
⠿ wk-outline Pulled 139.8s
⠿ df9b9388f04a Already exists 0.0s
⠿ 622e2b598d8a Already exists 0.0s
⠿ f7c8a32a53f2 Already exists 0.0s
⠿ 7da04ed7d1ef Already exists 0.0s
⠿ 99d20de9b067 Pull complete 2.4s
⠿ d9f9a5a50eb9 Pull complete 8.5s
⠿ fc49631fd2f7 Pull complete 8.6s
⠿ 693134add7ff Pull complete 8.7s
⠿ 19e3f90bf091 Pull complete 8.8s
⠿ 27e5d3cf711f Pull complete 90.4s
⠿ 7a066faad3fd Pull complete 90.5s
⠿ d5750fb517f5 Pull complete 90.9s
[+] Running 8/8
⠿ Network outline-docker-compose_outlinewiki Created 0.2s
⠿ Container outline-docker-compose-wk-postgres-1 Started 2.8s
⠿ Container outline-docker-compose-wk-minio-1 Started 2.3s
⠿ Container outline-docker-compose-wk-oidc-server-1 Started 2.9s
⠿ Container outline-docker-compose-wk-redis-1 Started 2.8s
⠿ Container outline-docker-compose-wk-createbuckets-1 Started 2.2s
⠿ Container outline-docker-compose-wk-outline-1 Started 2.2s
⠿ Container outline-docker-compose-wk-nginx-1 Started 3.2s
cd ./scripts && bash ./main.sh reload_nginx
2023/03/16 17:29:41 [notice] 25#25: signal process started
docker compose exec wk-oidc-server bash -c "make init"
python manage.py creatersakey
RSA key successfully created with kid: 555d657d19378da4a175bbc0e63cf324
python manage.py createsuperuser
Username: ^C
Operation cancelled.
make: *** [Makefile:11: init] Error 1
make: *** [install] Error 130
参考链接:幽夜草博客