Tag: 烧瓶

出现在Flask JavaScript文件中的额外字符

在我的发展过程中发生了非常随机的事情,我不能为了我的生活找出什么地方出了问题或为什么。 我build立一个应用程序在Flask以及使用Docker。 一切都运行良好,直到现在。 如果我有一个JavaScript文件,如果我修改Flask,则会在文件末尾加载一些随机字符。 或者更具体地说, 如果我有一个文件 alert('random text'); 而我加载页面,JS会做你所期望的。 但是,如果我添加任何额外的字符的文件, alert('randomer text'); 我在文件的末尾有两个随机字符。 两者都像 如果我想从原始文件中删除字符,说 alert('random'); 我会得到一个5个字符的文件从最后,所以它看起来像 alert('random te 正如你所看到的那样非常离奇。 在本地运行Flask时,一切正常,只有当我将所有东西加载到Docker中时,才会发生这种情况,所以我必须假设Docker和Flask / Python。 Flask应用程序是使用默认设置与Gunicorn启动的,这在过去一直不是问题。 我的Docker环境运行 docker run -t -i -d –name pv -v $PWD:/app/code -p 5000:5000 -p 5555:5555 –link redis_db:redis_db my_image 这一次在上个月没有变化。 这个项目已经有2个月的历史了,从一开始就一直在使用Docker,没有任何问题。 唯一发生的事情,我可以回想起,因为这个错误已经开始了,我必须做一个硬GIT重置回移一个提交。 我已经尝试过的东西。 使用不同的IDE来查看它是否在编码方面做了一些奇怪的事情。 加载时声明JavaScript文件为utf-8。 载入不同的浏览器。 Chrome抛出“Uncaught SyntaxError:Unexpected token ILLEGAL”。 和其他浏览器类似。 使用较旧的Docker文件。 从另一个视图模板加载脚本。 […]

用EBS部署多容器docker环境(flask&nginx)

以下代码在使用docker-compose在本地运行时工作。 但是,当我将Flask和nginx容器推送到ECS并尝试从Elastic Beanstalk启动此应用程序时,如下所示引用Dockerrun.aws.json文件中的容器,我无法启动我的应用程序而没有错误。 有谁知道如何格式化Dockerrun.aws.json文件? 或者,问题在别处? 谢谢! nginx / default.conf : server { listen 80; server_name example.org; charset utf-8; location /static { alias /usr/src/app/static; } location / { proxy_pass http://web:8000; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } } nginx / Dockerfile : FROM nginx RUN mv /etc/nginx/conf.d/default.conf /etc/nginx/conf.d/default.conf.old COPY default.conf /etc/nginx/conf.d/default.conf web / […]

运行Docker镜像给出:无法从app.py加载configuration

我正在Python Flask的webapp上使用Docker,但是当我尝试运行它的时候出现错误。 $ sudo docker run -t imgcomparer6 unable to load configuration from app.py python 在我的app.py文件中,我在webapp中唯一的app.run()实例在'__main__':函数内(见这里 ) if __name__ == '__main__': app.run(host="127.0.0.1", port=int("8000"), debug=True) Dockerfile FROM ubuntu:latest #Update OS RUN sed -i 's/# \(.*multiverse$\)/\1/g' /etc/apt/sources.list RUN apt-get update RUN apt-get -y upgrade # Install Python RUN apt-get install -y python-dev python-pip RUN mkdir /webapp/ # […]

Docker化Flask API上的部分响应错误(长响应)

我有一个Flask API(Python 3.5),在我的本地设置中返回一个完整的响应。 目前,我已经docker化的应用程序,现在的应用程序运行在我的本地docker的容器。 我目前的问题是,当我发送相同的请求到泊坞窗容器内的相同的服务, 响应被截断 。 邮差只是停止工作,curl将返回CURL_PARTIAL_RESPONSE错误。 我的实际完整响应是> 6000000字节。 这是一个长期的回应。 但从docker我得到部分回应,它似乎被切断。 是否有一些环境variables或库,docker容器需要不要截断这个响应? 或者也许这是一些与烧瓶有关的财产? 我有本地相同的设置,并在本地设置响应不被截断。 我怀疑docker容器有一些设置,由于我回来的部分回应。 任何指针,这是赞赏。 DockerFile: FROM python:3.5 WORKDIR /worker_deploy ADD trainer /worker_deploy/ RUN pip install -r requirements.txt EXPOSE 80 EXPOSE 5000 ENTRYPOINT ["python","/service/run_docker_trainer.py"] requirements.txt有一些其他的库,但我只包括python和flask版本: Flask==0.12.2 Python 3.5.0 像这样启动容器: docker run -it -p 5000:5000 miracle (奇迹是我的docker形象,它开始于0.0.0.0:5000) 然后我发出一个POST请求127.0.0.1/test,我得到一个JSON 1.6MB的响应,我只接收部分输出,并说curl说curl连接closures(18)错误:CURL_PARTIAL_RESPONSE 我在烧瓶中的代码返回响应使用“jsonify”。 所以这不是stream式响应。 @flask_app.route('/train', methods=['POST']) def […]

在Docker上自动重新加载烧瓶服务器

我希望我的瓶服务器检测代码中的更改并自动重新加载。 我在Docker容器上运行这个。 每当我改变一些东西的时候,我必须重新build造一个容器。 我不知道哪里错了。 这是我第一次使用烧瓶。 这是我的树 ├── docker-compose.yml └── web ├── Dockerfile ├── app.py ├── crawler.py └── requirements.txt 和代码(app.py) from flask import Flask import requests app = Flask(__name__) @app.route('/') def hello_world(): return 'Hello Flask!!' if __name__ == '__main__': app.run(debug = True, host = '0.0.0.0') 和docker – 撰写 version: '2' services: web: build: ./web ports: – […]

docker-compose不能用flask来设置环境variables

运行瓶容器,当我尝试读取环境variables,它们不是由docker组成。 我正在使用docker-compose文件版本2 compose file: services: test build: ./test image: test:1.0 container_name: test_flask ports: – "80:80" env_file: .env environment: – COUCHDB=http://192.168.99.100:5984 depends_on: – couchdb 我已经尝试env_file和环境指令? 我也试图把值放在双引号,单引号,没有引号,没有工作。 .env文件包含: COUCHDB="http://192.168.99.100:5984", also tried without quotes 然后我从Python代码读取这样的variables: COUCH_SERVER = os.environ["COUCHDB"] 我也试过os.environ.get('COUCHDB') 没有工作。 服务器从Dockerfile启动,如下所示: CMD服务apache2重启 我使用以下命令启动容器: docker工人组成testing 我使用Docker for Windows工具箱版本: Client: Version: 1.13.1 API version: 1.26 Go version: go1.7.5 Git commit: […]

连接被拒绝在OSX上的Docker应用程序

我搞错了Docker(使用Docker Toolbox for OSX),似乎无法让我的应用程序工作。 这是一个简单的烧瓶应用程序,看起来像这样: from flask import Flask app = Flask(__name__) @app.route('/') def index(): return 'Hello World!' if __name__ == '__main__': app.run() 现在我的Dockerfile包含以下内容 FROM python:2.7.11-wheezy ADD ./application/* /opt/local/application/ ADD ./project-requirements.txt /opt/local/application/requirements.txt RUN pip install -r /opt/local/application/requirements.txt CMD ["/usr/local/bin/python", "/opt/local/application/app.py"] EXPOSE 5000 我通过运行docker build -t python_app .构build容器docker build -t python_app . 然后通过运行docker -i -P python_app来启动容器,并看到应用程序是在容器内启动的,因为该命令的输出是* […]

为什么docker在高内存使用率上崩溃?

我有一个docker容器运行我的REST服务写在Python Flask。 我在OSx上使用VirtualBox运行容器。 这是容器启动时OSx上的内存统计信息: 所以,我有~3GB的免费内存。 所以我运行我的容器内存限制为2 GB docker run -d -m 2g –name mycontainer -p 5000:5000 foobar 现在,我发送了100个REST请求到容器上运行的服务,同时运行docker stats 。 最终,docker集装箱崩溃。 在容器崩溃之前,我在docker stats的数据之下粘贴。 崩溃1 :运行100个不同的请求(容器崩溃几乎是瞬间的。 CONTAINER CPU % MEM USAGE / LIMIT MEM % NET I/O BLOCK I/O 27ee4ed4f98a 99.27% 256.9 MB / 2.147 GB 11.96% 163.2 kB / 7.958 kB 107.4 MB / 0 […]

在Docker和Flask中使用PostgreSQL数据库,它是如何工作的?

我刚刚开始使用Docker,并使用Python3,Flask,UWSGI和nginx创build了一个映像和运行容器。 现在我想在Flask中使用postgresql数据库。 我阅读以下页面,链接容器似乎对我来说是合乎逻辑的。 ( https://hub.docker.com/_/postgres/ ) 我还有一些问题,或者Docker的原理对我来说不够清楚。 但是,如果我创build一个postgresql图像并运行容器,并将其链接到我的Flask应用程序,会发生什么情况如果: 我重build图像或重新启动容器,我的数据库数据去哪里? 它消失了吗? 我想在我的Flask(Docker)应用程序中使用我的数据库,我需要把我的configuration放到什么位置? (DATABASE_URI,NAME等) 我想备份我的数据库,或在其中加载数据? 我可以连接到它吗? 正如你可能已经注意到,我显然是一个与Docker合作的初学者,也许我只是误解了原理。 真的很感激,如果有人能指引我正确的方向!

Docker烧瓶无法连接

我正在尝试http://containertutorials.com/docker-compose/flask-simple-app.html 我已经逐字复制了教程,除了我改变了 From flask import Flask 至 from flask import Flask 我可以build立它很好。 我可以启动它,并从命令行运行docker ps时获得以下内容 CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 291c8dfe5ddb whatever:latest "python app.py" About a minute ago Up About a minute 0.0.0.0:5000->5000/tcp sick_wozniak 我正在OSX上构build这个 我已经尝试了以下 看看这篇文章在Docker – 服务器连接问题中部署一个最小瓶应用程序 运行$ python app.py以确保它在没有docker的情况下工作 为该项目创build一个django项目和一个dockerfile。 然后build立,运行和访问。 所以我相信docker工作正常,瓶子是独立工作的,但是我不能让他们一起工作。