腾讯云服务器即将到期,所以迁移一些东西,主要是leanote以及宝塔面板上面一些也不知道还用不用的网站服务

1.群晖docker上下载好镜像

1.1 群晖docker镜像下载加速

打开docker-注册表-设置-选择dockerhub编辑-启用注册表镜像,填入url:

https://mirror.ccs.tencentyun.com
mirror

1.2 提前下载好相关镜像

因为文件挺大的,下载要很长时间,所以我开始下载之后第二天才进行后续的步骤

下载镜像如下:

axboy/leanote:latest //2.6.1带数据库版leanote

pch18/baota:clear //宝塔面板lastest有5个多G,clear不默认安装nginx,mysql,php等程序

2.docker配置

2.1 leanote

2.1.1 leanote docker配置

选中axboy/leanote:latest镜像,点击启动

卷设置

名称随便配,点击高级设置,切换到卷标签,进行目录的一些映射,官方推荐映射以下内容

/data/db                # 内置mongodb的数据目录,nodb版无此目录
/data/leanote/conf      # 笔记的配置文件目录
/data/leanote/files     # 笔记内上传的图片、文件存放目录
/data/leanote/public/upload     # 头像上传路径

我是这样映射的

image-20210111155030511
端口配置

考虑不会有其他应用使用这个mongodb,所以端口删除27017,只保留9000的映射

image-20210112091044152

其他按需修改,也可以默认

最后应用

2.1.2 leanote 数据迁移

数据库迁移

浏览器用管理账号登录源站,在后台备份数据库,下载到本地

image-20210115094529792

下载好文件上传到群晖中

ssh登陆群晖,输入以下命令(/volume1/docker/newleanote/files/是我上传backup_leanote_1610674560.tar.gz到的群晖的目录)

# 将备份压缩包cp到容器中的/tmp 
sudo docker cp /volume1/docker/newleanote/files/backup_leanote_1610674560.tar.gz axboy-leanote-new:/tmp/

然后进入docker

sudo docker exec -it axboy-leanote-new bash
# 解压缩
mkdir /tmp/leanotedb
tar -zxvf /tmp/backup_leanote_1610674560.tar.gz -C /tmp/leanotedb/
# 恢复备份的数据库
mongorestore -h localhost -d leanote --dir /tmp/leanotedb/  --drop
image-20210115110422651

0 failed 数据库就导入成功了

数据迁移

备份源站leanote目录下的files目录,放到docker映射的群晖目录(/volume1/docker/newleanote/files/)即可

其他
  1. 登陆新站admin账户,在后台设置中重新设置对应的mongo命令地址
/usr/bin/mongodump
/usr/bin/mongorestore

​ 在新站备份一下数据库试试

  1. 登陆新站admin账户,在后台设置中修改相应的Site's URL以正确的展示图片

leanote 初始密码:admin/abc123

这个其实用不到,我只是记录一下

2.2 宝塔面板

2.2.1宝塔面板 docker配置

卷配置
/www/server/	# 面板文件
/www/backup/	# 备份目录
/www/wwwroot/	# 宝塔面板的网站根目录文件夹路径
/www/wwwlogs	# 站点日志

但是我们选的这个镜像只支持backup和wwwroot目录的映射

image-20210115145039965
端口配置

端口只映射管理端口8888好了

image-20210112090846685

其他按需修改,也可以默认

应用并启动

无法登陆问题

使用docker创建者提供的初始的用户名密码username/password登陆错误,通过以下方法解决

sudo docker exec -it 运行的容器ID bash
bt
5
输入新的密码

然后使用username/新密码登陆

2.2.2 宝塔面板数据迁移

以前使用过宝塔的一键迁移插件,体验非常好,本来以为这次应该很容易,结果遇到了两个问题

  1. 5版本到6版本宝塔进行了底层架构层面的修改,导致无法直接迁移,甚至能下载的迁移插件都是两个东西了
  2. 那么考虑同样使用5版本的docker镜像部署之后,迁移时报错
image-20210113092119777

​ 安全组里都是开启的,我考虑映射一下22端口到本机,但是总是提示占用,修改了群晖内置的ssh端口也依旧是占用

那么就决定先把迁出端的宝塔升级到7再试一下吧

然而杯具的是我的系统是centos6.5,不能升级到7版本o(≧口≦)o

最后放弃一键迁移的打算,采用了手动在新宝塔上添加网站,然后覆盖相关文件的方案,具体很简单不细说了