首页 > 解决方案 > 运行 docker-compose 时丢失音量

问题描述

我运行了带有 wordpress 的容器和其他带有 MySQL 及其卷的容器(请参阅下面的配置)。然后我运行docker-compose up -d --build,然后我看到 wordpress 安装页面,这意味着空数据库。我也可以在那之前杀死一些 docker 进程,不记得到底是通过命令 ```sudo kill -9 [process_id] 是哪个。

我在哪里可以找到解决方案来使用所有信息恢复我的音量?

services:
   wordpress:
     depends_on:
       - db
     image: wordpress:latest
     volumes:
        - ./uploads.ini:/usr/local/etc/php/conf.d/uploads.ini
        - wordpress_files:/var/www/html
     ports:
       - "80:80"
     restart: always
     environment:
       WORDPRESS_DB_HOST: db:3306
       WORDPRESS_DB_USER: wordpress
       WORDPRESS_DB_PASSWORD: my_wordpress_db_password

   db:
     image: mysql:5.7
     volumes:
       - db_data:/var/lib/mysql
     restart: always
     ports:
       - "3306:3306"
     environment:
       MYSQL_ROOT_PASSWORD: my_db_root_password
       MYSQL_DATABASE: wordpress
       MYSQL_USER: wordpress
       MYSQL_PASSWORD: my_wordpress_db_password
volumes:
    wordpress_files:
    db_data:
    uploads.ini:

标签: dockerdocker-composedocker-volume

解决方案


你应该看看“docker volume ls”的输出。如果您仅通过 docker run 命令使用容器并且现在切换到 compose,那么您在运行 docker-compose up 时可能会创建一个名为 db_db_data 的新空卷。


推荐阅读