Функция в цифровом океане. Ошибки возврата не могут импортировать модуль и не могут подключиться к базе данныхPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Функция в цифровом океане. Ошибки возврата не могут импортировать модуль и не могут подключиться к базе данных

Сообщение Anonymous »

У меня есть простая функция Python, которую я развернул в качестве цифровой функции океана. Тем не менее, функция ошибки при импорте psycopg2 .
Функция:
import os
import psycopg2

def get_db_connection():
connection = psycopg2.connect(
host=os.environ.get("DB_HOST"),
port=os.environ.get("DB_PORT"),
dbname=os.environ.get("DB_NAME"),
user=os.environ.get("DB_USER"),
password=os.environ.get("DB_PASSWORD"),
)
return connection

def main(args):
try:
version = psycopg2.__version__
conn = get_db_connection()
cursor = conn.cursor()
cursor.execute("SELECT version();")
db_version = cursor.fetchone()
cursor.close()
conn.close()

return {
"body": {
"message": f"Successfully imported dependencies and found DB version {db_version}.",
"psycopg2_version": version
}
}
except Exception as e:
return {
"body": {
"error": f"{str(e)}"
},
"statusCode": 500
}

if __name__ == "__main__":
main([])

Структура файла функции кажется хорошей, потому что Doctl развертывает его, а цифровой океан успешно его создает и запускает его. Проблема в том, что импорт.packages:
- name: test-functions
actions:
- name: tester
runtime: 'python:default'

< /code>
requirements.txt:
psycopg2==2.9.10
< /code>
build.sh:
#!/bin/bash

set -e

virtualenv --without-pip virtualenv
source virtualenv/bin/activate

pip install -r requirements.txt --target virtualenv/lib/python_3.9/site-packages

Я использую doctl для развертывания функции в цифровой океан (примечание: SLS короткий для сервера ):
$ doctl auth init -t
$ doctl sls namespace create --label "tests" --region "west"
$ doctl sls connect
$ doctl sls deploy tests
< /code>
Наблюдая за журналами: < /p>
$ doctl sls activations logs --function test-functions/tester --follow
< /code>
Получение ответа: < /p>
$ doctl sls functions invoke test-functions/tester
{ "error": "could not import module..." }


Подробнее здесь: https://stackoverflow.com/questions/796 ... nnot-conne
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Прерывистые ошибки 403 с приложением Spring Security, развернутыми в цифровом океане
    Anonymous » » в форуме JAVA
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Прерывистые ошибки 403 с приложением Spring Security, развернутыми в цифровом океане
    Anonymous » » в форуме JAVA
    0 Ответы
    4 Просмотры
    Последнее сообщение Anonymous
  • Прерывистые ошибки 403 с приложением Spring Security, развернутыми в цифровом океане
    Anonymous » » в форуме JAVA
    0 Ответы
    8 Просмотры
    Последнее сообщение Anonymous
  • Прерывистые ошибки 403 с приложением Spring Security, развернутыми в цифровом океане
    Anonymous » » в форуме JAVA
    0 Ответы
    6 Просмотры
    Последнее сообщение Anonymous
  • Приложение Python Flask работает локально, а не на цифровом океане VPS
    Anonymous » » в форуме Python
    0 Ответы
    17 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»