1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/serverless-devs-Serverless-Devs

Клонировать/Скачать
quick_start.md 22 КБ
Копировать Редактировать Web IDE Исходные данные Просмотреть построчно История
Отправлено 24.05.2025 16:44 c46f8bb
title description position category
Быстрый старт
Быстрый старт с Serverless Devs
2
Обзор

Быстрый старт

В этом примере быстрого старта используется функциональное вычисление на Алибаба Клод (хотя Serverless Devs также поддерживает AWS Lambda, функциональное вычисление на Байду, функциональный поток на Huawei Cloud, функциональный поток на Tencent Cloud и другие платформы FaaS различных облачных провайдеров).

Установка инструментов

  • Шаг 1: Установите Node.js (>=12.0.0) и менеджер пакетов NPM;
  • Шаг 2: Установите инструменты разработки Serverless Devs;
    $ npm install @serverless-devs/s -g
  • Шаг 3: Проверьте установку инструментов с помощью команды s -v. Если установка прошла успешно, вы увидите соответствующую версию, например:
    @serverless-devs/s: 2.1.2, core: 0.1.41, s-home: /Users/xxx/.s, darwin-x64, node-v17.7.1

Настройка ключей> Поскольку в этом примере быстрого старта используется [функциональное вычисление на Алибаба Клод](https://www. aliyun. com/product/fc), настройка ключей также будет иллюстрирована на примере ключей Алибаба Клод:

  • Страница получения ключей: https://usercenter. console. aliyun. com/#/manage/ak- Откройте [страницу получения ключей](https://usercenter. console. aliyun. com/#/manage/ak) для получения информации о ключах: ! [Страница получения ключей](https://images. devsapp. cn/access/aliyun-access. jpg)
  • Выполните s config add, а затем выберите Alibaba Cloud (alibaba):
    $ s config add 
    ?  Пожалуйста, выберите провайдера: Alibaba Cloud (alibaba)
    🧭 См.  документацию для ключа Alibaba:  http://config. devsapp. net/account/alibaba
    ?  AccessKeyID:  
  • В данный момент вы можете следовать инструкциям для настройки ключей:
    ?  Пожалуйста, выберите шаблон: Alibaba Cloud (alibaba)
    🧭 См.  документацию для ключа Alibaba:  http://config. devsapp. net/account/alibaba
    ?  AccessKeyID Введите AccessKeyID
    ?  AccessKeySecret Введите AccessKeySecret
    ?  Пожалуйста, создайте псевдоним для пары ключей.  Если нет, нажмите Enter, чтобы пропустить alibaba-access
         Alias: alibaba-access
        AccountID: автоматически полученный AccountID
        AccessKeyID: Введите AccessKeyID
        AccessKeySecret: Введите AccessKeySecret
     ✔ Настройка завершена успешно
  • Чтобы проверить правильность настройки ключей, выполните s config get -a alibaba-access для просмотра конкретного ключа:
    $ s config get -a alibaba-access
    alibaba-access:
      AccountID: Введите AccountID
      AccessKeyID: Введите AccessKeyID
    ```      AccessKeySecret: Введите AccessKeySecret

    Облачный аккаунт AccessKey — это ключ, используемый для доступа к API Alibaba Cloud, который предоставляет полный доступ к аккаунту. Пожалуйста, храните его в надежном месте! Не размещайте его в открытом доступе через любые каналы (например, GitHub), чтобы избежать угроз безопасности.

Рекомендуется следовать [лучшим практикам безопасности Alibaba Cloud](https://help. aliyun. com/document_detail/102600. html? spm=5176. 2020520153. 0. 0. 57f1336a8PQ1KR) и использовать AccessKey подпользователя RAM для вызова API. ## Начальный опыт### Серверлесс: Привет, мир

  • Выполните команду s:

    $ s
    ? Нет обнаруженного проекта Serverless-Devs. Хотите создать новый проект? (Y/n) 
  • Введите y и нажмите Enter, чтобы перейти к шагам по созданию проекта:

    🚀 Больше приложений: https://registry.serverless-devs.com
    
    ? Привет, Serverless для облачных провайдеров (Используйте стрелки или введите для поиска)
    ❯ Alibaba Cloud Serverless 
      AWS Cloud Serverless 
      Baidu Cloud Serverless 
      Huawei Cloud Serverless 
      Tencent Cloud Serverless 
      Шаблон для Serverless Devs 
  • В этом случае вам нужно выбрать соответствующий вариант и следовать инструкциям. Например, выбрав Alibaba Cloud Serverless, вы увидите категории шаблонов приложений для Alibaba Cloud Serverless:

     ? Привет, пользователь Serverless. Какой шаблон вам нравится? (Используйте стрелки или введите для поиска)
     ❯ Быстрый старт [Развертывание функции "Привет, мир" на FaaS]
       Пример контейнера [Развертывание функции на FaaS с использованием пользовательского контейнера]
       Веб-фреймворк [Развертывание веб-фреймворка на FaaS]
       Статический веб-сайт [Развертывание статического веб-сайта]
       Лучшие практики [Опыт работы с проектом Serverless]
  • Вы можете продолжить выбор конкретного приложения из выбранной категории для инициализации. Например, выбрав Быстрый старт, вы увидите конкретные шаблоны приложений: ```shell script ? Какой шаблон вам нравится? (Используйте стрелки или введите для поиска) ❯ [HTTP] Node.js 14 - Быстрое развертывание функции Node.js 14 HTTP [HTTP] Python3 - Быстрое развертывание функции Python3 HTTP [HTTP] Java8 - Быстрое развертывание функции Java8 HTTP [HTTP] PHP7 - Быстрое развертывание функции PHP HTTP [HTTP] C++ (custom)- Быстрое развертывание функции C++ HTTP [Event] Node.js 14 - Быстрое развертывание функции Node.js 14 Event [Event] Python3 - Быстрое развертывание функции Python3 Event ... ...

    Выберите `[HTTP] Node.js 14`, чтобы завершить создание. В процессе создания проекта могут появиться запросы на ввод имени проекта и выбор ключа:
    - Имя проекта может быть: `start-fc-http-nodejs14`
    - Регион может быть: `cn-hangzhou`
    - Имя сервиса может быть: `hello-world-service`
    - Имя функции может быть: `start-fc-http-nodejs14`
    - Ключ можно выбрать из тех, что были созданы ранее: `alibaba-access`
    
    Например:
    ```shell script 
    🚀 Больше приложений: https://registry.serverless-devs.com
    ? Привет Serverless для облачных провайдеров Alibaba Cloud Serverless
    ? Привет, serverlesser. Какой шаблон вам нравится? Быстрый старт [Развернуть функцию Hello World на FaaS]
    ? Какой шаблон вам нравится? [HTTP] Node.js 14
    
    😋 Команда для создания приложения: [s init devsapp/start-fc-http-nodejs14]
    
    ? Пожалуйста, введите имя вашего проекта (инициализация директории) start-fc-http-nodejs14
    ✔ завершение разархивирования файла выполнено
    ```   Пример приложения Serverless Devs
    
       Необходимые облачные сервисы:
       - FC : https://fc.console.aliyun.com/
    
       Советы:
       - Компонент FC: https://www.serverless-devs.com/fc/readme
    
    Создание приложения в регионе
    ? Регион cn-hangzhou
    Имя сервиса, может содержать только буквы, цифры, подчеркивание и дефис. Не может начинаться с цифры или дефиса. Длина от 1 до 128 символов
    ? Имя сервиса hello-world-service
    Имя функции, может содержать только буквы, цифры, подчеркивание и дефис. Не может начинаться с цифры или дефиса. Длина от 1 до 64 символов
    ? Имя функции start-fc-http-nodejs14
    ? Пожалуйста, выберите псевдоним учетных данных alibaba-access
    
       * Перед использованием, пожалуйста, проверьте, доступны ли команды действий в файле Yaml
       * Тщательное чтение примечаний в s.yaml полезно для использования инструмента
       * Если вам требуется помощь в процессе использования, пожалуйста, подайте заявку для вступления в группу Dingtalk: 33947367    🏄‍ Спасибо за использование Serverless-Devs
    👉 Вы можете [cd /Users/nanxuanli/work/demo/devs/start-fc-http-nodejs14] и наслаждаться вашим путешествием в мире serverless!
    🧭 Если вам требуется помощь для этого примера, вы можете использовать [s -h] после входа в папку.
    💞 Документация ❤ Звезды: https://github.com/Serverless-Devs/Serverless-Devs
    🚀 Больше приложений: https://registry.serverless-devs.com ? Хотите сразу развернуть проект? (Y/n)

Необходимо отметить, что система предлагает возможность развертывания проекта. Введите y, чтобы немедленно развернуть проект. Подождите немного, и вы увидите результат развертывания: shell script helloworld: region: cn-hangzhou service: name: hello-world-service function: name: start-fc-http-nodejs14 runtime: nodejs14 handler: index.handler memorySize: 128 timeout: 60 url: system_url: https://start-fp-nodejs-hello-w-service-uxcvfbhdii.cn-hangzhou.fcapp.run custom_domain: - domain: http://start-fc-http-nodejs14.hello-world-service.1816647648916833.cn-hangzhou.fc.devsapp.net triggers: - type: http name: httpTrigger Теперь вы можете открыть возвращенный вам домен domain для тестирования. ### Искусственный интеллект: обнаружение объектов - Инициализация существующего проекта по обнаружению объектов с помощью искусственного интеллекта: s init devsapp/image-prediction-app, в процессе инициализации могут появиться запросы на ввод имени проекта и выбор ключа: - Имя проекта может быть: image-prediction-app - Ключ можно выбрать из тех, что были созданы ранее: alibaba-access Например: shell script $ s init devsapp/image-prediction-app 🚀 Serverless Awesome: https://github.com/Serverless-Devs/package-awesome ? Пожалуйста, введите имя вашего проекта (директория инициализации) image-prediction-app ✔ файл декомпрессии завершен ? Пожалуйста, выберите псевдоним ключа alibaba-access ___ __ __ _______ _______ _______ | | | |_| || _ || || | | | | || |_| || ___|| ___| | | | || || | __ | |___ | | | || || || || ___| | | | || _ || |_| || |___ |___| |_| |_||__| |__||_______||_______| Добро пожаловать в приложение image-prediction-app Это приложение требует открытия этих служб: FC : https://fc.console.aliyun.com/ Это приложение поможет вам быстро развернуть проект image-prediction-app. Приложение использует компонент FC: https://github.com/devsapp/fc Сайт приложения: https://github.com/devsapp/image-prediction-app 🏄‍ Спасибо за использование Serverless-Devs 👉 Вы можете [cd /Users/jiangyu/start-application/image-prediction-app] и наслаждаться вашим путешествием в облачном вычислении! 🧭 Если вам нужна помощь в этом примере, вы можете использовать [s -h] после входа в папку. 💞 Документация ❤ Звезды: https://github.com/Serverless-Devs/Serverless-Devs

  • Перейти в директорию проекта: cd image-prediction-app
  • Развернуть проект с помощью команды deploy:
    Подсказки для следующего шага
    ======================
    * Отображение информации о развернутых ресурсах: s info
    ```     * Отображение метрик: s metrics
    * Отображение логов: s logs
    * Вызов удаленной функции: s invoke
    * Удаление сервиса: s remove-service
    * Удаление функции: s remove-function
    * Удаление триггера: s remove-trigger
    * Удаление пользовательского домена: s remove-domain
       imageAi: 
      регион: cn-hangzhou
      url: 
        пользовательский домен: 
          - 
            домен: http://server.ai-cv-image-prediction.1583208943291465.cn-hangzhou.fc.devsapp.net
    ```В это время можно открыть тестовый домен, выделенный системой, и загрузить изображение для тестирования:
    ![](https://serverless-article-picture.oss-cn-hangzhou.aliyuncs.com/1635390067198_20211028030108110359.png)### Традиционный фреймворк: проект блога на Django- Инициализация существующего проекта блога на Django: `s init django-blog`, в процессе инициализации могут появиться запросы на ввод названия проекта и выбор ключа:
    - Название проекта может быть: `django-blog`
    - Ключ можно выбрать из тех, что были созданы ранее: `alibaba-access`
    Например:
    ```shell
    $ s init django-blog
    ```    🚀 Serverless Awesome: https://github.com/Serverless-Devs/package-awesome
     ? Пожалуйста, введите имя вашего проекта (инициализация директории) django-blog
    ✔ Распаковка файла завершена
    ? Пожалуйста, выберите alias для учетных данных alibaba-access
          ______       ___  _______  __    _  _______  _______  _______  ___      _______  _______ 
        |      |     |   ||   _   ||  |  | ||       ||       ||  _    ||   |    |       ||       |
        |  _    |    |   ||  |_|  ||   |_| ||    ___||   _   || |_|   ||   |    |   _   ||    ___|
        | | |   |    |   ||       ||       ||   | __ |  | |  ||       ||       ||  _   | |  | |  |
        | |_|   | ___|   ||       ||  _    ||   ||  ||  |_|  || |_|   || | |  | |   |   | |  |_|  |
        |       ||       ||   _   || | |   ||   |_| ||       ||_______|| |_|  | |   |   | |_______|
        |______| |_______||__| |__||_|  |__||_______||_______||_______||______| |_______||_______|
          Добро пожаловать в приложение django-blog
         Это приложение требует открытия следующих служб: 
             FC : https://fc.console.aliyun.com/
         Это приложение поможет вам быстро развернуть проект django-blog.
         Приложение использует компонент Django: https://github.com/devsapp/django
         Сайт приложения: https://github.com/devsapp/django-blog
          * Рекомендуется использовать Python 3. 7;
         * Если версия больше Python 3. 7:             * Операционная ошибка: ImportError: не удается импортировать имя 'metadata' из 'importlib', вы можете обратиться к: https://stackoverflow.com/questions/59216175/importerror-cannot-import-name-metadata-from-importlib
         * По умолчанию:
            * Админ: /admin
            * Имя пользователя администратора по умолчанию: blog
            * Пароль администратора по умолчанию: myblog12345!
       🏄‍ Спасибо за использование Serverless-Devs
    👉 Вы можете [cd /Users/jiangyu/django-blog] и наслаждаться вашим путешествием с использованием serverless!
    🧭 Если вам нужна помощь по этому примеру, вы можете использовать [s -h] после входа в папку.
    💞 Документация ❤ Звезды: https://github.com/Serverless-Devs/Serverless-Devs
  • Войти в директорию проекта: cd django-blog
  • Развернуть проект с помощью команды deploy:
    Подсказки для следующего шага
    ======================
    * Вызов удаленной функции: s invoke
    ✔ Попробуйте ускорение контейнера
    djangoBlog: 
      region:        cn-shenzhen
      serviceName:   serverless-devs-django
      functionName:  django
    ``````yaml

customDomains: - http://django.serverless-devs-django.1583208943291465.cn-shenzhen.fc.devsapp.net

- В это время можно открыть системно выделенный тестовый домен и загрузить изображение для тестирования:
  ![](https://serverless-article-picture.oss-cn-hangzhou.aliyuncs.com/1635390266827_20211028030427642356.png)

Опубликовать ( 0 )

Вы можете оставить комментарий после Вход в систему

1
https://api.gitlife.ru/oschina-mirror/serverless-devs-Serverless-Devs.git
git@api.gitlife.ru:oschina-mirror/serverless-devs-Serverless-Devs.git
oschina-mirror
serverless-devs-Serverless-Devs
serverless-devs-Serverless-Devs
master