Docker Compose数据挂载和快速备份迁移
在使用docker过程种,有时候需要备份和迁移数据,有一个简单的方法实现。
参考 docker-compose.yml
services:
kiwix-serve:
command: '"*.zim"'
image: ghcr.io/kiwix/kiwix-serve
ports:
- '15080:8080'
volumes:
- './kiwix-database:/data'
container_name: kiwix
在 volumes 里面,把相当于 docker-compose.yml 当前目录下的 kiwix-database 挂载到容器的 /data 目录,如果当前目录下 kiwix-database 不存在,会自动创建。
当你想要迁移的时候,直接选择停止docker-compose,打包整个目录tar -czvf docker-compose.tar.gz ./docker-compose
,然后复制到新环境解压tar -tzvf docker-compose.tar.gz
,然后docker-compose up -d
就行了。当然有一些情况,可能会有端口冲突这些问题。