Tag: 烧瓶 sqlalchemy

Python无法在Docker镜像中findsqlalchemy-migrate

我的任务是Dockerize一个Python烧瓶应用程序。 这个应用程序的一部分使用sqlite来pipe理用户。 我正面临的问题是python抱怨,它无法findsqlalchemy-migrate分配。 为了隔离应用程序,我写了一个小程序来导入与应用程序相同的模块。 from sqlalchemy import * from migrate import * import pkg_resources __version__ = pkg_resources.get_provider( pkg_resources.Requirement.parse('sqlalchemy-migrate')).version print __version__ 它在第二行立即失败 Step 23 : RUN python /opt/ipaccess/PresenceInsight2-1.2.1-LTE/sql_repo/test.py —> Running in 84cfb8cdabba Traceback (most recent call last): File "/opt/ipaccess/PresenceInsight2-1.2.1-LTE/sql_repo/test.py", line 2, in <module> from migrate import * File "/usr/lib/python2.6/site-packages/migrate/__init__.py", line 14, in <module> pkg_resources.Requirement.parse('sqlalchemy-migrate')).version File "/usr/lib/python2.6/site-packages/pkg_resources.py", […]

Docker Error 2002 SQLAlchemy

我目前正在与MySQL / SQLAlchemy Flask应用程序。 我试图dockerize它,但它有一些问题连接到其中一个sockets。 我已经看了几乎所有关于这个问题,但我仍然得到这个错误。 “sqlalchemy.exc.OperationalError 🙁 _mysql_exceptions.OperationalError)(2002,”无法通过套接字连接到本地MySQL服务器“/var/run/mysqld/mysqld.sock'(2)” 我目前正在研究Mac和Mac的terminal程序。 我的文件夹树是:MainFolder – > .yml,db(文件夹),www(文件夹) 其中数据库(文件夹)有一个Dockerfile和www(文件夹)有.py,要求和Dockerfile 下面列出的是我的代码为这个应用程序。 泊坞窗,compose.yml version: '3' services: www: build: www/. ports: – 5000:5000 links: – db depends_on: – db db: build: db/. volumes: – ./[database]:/usr/local/mysql environment: MYSQL_ROOT_PASSWORD: [password] Dockerfile(用于www) FROM python:3-onbuild # Place app in container COPY . /opt/www WORKDIR /opt/www RUN […]

什么可能导致“查询过程中丢失与MySQL服务器的连接”?

我有一个应用程序使用flask-sqlalchemy与MySQL数据库。 我的代码类似于以下内容: db = SQLAlchemy() my_object = models.Foobar(foo=foo, bar=bar) db.session.add(my_object) db.session.commit() # identifier = Do something that requires the object to be in the db. Needs ~1s. # The code here uses from multiprocessing import Process and the db # Update my_object my_object.foo = identifier db.session.commit() 当我直接执行代码,它的工作。 当我在Docker容器中执行它时,我得到: OperationalError: (_mysql_exceptions.OperationalError) (2013, 'Lost connection to MySQL […]

将瓶子应用程序连接到在docker容器中运行的postgresql服务

我有一个使用PostgreSQL作为后端数据库的Flask应用程序。 我已经安装了Postgresql作为dockerized服务(使用docker-compose)。 我现在在我的机器上成功运行postgresql。 我input了所有相关的详细信息以连接到数据库(用户,pwd,dbname,服务器地址,服务器端口),但无法连接。 当我尝试连接到数据库时,在Flask(来自psycopg2)中抛出一个exception: conn = _connect(dsn, connection_factory=connection_factory, **kwasync) OperationalError: could not connect to server: No such file or directory Is the server running locally and accepting connections on Unix domain socket "/var/run/postgresql/.s.PGSQL.5432"? 当我检查postgresql是否正在运行时,我收到以下消息: $ service postgresql status ● postgresql.service Loaded: not-found (Reason: No such file or directory) Active: inactive (dead) 在阅读了关于Docker和PostgreSQL的更多信息后,我开始理解为什么我不能连接 – 因为postgresql运行在自己的容器中 […]

是否有可能在SqlAlchemy中通过名称连接到dockerdb容器?

我有以下docker容器,这两个共享一个networking连接,并exec到api ,允许我ping db ,这一点是好的。 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 8790d379ddb9 codeinsight/database "/run-database.sh" 3 minutes ago Up 3 minutes 0.0.0.0:3306->3306/tcp db 88b2022876cc codeinsight/rest-api "python /usr/src/a…" 3 minutes ago Up 3 minutes 3000/tcp, 0.0.0.0:3000->8989/tcp api 但是,当使用sqlalchemy连接到db (可能不是特定于框架!)时: self.engine = create_engine('mysql+pymysql://user_name:password@db:3306/dbname', echo=True) 除了连接拒绝,我什么也得不到 Can't connect to MySQL server on 'db' ([Errno 111] Connection refused 那么,在定义和build立链接时,是否可以通过容器名称进行连接? […]

从Docker容器内部连接到RDS PostgreSQL数据库时出错

我有一个在Docker容器中运行Flask_sqlalchemy的应用程序。 容器运行不正常,所以我潜入并尝试运行该应用程序,并得到以下错误: sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) could not connect to server: Connection refused Is the server running on host "DBNAME.XXXXXXXXXX.eu-west-1.rds.amazonaws.com" (000.000.000.000) and accepting TCP/IP connections on port 5432? 应用程序在容器外工作正常,我无法弄清楚发生了什么事情。 这可能与AWS-RDS安全组有关吗? 他们目前被configuration为只接受来自我们办公室的入站连接。 编辑: 这是我的Dockerfile: FROM ubuntu:latest RUN apt-get update -y RUN apt-get install -y python-pip python-dev build-essential libpq-dev python-shapely COPY . /src WORKDIR /src RUN pip install -r […]

