Tag: postgresql

发布泊坞窗容器端口并从另一个泊坞窗容器访问该端口

我试图运行一个postgres容器与docker,并从另一个容器访问它。 重现步骤: 运行postgres容器并发布端口: docker run -e POSTGRES_PASSWORD=test -d -p 5555:5432 postgres:9.6 运行其他容器来访问postgres: docker run -it debian /bin/bash apt-get update apt-get install telnet telnet 172.17.0.1 5555 结果: Trying 172.17.0.1…然后失败。 但我可以从本地主机或从外部使用公共IP访问它,因为图像允许所有IP,我不阻止该端口。 平的作品。 我testing了这个在我的机器,它的工作原理,但我需要知道为什么这不是在这台服务器上工作。 我在哪里可以开始寻找我的服务器上有什么问题? 更新:我试图做的telnet直接到postgres容器(172.17.0.2)分配的IP,我得到以下错误: telnet 172.17.0.2 Trying 172.17.0.2… telnet: Unable to connect to remote host: Connection refused但ping仍然工作在172.17.0.2 Docker检查postgres容器的输出: docker inspect a379130e94f7 [ { "Id": "a379130e94f7596ebe632e3ae825710c978577a3fb6b245a4f95374051eb8310", "Created": […]

泊坞窗撰写版本3不工作,因为我的预期

这是我第一次使用docker-compose。 我有这个文件: db: image: postgres ports: – "3600:5432" environment: – POSTGRES_HOST=127.0.0.1 – POSTGRES_DB=db – POSTGRES_USER=postgres – POSTGRES_PASSWORD=postgres1 api: build: . ports: – "4500:4500" links: – db 现在我必须把它翻译成版本3: version: "3" services: db: image: postgres ports: – "3600:5432" environment: POSTGRES_HOST: "127.0.0.1" POSTGRES_DB: "db" POSTGRES_USER: "postgres" POSTGRES_PASSWORD: "postgres1" api: build: . ports: – "4500:4500" links: – db 这是一个与postgres链接的节点应用程序,当我正在阅读如何连接到数据库时,我这样做: […]

在Docker中使用structure.sql中的模式运行`rails db:setup`

我有一个新的Rails应用程序,我打算在一个Docker容器中进行部署。 我们正在使用structure.sql而不是schema.rb 。 在我的本地设置(使用docker-compose文件,在Postgres在一个单独的容器中),当我运行rails db:setup ,出现以下错误: rails aborted! failed to execute: psql -q -f /rails/db/structure.sql cappy_dev Please check the output above for any errors and make sure that `psql` is installed in your PATH and has proper permissions. /usr/local/bundle/gems/activerecord-5.0.2/lib/active_record/tasks/postgresql_database_tasks.rb:99:in `run_cmd' /usr/local/bundle/gems/activerecord-5.0.2/lib/active_record/tasks/postgresql_database_tasks.rb:71:in `structure_load' /usr/local/bundle/gems/activerecord-5.0.2/lib/active_record/tasks/database_tasks.rb:213:in `structure_load' /usr/local/bundle/gems/activerecord-5.0.2/lib/active_record/tasks/database_tasks.rb:226:in `load_schema' /usr/local/bundle/gems/activerecord-5.0.2/lib/active_record/tasks/database_tasks.rb:253:in `block in load_schema_current' /usr/local/bundle/gems/activerecord-5.0.2/lib/active_record/tasks/database_tasks.rb:292:in `block in each_current_configuration' /usr/local/bundle/gems/activerecord-5.0.2/lib/active_record/tasks/database_tasks.rb:291:in […]

postgres不启动。 (涉及到Django和Docker)

我做 postgres -D /path/to/data 我明白了 2017-05-01 16:53:36 CDT LOG: could not bind IPv6 socket: No error 2017-05-01 16:53:36 CDT HINT: Is another postmaster already running on port 5432? If not, wait a few seconds and retry. 2017-05-01 16:53:36 CDT LOG: could not bind IPv4 socket: No error 2017-05-01 16:53:36 CDT HINT: Is another postmaster already […]

如何将postgres移动到docker集装箱?

我通常通过在terminal上键入postgres: psql -U user db 我想将postgres移动到docker容器中: docker run -v /var/lib/postgresql:/var/lib/postgresql -p 5432:5432 postgres 然后我运行命令,并有一个错误: psql -h localhost -p 5432 -U user psql: FATAL: role "user" does not exist 我预计-v /var/lib/postgresql:/var/lib/postgresql将使user可以达到db 。 但是这并没有发生。 如何使其正确?

如何通过Dockerfile中的命令来填充表

我build立(没有错误) mypostgres图像。 有与postgresql相关的命令: RUN /etc/init.d/postgresql start &&\ psql –command "CREATE USER cobrain WITH SUPERUSER PASSWORD 'cobrain';" &&\ createdb -O cobrain datasets &&\ psql –command "CREATE TABLE datasets (id varchar PRIMARY KEY, creation_timestamp bigint, type varchar, owner varchar, datafiles varchar[]);" &&\ psql –command "INSERT INTO datasets (id, creation_timestamp, type, owner, datafiles) VALUES ('111', 1111345, 'MEDICAL', 'Yandex', […]

数据库,用户不是使用postgres docker-compose创build的

我正在设置我的django项目和postgres,但每次我得到这个错误 angular色不存在 要么 Db不存在 所以当我只试图设置postgres,看看postgres是否正确创build用户和数据库,但事实并非如此 这是我的docker撰写文件: version: "3" services: templates_db: image: postgres:9.6 ports: – "5432:5432" environment: – POSTGRES_USER=my_user – POSTGRES_PASSWORD=my_pass – POSTGRES_DB=my_db volumes: – ./data/postgres:/var/lib/postgresql/data 我使用docker-compose up –build运行我的撰写文件docker-compose up –build并得到了以下日志 templates_db_1 | LOG: database system was interrupted; last known up at 2017-05-16 05:48:39 UTC templates_db_1 | LOG: database system was not properly shut down; automatic […]

等待Docker容器准备就绪

我有以下docker-compose.yml : version: '2' services: server: build: . command: ["./setup/wait-for-postgres.sh", "tide_server::5432", "cd /app", "npm install", "npm run start"] ports: – 3030:3030 links: – database depends_on: – database database: image: postgres environment: – "POSTGRES_USER=postgres" – "POSTGRES_PASSWORD=postgres" – "POSTGRES_DB=tide_server" ports: – 5432:5432 我试着按照这个教程 ,使用下面的shell脚本来确定postgres何时准备好。 #!/bin/bash # wait-for-postgres.sh set -e host="$1" shift cmd="$@" until psql -h "$host" -U […]

从另一个容器(Docker)连接到postgresql容器

我正在尝试按照本教程设置一个postgresql容器。 我有以下脚本: #!/bin/bash # wait-for-postgres.sh set -e host="$1" shift cmd="$@" until psql -h "$host" -U "postgres" -c '\l'; do >&2 echo "Postgres is unavailable – sleeping" sleep 1 done >&2 echo "Postgres is up – executing command" exec $cmd 而下面docker-compose.yml : version: '2' services: server: build: . ports: – 3030:3030 depends_on: – database command: ["./setup/wait-for-postgres.sh", […]

从typeorm docker容器连接postgres

我正在尝试使用typeorm将postgres数据库连接到nodejs。 我试着在localhost中同时使用postgres和nodejs,它工作正常。 不过,当我把postgres和nodejs放到docker容器时,我遇到了问题。 (Docker docker inspect postgres容器中的“IPAdress”字段是172.19.0.3) 来自Nodejs的错误: web_1 | error: TypeORM connection error: Error: connect ECONNREFUSED 172.19.0.3:5433 泊坞窗,compose.yml services: web: build: . volumes: – ./:/app ports: – "9001:9001" links: – pg_db pg_db: image: postgres ports: – "5433:5433" env_file: – docker.env ormconfig.json [ { "name": "default", "driver": { "type": "postgres", "host": "pg_db", "port": 5433, "username": […]