docker mysql 迁移_docker bookstack 迁移

bookstack 迁移

第一步:# docker ps |grep bookstack 查找bookstack启动的容器

ad82dab5cc323aa9a0d38ef42d08c7f2.png

第二步:打标签构建镜像

docker commit docker-bookstack_mysql_1 docker.io/mysql #相互依赖的数据库容器镜像

docker commit docker-bookstack_bookstack_1 bookstack #bookstack镜像

第三步,保存镜像

docker save docker.io/mysql >/tmp/docker.io/mysql.tar #保存mysql镜像

docker save bookstack >/tmp/bookstack.tar #保存bookstack

第四步,查找volume目录

A. 通过docker volume ls |grep book* 命令查找卷标

bc08e0e57409c10d1a1e7856908448e9.png

B. 通过 docker inspect docker-bookstack_mysql_1 命令进入容器挂载volume位置。

c33c4c40d282f882f7bc23bb3a2fb3f0.png

进入cd /var/lib/docker/volumes/ 目录中,对bookstack目录行打包

tar zcvf bootst.tar.gz /var/lib/docker/volumes/*

完成上述步骤,然后把mysql.tar,bookstack.tar, bootst.tar.gz拷贝到新有服务器上,进行镜像导入及文件解压

第五步,导入镜像和解压数据

docker load -i mysql.tar #导入mysql镜像

docker load -i bookstack.tar # 导入bookstack镜像

第六步,解压数据文件boot.tar.gz 目录自己设置。我放在/bantdata/bookstack

tar xf volumes.tar.gz

第七步,修改boot.yml文件

[root@bantcd bookstack]# cat book.yml

version: '2'

services:

mysql:

image: mysql:5.7.30 #修改为自己导入镜像名

environment:

- MYSQL_ROOT_PASSWORD=secret

- MYSQL_DATABASE=bookstack

- MYSQL_USER=bookstack

- MYSQL_PASSWORD=secret

volumes:

- /bantdata/bookstack/volumes/docker-bookstack_mysql-data/_data:/var/lib/mysql #数据文件位置

- /bantdata/bookstack/volumes/bookstack_mysql-data/_data:/etc/mysql/conf.d #数据库配置文件

bookstack:

image: bookstack:latest #修改为自己导入镜像名

depends_on:

- mysql

environment:

- DB_HOST=mysql:3306

- DB_DATABASE=bookstack

- DB_USERNAME=bookstack

- DB_PASSWORD=secret

volumes:

- /bantdata/bookstack/volumes/docker-bookstack_uploads/_data:/var/www/bookstack/public/uploads #bookstackupload文件目录

- /bantdata/bookstack/volumes/docker-bookstack_storage-uploads/_data:/var/www/bookstack/storage/uploads #bookstack的storage文件

ports:

- "8088:8080" #暴露端口,根据自己主机设置

最后一步: docker-compose启动

docker-compose -f book.yml up #启动容器 检查有无报错,然后在重新启动加上 -d

#备注:在生产过程不建议迁移,在开始部署的时候,建议配置越高越好,因为当人员大量访问和读写,数据库会产生大量的数据。避免因为内存或者CPU不足引起数据无法正常保存而丢失。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值