备份数据
查看容器列表,“NAMES”下即为容器名称。
docker ps
查找容器映射本地目录,备份数据。
docker inspect XXX #“XXX”是你的容器名称
Source所指即为映射到本地的目录。
将数据备份为.memos.backup
cp -r /root/.memos /root/.memos.backup
容器更新
拉取新版本镜像
docker pull neosmemo/memos:latest #最新版本,本篇以0.18.1为例,故拉取memos:0.18.1
创建容器
容器、目录名称请根据自身情况设置,注意镜像为上一步中拉取的镜像版本。
此处我并未删除旧版memos容器及文件,故文件及容器名称设置为“memos_0.18.1”,镜像为memos:0.18.1;若干净环境下新创建memos,可直接使用“memos”命名。
docker run -d --name memos_0.18.1 -p 5230:5230 -v ~/.memos_0.18.1/:/var/opt/memos neosmemo/memos:0.18.1
注意“:”左侧为映射至本地计算机上的数据目录,而 /var/opt/memos
则是Docker 中卷的目录,不应修改。
数据恢复
将先行备份的.memos.backup文件中memos_prod.db相关文件覆盖至~/.memos_0.18.1,完成数据替换。
此时,你应该能通过“服务器IP:5230"访问更新后且数据已恢复的memos应用了。此后,你可以自行决定是否删除旧版容器及旧版镜像。
若你为Docker初学者,更多注意事项及反向代理教程请参照:Trilium 知识库/笔记 | 服务端搭建 – 雾里