Tag: postgresql

当使用python psycopg2插入行时,docker postgres进程终止

数据库是docker中的postgresql-9.5.1。 我的主机有3.75 GB的内存,Linux。 在一些方法中,我使用psycopg2和下面的代码一个接一个地插入490000行。 student_list = [(name, surname, explanation)] args_str = ','.join(cur.mogrify("(%s,%s,%s)", x) for x in student_list) cur.execute('INSERT INTO students (name, surname, explanation) VALUES ' + args_str) 这使得我的数据库泊坞窗内存似乎已满,并给出了这些错误: 日志:服务器进程(PID 11219)由信号9:终止 详细信息:失败的进程正在运行 日志:终止任何其他活动的服务器进程 docker @ test_db警告:由于另一个服务器进程崩溃而终止连接 docker @ test_db详细信息:postmaster命令此服务器进程回滚当前事务并退出,因为另一个服务器进程exception退出并可能损坏共享内存。 docker @ test_db提示:一会儿你应该可以重新连接到数据库并重复你的命令。 docker @ test_db警告:由于另一个服务器进程崩溃而终止连接 docker @ test_db详细信息:postmaster命令此服务器进程回滚当前事务并退出,因为另一个服务器进程exception退出并可能损坏共享内存。 … docker @ test_db FATAL:数据库系统处于恢复模式 日志:所有服务器进程终止; 重新初始化 日志:数据库系统中断; […]

Docker:如何依靠本地数据库而不是数据库泊坞窗容器?

总的来说:我不希望我的django应用程序依靠一个docker容器作为我的分贝。 换句话说,当我运行一个图像 docker run -p 8000:8000 -d imagename 我想知道连接到我的本地数据库。 我有我的settings.pyconfiguration为连接到PG数据库,所以一切都很好,当我做类似的事情 python manage.py runserver 随时调用任何不正确的使用某些条款或只是我对docker的整体理解。 所以从我看到的所有教程中,他们通常会创build一个依赖于db-image的docker撰写文件,这个文件将会放在与web应用程序分开的容器中 。 我已经经历的事例: https : //docs.docker.com/compose/django/#connect-the-database,http ://ruddra.com/2016/08/14/docker-django-nginx- postgres /等。在这一点上,我非常失落,因为我不知道我是否在Dockerfile,settings.py或docker-compose.yml中执行此操作(我猜我不应该甚至有这个,因为这是一个多容器的应用程序,我试图避免)。 [另外:最后,只有一个容器能运行一个django应用程序依赖于芹菜和rabbitmq吗? 就像我的pg例子,我只能看到它们都在单独的容器中的实例。]至于我的Dockerfile,这几乎是这样的。 FROM python:3 ENV APP 'http://githubproj` RUN git clone $APP \ && cd $APP/projectitself \ && pip install -r requirements.txt CMD cd $APP_DIR/mydjangoproject && gunicorn mydjangoproject.wsgi:application –bind 0.0.0.0:8000

如何从docker容器连接到localhost postgres数据库?

我configuration我的项目到docker。 我有数据库已经在非docker期间使用,现在我想连接我的docker-compose数据库服务。 但是,当我写docker-compose up – 现有的数据库没有使用 – 新创build一个(我怀疑,docker容器根本没有看到数据库)。 如果我做废话,请让我知道。 也许我应该迁移我的服务器数据库到容器。 这是我的docker-compose.yml: services: db: restart: always image: postgres:latest environment: – POSTGRES_DB=mydb – POSTGRES_PASSWORD=p@ssw0rd – POSTGRES_USER=root ports: – "5432:5432" volumes: # We'll mount the 'postgres-data' volume into the location Postgres stores it's data: – postgres-data:/var/lib/postgresql/data web: build: . command: bash -c "python manage.py collectstatic –noinput && ./manage.py […]

Rails 5应用程序连接到Docker + Puma(Nginx)+ PostgreSQL

我已经看过一些教程,但不能设置,只是如我所愿。 我有一些Rails应用程序,我不想放置在Docker容器中,因为它使诸如运行任务或迁移等事情有点令人讨厌。 不过,我想将这些应用程序连接到Nginx(使用Rails 5的默认Puma服务器)和使用Docker的PostgreSQL容器。 什么是正确的方法来设置呢? 这甚至有可能吗? 我正在考虑如下内容: app1 app2 app3 \ | / \ | / \ | / \ | / ——– |Docker| ——– ======= ============ |Nginx| |PostgreSQL| ======= ============ 提前致谢!

