我正在尝试设置docker compose,以便我的容器可以在全新的容器上使用现有架构(无数据)。我还希望能够允许用户插入数据,因此当容器重新启动时,它将使用存储的最新数据。目前,我能够使mysql像这样正确加载架构:
version: "2.1"
services:
db:
restart: always
image: mysql:5.7
env_file: .env
ports:
- "3306:3306"
environment:
- MYSQL_DATABASE=mydb
- MYSQL_USER=user
- MYSQL_PASSWORD=${MYSQL_PASSWORD}
- MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
volumes:
- ./db:/docker-entrypoint-initdb.d/
- data-volume:/var/lib/mysql
volumes:
data-volume:
这将在没有数据的情况下显示mysql模式。我尝试添加一个data-volume
,以便当用户将数据插入数据库中并且容器重新启动时,它会从持久性数据(数据量)中选取,但这是行不通的。
每次我运行docker-compose down
然后运行docker-compose up
时,似乎都是在重新初始化架构,而不是使用存储的数据。我在这里做什么错了?