本文主要是介绍 wiz 为知笔记服务器 docker 从旧服务器迁移到新服务器的步骤以及问题排查。

旧服务器升级 wiz docker

目的:保持和新服务器拉取的镜像版本一致。

官方只留了 wiz docker 镜像最新版,拉取不了旧版本镜像,所以先升级旧服务器上的 wiz docker。

升级方法

docker stop wiz
docker rm wiz
docker pull wiznote/wizserver:latest
docker run --name wiz -it -d -v /home/ubuntu/wizdata:/wiz/storage -v /etc/localtime:/etc/localtime -p 9000:80 -p 9269:9269/udp wiznote/wizserver

注:第 4 行的挂载目录、绑定的端口请根据你自己的部署参数修改

迁移旧服务器挂载的 wiz 数据目录

我的目录是 /home/ubuntu/wizdata ,将 wizdata 目录想方法传到 新服务器,我是先用 7z 压缩目录然后通过 ftp 传到新服务器后再解压。

7z 相关命令

# Ubuntu/Debian 安装命令
sudo apt-get install p7zip-full
# 压缩整个目录
7z a wizdata.7z wizdata/*
# 测试压缩文件的完整性
7z t wizdata.7z
# 解压到指定目录
7z x wizdata.7z -o./wizdata

注:传到新服务器后一定要先测试压缩文件完整性,不然挂载后会出错

如果测试没有错误,会显示 Everything is Ok

目录权限设置

解压 wizdata 后,最好将目录权限设置成和旧服务器一致。

# 全部子目录及文件权限改为 777
chmod 777 * -R

新服务器部署 wiz docker

# 部署为知笔记服务器 Docker 镜像
docker run --name wiz -it -d -v /home/zoyo/wizdata:/wiz/storage -v /etc/localtime:/etc/localtime -p 3180:80 -p 39269:9269/udp wiznote/wizserver

注:挂载目录、绑定的端口请根据你自己的部署参数修改

官方指南:为知笔记服务器Docker镜像部署介绍

完美迁移

迁移问题排查指北

  • 检查新旧服务器 wiz docker 镜像版本是否一致

  • 检查迁移的 wizdata 目录是否数据损坏

  • 检查新旧服务器挂载的 wizdata 目录权限是否一致

  • 检查挂载的 wizdata 目录路径是否正确

    我这里就犯过低级错误,解压后 wizdata 目录路径为 /home/zoyo/wizdata/wizdata,而挂载的目录路径为 /home/zoyo/wizdata

  • 查看容器日志排查问题

    docker logs -f 7e455ab9c988

  • 进入容器查看 mysql 日志排查问题

    # 查看 wiz docker 镜像 ID
    sudo docker ps
    # 进入 wiz docker 终端
    sudo docker exec -it 3bceba9f92df bash
    # 查看 mysql 错误日志
    cat /var/lib/mysql/mysql_error.log

wiz 为知笔记服务器 docker 跨服务器迁移爬坑指北的更多相关文章

  1. Docker跨服务器通信Overlay解决方案(下) Consul集群

    承接上文 本文基于上篇文章,详细的场景说明与分析在前篇随笔中业已记录,有兴趣可以移步 Docker跨服务器通信Overlay解决方案(上) Consul单实例 本文主旨 本文为Docker使用Cons ...

  2. Docker跨服务器通信Overlay解决方案(上) Consul单实例

    场景 公司微服务快上线了,微服务都是用Docker容器进行部署的,在同一台主机下,把服务都部署上,注册到Nacos的IP与PORT都是内网的IP与Dockerfile中定义的端口号,看起来好像也没什么 ...

  3. 虚拟化学习笔记-KVM虚拟化跨机迁移原理

    参考:https://zhuanlan.zhihu.com/p/27055555 在线迁移过程划分为三个阶段:准备阶段.迁移阶段和切换阶段.迁移环境为虚拟化底层KVM+Qemu.虚拟化管理Libvir ...

  4. sqlserver 添加服务器链接 跨服务器访问数据库

    转载地址1:https://www.cnblogs.com/wanshutao/p/4137994.html //创建服务器链接 转载地址2:https://www.cnblogs.com/xulel ...

  5. docker运行jexus+mono爬坑记

    新的.net core都已经支持docker.手头有一些原来开发的asp.net旧项目,用的asp.net mvc开发的,跑在.net formwork 4.6上. 在docker的公共仓库searc ...

  6. Jersey实现跨服务器上传图片:UniformInterfaceException:403 Forbidden

    jersey.api.client.UniformInterfaceException :returned a response status of 403 Forbidden 图片服务器:端口808 ...

  7. 缓存一致性和跨服务器查询的数据异构解决方案canal

    当你的项目数据量上去了之后,通常会遇到两种情况,第一种情况应是最大可能的使用cache来对抗上层的高并发,第二种情况同样也是需要使用分库 分表对抗上层的高并发...逼逼逼起来容易,做起来并不那么乐观, ...

  8. 解决为知笔记docker镜像部署后登录连接mysql报错

    https://www.wiz.cn/zh-cn/docker 部署正常后登录一切正常,但开机重启后登录用户名时报错,是和非正常退出程序导致mysql sock锁,清除该锁文件后恢复正常. 1 C:\ ...

  9. ASP.NET、JAVA跨服务器远程上传文件(图片)的相关解决方案整合

    一.图片提交例: A端--提交图片 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { string u ...

  10. php 跨域、跨子域,跨服务器读取session

    1.跨子域和跨服务器解决方式 Session主要分两部分:   一个是Session数据,该数据默认情况下是存放在服务器的tmp文件下的,是以文件形式存在    另一个是标志着Session数据的Se ...

随机推荐

  1. 机器学习(三)——K最临近方法构建分类模型(matlab)

    K最临近(K-Nearest Neighbors,KNN)方法是一种简单且直观的分类和回归算法,主要用于分类任务.其基本原理是用到表决的方法,找到距离其最近的K个样本,然后通过K个样本的标签进行表决, ...

  2. 关于docker-compose up -d 出现超时情况处理

    由于要搭建一个ctf平台,用docker一键搭建是出现超时情况 用了很多办法,换源,等之类的一样没办法,似乎它就是只能用官方那个一样很怪. 只能用一种笨办法来处理了,一个个pull. 打个比如: 打开 ...

  3. ABP框架开发实例教程-生成框架代码

    ABP是"ASP.NET Boilerplate Project (ASP.NET样板项目)"的简称.ASP.NET Boilerplate是一个用最佳实践和流行技术开发现代WEB ...

  4. win10 gvim

    前言 现有的vscode太过于繁重,notepad++也不理想,顿来心思,想在win10配置一个gvim环境. 正文 安装gvim,从releases中找一个x64的.exe下载安装即可,安装完毕,把 ...

  5. 移动WEB开发之 -- flex布局

    flex布局原理 常见的父项属性 flex-direction设置主轴方向 justify-content 设置主轴上的子元素排列方式 flex-wrap属性 align-items属性 align- ...

  6. 阿里云Centos7 安装mysql5.7 报错:./mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

    在阿里云服务器Centos7中安装mysql5.7,解压数据库初始化后,报错 ./mysqld: error while loading shared libraries: libaio.so.1: ...

  7. 基于JQ使用原生js构造一个自动回复随机消息的机器人

    某些业务会使用到页面里存在一个机器人,类似于假客服一样,可以回复游客的问题. 那么如何自己写一个自动回复消息的机器人呢? 源码献上 /** * 基于jq的自动对话机器人 * @param {Objec ...

  8. [oeasy]python024_vim读取文件_从头复制到尾_撤销_重做_reg_寄存器

    Guido的简历 回忆上次内容 python 是Guido制作的语言 从Guido刚入职场 就开始的项目 python这个项目 一直跟随Guido   Guido 曾经在 cwi cnri beope ...

  9. oeasy 教您玩转linux 010303文件管理器 nautilus

    我们来回顾一下 上一部分我们都讲了什么? 讲了火狐 火狐的位置 用命令行打开多个网址 火狐的升级 火狐桌面建立快捷方式 我们可以知道桌面快捷方式文件的名称么? 从文件管理器到命令行 按住文件 拖动到t ...

  10. 强烈推荐:18.3k star,推荐一款简单易用的HTTP请求流量录制回放工具:Goreplay

    在软件开发和测试过程中,我们经常需要对应用程序的网络请求进行录制和回放,以便进行性能分析.压力测试或者模拟复杂的网络环境.今天,我要向大家推荐一款简单易用的 HTTP 请求流量录制回放工具:Gorep ...