blog/docs/tech/Backup-and-Restore-of-Docker-Volumes-A-Step-by-Step-Guide.md
2024-07-25 01:50:05 +08:00

1.4 KiB

手把手教你备份和还原 Docker 卷

本教程将以备份 Grafana 的数据卷为例,手把手教你如何备份和还原 Docker 卷。

grafana:
    image: grafana/grafana-enterprise
    container_name: grafana
    ports:
      - 100.114.118.48:3000:3000
    volumes:
      - grafana-storage:/var/lib/grafana
    environment:
      GF_SERVER_DOMAIN: "3-buyvm-lv.tail184fc.ts.net"
    networks:
      - basic_network
    labels:
      - "com.centurylinklabs.watchtower.enable=true"
    restart: unless-stopped

第一步:确定准备备份的 Docker 卷

备份卷的第一步是确定要备份的卷。

我们可以通过运行以下命令来做到这一点:

docker volume ls

这将显示 Docker 主机上当前可用的所有卷的列表,记得记下要备份的卷名称。

DRIVER    VOLUME NAME
local     3-buyvm-lv_grafana-storage

在本次演示中,3-buyvm-lv_grafana-storage 将是我们将要备份的卷。

第二步:创建备份

要创建 Docker 卷备份,可以使用 docker run 命令启动一个容器,挂载要备份的卷,并将备份数据写入压缩包。

docker run --rm \
--mount source=<volume-name>,target=<target> \
-v $(pwd):/backup \
busybox \
tar -czvf /backup/<backup-filename>.tar.gz <target>

下面是我们备份 3-buyvm-lv_grafana-storage 的示例命令: