У меня запущен образ docker postgres, который я создаю через Dockerfile. В Dockerfile я копирую свой CSV, который находится в каталоге / data в / data / на докере. Как это:
COPY /data/* /data/
Я также копирую свой файл sql в точку входа в докер, чтобы он выполнялся при загрузке контейнера.
Теперь здесь возникает проблема. В proeve_schema.sql я создаю таблицу:
CREATE TABLE COMPANY(
ID INT PRIMARY KEY NOT NULL,
ORDERDATE TEXT,
CASETYPE TEXT,
CASEID TEXT,
);
И я пытаюсь скопировать данные из моего CSV в таблицу:
COPY sample_data
FROM '/data/bom_sampledata_1000.csv' DELIMITER ',' CSV HEADER;
Однако, когда я пытаюсь запустить свой контейнер, он падает без какого-либо журнала ошибок.
Когда я удаляю оператор COPY, он работает хорошо, и моя таблица генерируется.
Кроме того, файл CSV присутствует в контейнере.
Dockerfile:
RUN mkdir -p /data
#copy all data to the container
COPY /data/* /data/
COPY proeve_schema.sql /docker-entrypoint-initdb.d/```
RUN chown postgres /data
RUN chmod +w /data
proeve_schema.sql:
CREATE TABLE COMPANY(
ID INT PRIMARY KEY NOT NULL,
ORDERDATE TEXT,
CASETYPE TEXT,
CASEID TEXT,
CUSTOMERNUMBER TEXT,
);
COPY sample_data
FROM '/data/data.csv' DELIMITER ',' CSV HEADER;```