Postgres数据未在使用laravel的Docker-compose文件上持久化

91zkwejq  于 2023-06-22  发布在  Docker
关注(0)|答案(2)|浏览(134)

我目前正在使用laravel项目与docker,我不明白,但当我开始使用docker
docker-compose up -d
所有的工作都很好,我的容器启动了,我可以用它来处理我的postgres数据库。
当我运行docker-compose down
在我重新启动容器后
docker-compose up -d
我所有的迁移和数据都从数据库中删除了
下面是我docker-composer配置

version: "3.7"
services:
  app:
    build:
      args:
        user: muze
        uid: 1000
      context: ./
      dockerfile: Dockerfile
    image: dockerizedapp
    container_name: docker-app
    restart: always
    depends_on:
        - db
    working_dir: /var/www/
    volumes:
      - ./:/var/www

  db:
    image: postgres:11-alpine
    container_name: docker-db
    restart: always
    ports:
        - "5432:5432"
    environment:
        POSTGRES_PASSWORD: ${DB_PASSWORD}
        POSTGRES_USER: ${DB_USERNAME}
        POSTGRES_DB: ${DB_DATABASE}
    volumes:
        - ./storage/app/postgresql/data:/var/lib/postgresql/data

  nginx:
    image: nginx:alpine
    container_name: docker-nginx
    restart: unless-stopped
    depends_on:
      - app
    ports:
      - 8000:80
    volumes:
      - ./:/var/www
      - ./docker-compose/nginx:/etc/nginx/conf.d/

谢谢你的帮助
我尝试直接在docker上挂载一个卷,我也看到了它,但当我重新启动它时,它总是空的
我已经看到了很多关于堆栈溢出的问题,似乎也没有什么工作。
我使用最新版本的Docker

vwkv1x7d

vwkv1x7d1#

docker-compose down停止容器,删除它们及其网络。试试docker-compose stop

jecbmhm3

jecbmhm32#

已解决,因为在我的postgres数据库的env变量上,我有PGDATA,这不是docker-compose特别需要的
谢谢你的帮助

相关问题