gpt4 book ai didi

postgresql - 使用pgadmin4将csv文件从本地机器导入到postgresql docker容器

转载 作者:行者123 更新时间:2023-12-05 06:48:03 25 4
gpt4 key购买 nike

我正在学习使用 docker。我正在使用 postgresql 和 pgadmin4 使用 docker 设置数据库。我写了一个docker-compose.yml文件如下,

version: '3.8'
services:
db:
container_name: postgres
image: postgres
restart: always
volumes:
- ${HOME}/Desktop/dbms-2/:/var/lib/postgresql/data
environment:
POSTGRES_USER: root
POSTGRES_PASSWORD: root
POSTGRES_DB: test_db
ports:
- "5432:5432"
build:
context: .
dockerfile: Dockerfile
pgadmin:
container_name: pgadmin4
image: dpage/pgadmin4
restart: always
volumes:
- ${HOME}/Desktop/dbms-2/:/var/lib/pgadmin4/storage
environment:
PGADMIN_DEFAULT_EMAIL: admin@admin.com
PGADMIN_DEFAULT_PASSWORD: root
ports:
- "5050:80"

还有一个 docker 文件,用于在 Postgres 中启动 SQL 脚本,如下所示,(我有 docker-entrypoint-initdb.d 子目录和 docker-compose.yml 在相同的根目录。)

FROM postgres:latest
COPY docker-entrypoint-initdb.d/*.sql /docker-entrypoint-initdb.d/
RUN chmod a+r /docker-entrypoint-initdb.d/*
EXPOSE 6666

现在我的 csv 文件包含本地文件系统中另一个目录中的表。当我在将这些文件复制到 /var/lib/pgadmin/storage/admin_admin.com/${HOME}/Desktop/dbms-2/< 后尝试从 pgAdmin4 GUI 导入它们时 目录,我得到了一个

[Errno 13] Permission denied: '/var/lib/pgadmin/storage/admin_admin.com/name.basics.tsv'.

还有比这些更好的导入表的方法吗?我在这里犯的错误是什么?以及如何将此 docker-compose.ymlDockerfile 合并到一个 docker-compose.yml 文件中。

最佳答案

您可以从 PgAdmin GUI 上传文件。

Here is a good article about how to do it .

enter image description here

关于postgresql - 使用pgadmin4将csv文件从本地机器导入到postgresql docker容器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66934372/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com