Postgres pg_hba.conf:IP范围不起作用

我有多个Docker容器运行,IP范围从172.17.0.1到172.17.0.5。 我在主机上安装了Postgres,所以我将host all all 172.17.0.0/16 trust的主机添加到了pg_hba.conf。 我的Docker容器仍然无法访问主机数据库。 但是,如果我使用host all all 0.0.0.0/0 trust ,everythig工作正常,但我不想打开我的数据库到所有的IP地址。 此外,172.17.0.0/16表示IP地址范围为172.17.0.0至172.17.255.255, url为http://www.ipaddressguide.com/cidr 。 # TYPE DATABASE USER ADDRESS METHOD # "local" is for Unix domain socket connections only local all all trust # IPv4 local connections: host all all 127.0.0.1/32 trust # IPv6 local connections: host all all ::1/128 trust host all […]

为什么使用Docker的Django服务器在postgresql中没有数据库运行?

我想知道为什么我的服务器正在运行,为什么没有看到另一个数据库。 用psql和\l : List of databases Name | Owner | Encoding | Collate | Ctype | Access privileges ————-+————-+———-+————-+————-+———————– aso | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | template0 | postgres | UTF8 | en_US.UTF-8 | en_US.UTF-8 | =c/postgres + | | | | | postgres=CTc/postgres template1 | postgres | UTF8 | en_US.UTF-8 | […]

无法从AWS ECS Docker Container访问AWS RDS

我有一个在Docker镜像(基于openjdk:8-jdk-alpine)打包的spring启动应用程序。 作为我想使用RDS的数据源。 我configuration了postgresql RDS实例,我可以从我的本地框访问它。 但是,当我部署应用程序到ECS我有以下问题:从EC2实例我可以访问5432端口: nmap -Pn -p 5432 172.31.2.43 … PORT STATE SERVICE 5432/tcp open postgresql 但是从这个实例启动的docker集装箱我不能访问RDS: PORT STATE SERVICE 5432/tcp closed postgresql RDS和EC2实例都在同一VPC内。 RDS安全组允许来自所有IP地址的传入连接。 我试图启动docker容器–net = host,但没有帮助。 RDS端点似乎从容器中不可见 任何人都可以提出什么可以调整/更改?

golang应用程序如何在aws服务器中使用docker与postgres对话?

我有一个这样的docker实例 docker run –name my-db-name -e POSTGRES_PASSWORD=mysecretpassword -d postgres:latest 在服务器上运行 我有我的golang应用程序包装在docker运行在同一台服务器 func main() { db, _ := sql.Open("postgres", "postgres://postgres:@192.168.99.100:5432/postgres?sslmode=disable") http.HandleFunc("/test", handler) http.ListenAndServe(":8080", nil) } 以上是不工作,因为IP是不正确的。 由于我使用mac,我需要使用docker机ip连接到dockerpostgres数据库,但在aws我不 什么是configuration这个好方法?

docker容器连接本地postgresql

我运行python容器,我想连接本地主机postegresql。 我尝试一些方法。 但不行。 请跟我说说 我能怎么做 ? 谢谢。 我已经在端口5432上运行postegresql,创build数据库并授予用户。 运行docker指令 docker run –name=python3 -v ${pwd}:/code -w /code python python代码 import psycopg2 def main(): #Define our connection string conn_string = "host='localhost' dbname='testDB' user='test' password='test'" # print the connection string we will use to connect print ("Connecting to database\n ->{}".format(conn_string)) # get a connection, if a connect cannot […]

Docker化已经存在的应用程序和数据库

我正在尝试Dockerize已经创build的应用程序(包括数据库)。 我有适当的文件: 泊坞窗,compose.yml dockerfile requirements.txt 我在数据库部分有问题 – 如何configurationdocker-compose.yml文件指向已经创build的数据库? 这就是为什么我问 – 我对Docker的理解 – 是你创build你的基本应用程序 – 然后“Dockerize”它或打包成一个你可以分发的图像。 我是一个初学者 – 所以这可能是我不理解的原因。 这是我目前的docker-compose.yml: version: '2' services: db: image: postgres:9.6 environment: – POSTGRES_USER=postgres – POSTGRES_PASSWORD=qwerty – POSTGRES_DB=ar_db ports: – "5433:5433" web: build: . command: python2.7 manage.py runserver 0.0.0.0:8000 volumes: – .:/code ports: – "8000:8000" depends_on: – db 和dockerfile: ############################################################ # […]