通过Docker运行Flask和SQLAlchemy应用程序的问题

我有一个用python,sqlalchemy和flask写的web应用程序。 该应用程序以及静态文件,样式表等都存储在一个名为flask-app的文件夹中,程序将从以下位置运行: python server.py 当我从terminal运行这个,它工作得很好。 但是,当我从docker运行它不起作用。 我的Dockerfile看起来像这样: FROM ubuntu:latest MAINTAINER Rahul Raghhunath "rahulraghu94@gmail.com" RUN apt-get update -y RUN apt-get install -y python-pip python3.5 build-essential COPY . /server WORKDIR /server RUN pip install –upgrade pip RUN pip install flask SQLAlchemy ENTRYPOINT ["python3.5"] CMD ["server.py"] 我正在运行以下内容: docker build -t rahulraghu94/wine-catalog . 它运行成功。 但是当我运行: docker run rahulraghu94/wine-catalog 它说: […]

Docker + MYSQL:无法在容器外部访问mysql

我有2个docker容器,都包含MySQL数据库,我打开端口3305,3306每个。 对于3306:3306的容器,我可以通过容器访问它 from sqlalchemy import create_engine from sqlalchemy.orm import sessionmaker from sqlalchemy.ext.declarative import declarative_base from sqlalchemy import Column, Integer, Numeric, String import os cwd = os.getcwd() import sys sys.path.insert(0, cwd + '/vatic-docker/vatic') #from models import * engine = create_engine('mysql://root:1111' '@172.17.0.2:3306/vatic') Session = sessionmaker (bind = engine) session = Session() Base = declarative_base() 但是我不能通过访问3305:3306容器的mysql数据库 engine = […]

无法连接到Docker中的MySql。 访问拒绝错误抛出。 烧瓶的SQLAlchemy

好吧,所以一直试图让这个工作。 下面是我从头到尾运行的一系列命令,我得到了下面显示的Access denied…错误。 $ docker-compose up –build -d $ docker exec -it flaskdocker_mysql_1 mysql -u root -p mysql> CREATE DATABASE flask_docker; mysql> CREATE USER `flask-docker`@`localhost` IDENTIFIED BY 'pass'; mysql> GRANT ALL PRIVILEGES ON flask_docker.* TO 'flask-docker'@'localhost'; mysql> exit Bye $ docker exec -it flaskdocker_web_1 python /usr/src/app/manage.py createdb # rest of traceback sqlalchemy.exc.OperationalError: (pymysql.err.OperationalError) (1045, u"Access […]