Я пытаюсь развернуть веб-приложение на Python в Google App Engine.Он работает локально, но я не могу получить его на хосте. Дает ошибку сборки на экземпляре - PullRequest
0 голосов
/ 20 июня 2019

Когда я пытаюсь развернуть в GAE, с:

gcloud app deploy 

в строке cmd, это ошибка через несколько минут во время сборки. Я могу запустить его локально на моем Mac (mojave 10.14.3) просто отлично - на localhost Локально я использую python 3.6 и последнюю версию pip (19.1.1) для пакетов

Экземпляр gcloud - это машина Ubuntu, работающая на python 2.7 или 3.6. В моем файле конфигурации app.yaml я установил Python 3.

Файл app.yaml:

runtime: python
env: flex
entrypoint: gunicorn app:app.server -b :$PORT

threadsafe: false

runtime_config:
  python_version: 2


resources:
  cpu: 1
  memory_gb: 1
  disk_size_gb: 10

Файл needs.txt:

dash==0.21.0
dash-core-components==0.22.1
dash-html-components==0.10.0
dash-renderer==0.12.1
Flask==0.12
pandas==0.22.0
plotly==2.5.1
gunicorn==19.9.0
flask_login==0.4.1
flask_sqlalchemy==2.4.0
configparser==3.7.4
arrow==0.14.2
dash-daq==0.1.5
sqlalchemy==1.3.4
scipy==0.17.0
numpy==1.16.4
pillow==6.0.0
dash_daq==0.1.5 
certifi==2019.3.9
retrying==1.3.3
urllib3==1.25.3
requests==2.22.0

Я пробовал в основном все! от переключения моего локального на Python 2.7 и конфигурации облака.

Все комбинации файла app.yaml. Я исправил все ошибки пакета.

Возможно, я ожидаю, что мне может понадобиться сборка пользовательской среды через .Dockerfile. но не ясно, какая именно настройка необходима. Кроме того, это разочаровывает, так как каждый раз, когда я пытаюсь развернуться, требуется несколько минут для развертывания .. (любой совет, чтобы ускорить ??)

Мой "основной" (app.py) файл:

# index page
import dash
import dash_core_components as dcc
import dash_html_components as html
from dash.dependencies import Input, Output
import sys

#sys.path.append('/Users/crowledj/Mindfule/dash-flask-login/views/')
#sys.path.append('/Users/crowledj/Mindfule/dash-flask-login/flask_login/')

external_stylesheets = ['https://codepen.io/chriddyp/pen/bWLwgP.css']

app = dash.Dash(__name__, external_stylesheets=external_stylesheets)


#server=app.server

#app.css.append_css({'external_url': 'https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.css'})


from server import app, server
from flask_login import logout_user, current_user
import success, login, login_fd, logout

Для импорта и его окончательной строки:

if __name__ == '__main__':
    app.run_server(debug=    False,port=8080,host= "foodmoodai.appspot.com")

Импорт моего основного файла кода приложения:

import dash
#import dash_auth
import dash_core_components as dcc
import dash_html_components as html
from dash.dependencies import Input, Output, State
import dash_daq as daq
import plotly.graph_objs as go

from textwrap import dedent as d

from flask import Flask
import pandas as pd
import numpy as np
from NutrientParser import parseNutrientStr_frmUser,parseResearch,parseFoodResearch,find_substring
from userMindfuleClasses import *
#import time
#import dash_table as dtable
#import base64
import PIL  
import urllib3
from PIL import Image
import json,os
import arrow


from server import app

Основная ошибка в журналах сборки - сбой сборки scipy ...:

Step #1:   Running setup.py bdist_wheel for scipy: started
Step #1:   Running setup.py bdist_wheel for scipy: finished with status 'error'
Step #1:   Complete output from command /env/bin/python3.6 -u -c "import setuptools, tokenize;__file__='/tmp/pip-install-m9tl_bsf/scipy/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" bdist_wheel -d /tmp/pip-wheel-db6mbz4m --python-tag cp36:
Step #1:   Traceback (most recent call last):
Step #1:     File "<string>", line 1, in <module>
Step #1:     File "/tmp/pip-install-m9tl_bsf/scipy/setup.py", line 265, in <module>
Step #1:       setup_package()
Step #1:     File "/tmp/pip-install-m9tl_bsf/scipy/setup.py", line 253, in setup_package
Step #1:       from numpy.distutils.core import setup
Step #1:   ModuleNotFoundError: No module named 'numpy'
Step #1:   
Step #1:   ----------------------------------------
Step #1:   Failed building wheel for scipy
Step #1:   Running setup.py clean for scipy

Еще одна подсказка лежит над этим в полных журналах ошибок.

В нем также указывалось, что у меня есть старая версия pip для экземпляра и что существует гораздо более современная версия. Как это можно сделать - т.е. обновить в инстансе?!

Кстати, я проверил вход в систему, консоль ядра своего приложения и те же данные: (

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...