Задать вопрос
@MishaXXL

Как правильно работать с сохраненными данным при запуске через докер компос?

В обучающем посте нашел такой пример
Как я понял, свойство
volumes:
      - postgres:/data/postgres

говорит о том, что я где-то храню все данные БД этого контейнера, но я не могу найти путь к нему

По логике же для портирования моей БД с одного сервера на другой нужно просто после первого запуска контейнера залить по этому же адресу эту папку и у меня при перезапуске контейнера уже будет рабочая БД со всеми данными, верно?

С ПгАдмин не совсем понял для чего нам что-то сохранять, но тут сохраняются мои данные для входа, верно?
И по этому пути в Ubuntu не нашел папку pgadminв lib
volumes:
  - pgadmin:/var/lib/pgadmin


Подскажите, где мне искать эти файлы и как переносить БД с одного сервера на другой с моими данными?

version: '3.5'

services:
  postgres:
    container_name: postgres_container
    image: postgres
    environment:
      POSTGRES_USER: postgres
      POSTGRES_PASSWORD: postgres
      PGDATA: /data/postgres
    volumes:
      - postgres:/data/postgres
    ports:
      - "5400:5432"
    networks:
      - postgres
    restart: unless-stopped
  
  pgadmin:
    container_name: pgadmin_container
    image: dpage/pgadmin4
    environment:
      PGADMIN_DEFAULT_EMAIL: admin@mymail.ru
      PGADMIN_DEFAULT_PASSWORD: adminpassword
      PGADMIN_CONFIG_SERVER_MODE: 'False'
    volumes:
      - pgadmin:/var/lib/pgadmin

    ports:
      - 5480:80
    networks:
      - postgres
    restart: unless-stopped

networks:
  postgres:
    driver: bridge

volumes:
    postgres:
    pgadmin:
  • Вопрос задан
  • 84 просмотра
Подписаться 3 Простой Комментировать
Решения вопроса 1
yarkov
@yarkov
Помог ответ? Отметь решением.
Что документация по docker volumes говорит? Ах, да! Вы же её не открывали даже. Просто скопипастили конфиг и разбираетесь.

volumes:
      # имя волюма (не путь к папке):путь в контейнере 
      - pgadmin:/var/lib/pgadmin


Можно написать так:
volumes:
      - ./data:/var/lib/pgadmin


Теперь у вас рядом с файлом docker-compose yml будет папка data с файлами БД.

А тема волюмов чуточку больше чем просто ответ на Хабре )) Начните с документации.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы