Я пытаюсь настроить контейнер postgresql (https://hub.docker.com/_/postgres/). У меня есть данные из текущего экземпляра postgres. Я скопировал его из /var/lib/postgresql/data и хотите установить его как объем для контейнера postgres.
Моя часть из файла docker-compose.yml о postgres:
db:
image: postgres:9.4
ports:
- 5432:5432
environment:
POSTGRES_PASSWORD: postgres
POSTGRES_USER: postgres
PGDATA : /var/lib/postgresql/data
volumes:
- /Users/ihorsamusenko/projects/own/docker_php/pgdata:/var/lib/postgresql/data
Когда я делаю сборку докеров, я получаю это сообщение:
db_1 | initdb: directory "/var/lib/postgresql/data" exists but is not empty
db_1 | If you want to create a new database system, either remove or empty
db_1 | the directory "/var/lib/postgresql/data" or run initdb
db_1 | with an argument other than "/var/lib/postgresql/data".
Я попытался создать свое собственное изображение из контейнера, поэтому мой файл Docker:
FROM postgres:9.4
COPY pgdata /var/lib/postgresql/data
Но у меня такая же ошибка, что я делаю неправильно?
Update
Я получил sql, используя pg_dumpall, и поместил его в /docker -entrypoint-initdb.d но этот файл выполняется каждый раз, когда я создаю докеры.
Я действительно новичок в докере, любые подсказки мне очень помогли.