Что такое Heroku Ubuntu

Обновлено: 21.11.2024

Heroku — это популярный поставщик платформы как услуги (PaaS), который позволяет разработчикам легко развертывать веб-приложения без участия операционной группы. Heroku существует с 2007 года и теперь принадлежит Salesforce.

В этом разделе представлен обзор того, что такое Heroku и почему разработчик может захотеть его использовать.

Также следует упомянуть любые крупные темы в Heroku и дать ссылки на связанные темы. Поскольку документация для Heroku новая, вам может потребоваться создать первоначальные версии соответствующих разделов.

Создание приложений Heroku

Вы можете использовать команду heroku create для создания приложения Heroku. Каждое приложение, которое вы развертываете на Heroku, имеет собственную кодовую базу, переменные среды, надстройки и т. д.

Каждое приложение Heroku имеет глобально уникальное имя. Если вы попытаетесь создать приложение Heroku, имя которого уже занято, вы получите сообщение об ошибке.

Вот как вы можете создать новое приложение Heroku:

Если вы не укажете имя приложения при запуске heroku create , Heroku создаст для вас случайное имя приложения.

Вы также можете указать регион Amazon, в котором должно быть создано ваше приложение Heroku. По умолчанию все приложения Heroku создаются в регионе США. Если вы хотите изменить регион, вы можете сделать это, создав приложение следующим образом:

Сейчас есть только два общедоступных региона: us и eu (Европа).

Установка или настройка

Для локального создания и управления приложениями Heroku вам понадобится набор инструментов Heroku. Вот несколько способов его получить.

Скачать

Загрузите программу установки Heroku Toolbelt с веб-сайта Heroku.

Домашнее пиво

Установите heroku с помощью brew:

Дебиан/Убунту

Запустите этот скрипт:

Этот сценарий добавляет репозиторий Heroku в apt, устанавливает ключ выпуска Heroku, устанавливает набор инструментов Heroku, а затем устанавливает Ruby, если вам это нужно.

Как и в случае с любым скриптом, который вы найдете в Интернете и передадите напрямую в bash, мы настоятельно рекомендуем вам сначала прочитать исходный код.

Автоматизированная система сборки Heroku упрощает и ускоряет процесс сборки для разработчиков. Чтобы развернуть приложение, Heroku требуется от разработчика всего три вещи: исходный код, список зависимостей и «Procfile» (текстовый файл, указывающий, какую команду следует использовать для запуска кода). Система сборки берет приложение, его зависимости и среду выполнения языка и создает «слаг». Слаг содержит все необходимое для запуска приложения, кроме операционной системы.

Heroku запускает приложение, развертывая слаг на динамометре (или наборе динамометров) и вызывая команду, указанную в Procfile.

Heroku — это многоязычная платформа с первоклассной поддержкой восьми языков и расширяемой системой сборки, поддерживающей многие другие языки. Система сборки будет включать соответствующие активы для каждого языка. Например, если приложение написано на Go, слаг будет содержать скомпилированные двоичные файлы Go. Приложение, развернутое на Ruby, будет содержать код Ruby, зависимости gemfile и среду выполнения Ruby.

Пакеты сборки Heroku позволяют разработчикам расширять систему сборки Heroku для поддержки других языков или настроек.

Последним компонентом, необходимым для запуска приложения, является операционная система. В Heroku это называется «стеком» — образом операционной системы, созданным и поддерживаемым Heroku. Стек основан на Ubuntu, дистрибутиве Linux с открытым исходным кодом.

Одной из основных причин, по которой мы выбрали Heroku, является минимальный объем работы, необходимый для запуска приложения Ruby on Rails на платформе Heroku. С Heroku так легко начать работу.

Джон Герхардт, ведущий инженер, Contactually История Contactually →

Благодаря встроенной поддержке Heroku для Node.js мы можем повысить производительность за счет значительного сокращения вызовов API к Salesforce и минимизации накладных расходов на наше основное приложение AngularJS через прокси-приложение, встроенное в Node.js, работающее на Heroku.

Даррел Стоун, инженер, Университет Наций История Университета Наций →

Возможность развертывания приложений разных типов на разных языках — это огромная победа для нас. Сборочные пакеты Heroku упрощают развертывание приложений без необходимости настройки базовой инфраструктуры на виртуальной машине. Нам это нравится.

Энтони Иден, основатель, DNSimple История DNSimple →

В этой статье мы научимся устанавливать и настраивать Heroku, размещая веб-сайт PHP.

Оглавление

Предпосылки

CLI Heroku требует установленного Git, если у вас не установлен git, вы можете выполнить шаги по установке git на Ubuntu здесь.

Что такое Героку?

Heroku — это облачная платформа как услуга (PaaS), которая позволяет разработчикам создавать, запускать, развертывать и масштабировать приложения непосредственно в облаке, не беспокоясь о разработке и обслуживании инфраструктуры. Он поддерживает несколько языков программирования, прост в использовании и управлении. Таким образом, вы можете сосредоточиться только на своем приложении, не беспокоясь ни о чем другом!

Как зарегистрироваться на Heroku?

Страница регистрации Heroku

После того, как вы зарегистрируетесь, мы можем приступить к установке Heroku CLI.

Как установить командную строку Heroku в Ubuntu?

CLI Heroku (интерфейс командной строки) используется в операциях Heroku путем выполнения команд в терминале. Одним из способов установки Heroku CLI является использование оснастки. Чтобы установить Heroku CLI, выполните следующую команду:

Версия автоматически обновляется в случае установки через оснастку. Кроме того, вы можете установить его без использования команды snap, выполнив команду curl с помощью sudo:

Если вы получили сообщение об ошибке, в котором говорится, что команда curl не найдена, установите curl, выполнив sudo apt install curl . В отличие от метода Snap, метод curl не обновляется автоматически, но может быть обновлен вручную с помощью команды apt.

Как развернуть статический веб-сайт с помощью интерфейса командной строки Heroku в Ubuntu?

После того как вы установили CLI Heroku в своей системе, мы можем настроить его для статического веб-сайта. Мы создадим приложение PHP для развертывания статического веб-сайта. Проверьте установленную версию Heroku CLI, выполнив:

Шаг 1. Создайте новый каталог для нашего статического веб-сайта и измените на него активный каталог.

Шаг 2. Затем мы создали файл about.html в каталоге my-web со следующим содержимым:

Шаг 3. Затем мы создали файл index.php со следующим содержимым:

Шаг 4. Затем мы создаем файл с именем composer.json, в котором указываются зависимости любого типа, необходимые в определенном разделе, поскольку мы создаем простой статический веб-сайт (он может иметь html, css, несколько изображений…), мы оставит его пустым, выполните:

Шаг 5. Затем инициализируйте его как репозиторий git, выполнив команду git:

Шаг 6. Теперь перейдите на панель инструментов Heroku и создайте новое приложение.

Панель управления Heroku

Затем введите имя для своего приложения, выберите регион из списка доступных регионов и нажмите «Создать приложение». В этой статье мы назвали наше новое приложение newapp-my-web.

Создание нового приложения

Шаг 6. Войдите в интерфейс командной строки Heroku. Теперь вернитесь к терминалу и введите следующую команду, чтобы войти в CLI Heroku, используя учетную запись Heroku.

После этого вы увидите нечто похожее на изображение ниже. Нажмите любую клавишу, чтобы запустить браузер для аутентификации.

Нажмите любую клавишу, чтобы запустить браузер

Затем нажмите «Войти», чтобы войти в интерфейс командной строки Heroku, используя свою учетную запись Heroku.

Нажмите Войти

Вы вошли в Heroku CLI

Шаг 7. Подключите локальный репозиторий git к приложению Heroku. Теперь, чтобы подключить наш локальный репозиторий git к нашему приложению Heroku, выполните:

Подключение локального репозитория к Heroku

Шаг 8. Теперь отправьте изменения в приложение Heroku. Чтобы внести изменения в приложение Heroku, выполните следующие команды:

Отправить изменения в приложение Heroku

Поздравляем! Мы успешно развернули статический веб-сайт на Heroku!

Статический веб-сайт, размещенный на Heroku

Заключение

Установить CLI Heroku и настроить его в Ubuntu очень просто. Мы можем развернуть статический веб-сайт на Heroku, создав приложение PHP. Точно так же мы можем размещать приложения php, nodejs, python, ruby...

Вы можете тестировать и развертывать приложения Heroku из конвейеров Buildkite.

Для конвейеров на основе GitHub вы можете использовать функцию автоматического развертывания Heroku, чтобы развернуть ветку после того, как Buildkite пометит фиксацию как «пройденную». Чтобы начать работу с автоматическим развертыванием: включите его на панели инструментов Heroku, установите флажок «Подождать, пока CI пройдет перед развертыванием», и когда Heroku увидит проходящий статус фиксации Buildkite, он автоматически выполнит слаговое развертывание. Вы также можете автоматически развертывать запросы на вытягивание с помощью Review Apps.

Если вы не используете GitHub или вам нужен дополнительный контроль над развертыванием, это руководство проведет вас через шаги, необходимые для выполнения ручного развертывания с помощью git push . Вы также можете использовать эти методы для создания конвейеров для задач heroku cli, которые вы хотите автоматизировать.

На этой странице:

Настройка интерфейса командной строки Heroku (CLI)

Вы можете выполнить развертывание на Heroku с помощью той же команды git push, которую вы запускаете на своем компьютере для разработки.

Первый шаг — установка интерфейса командной строки Heroku на компьютер с агентом Buildkite. Например, вот как это можно сделать на компьютере с агентом Linux:

Вы можете найти установщики OSX и Windows здесь.

А теперь проверьте правильность установки, проверив версию:

Вы должны увидеть номера версий для пакетов heroku-toolbelt и heroku-cli.

Следующий шаг — вход с помощью интерфейса командной строки и учетных данных Heroku. Мы рекомендуем создать нового пользователя в Heroku, которого вы будете использовать только для этой цели («пользователь компьютера»). Чтобы создать пользователя компьютера в Heroku, зарегистрируйтесь в Heroku как новый пользователь, а затем добавьте этого пользователя в качестве соавтора в существующее приложение Heroku.

Если вы готовы войти в систему с учетными данными пользователя Heroku, убедитесь, что вы работаете как пользователь buildkite-agent (для большинства пакетов это «buildkite-agent»), а затем выполните команду входа в heroku:

Теперь вы готовы запускать команды heroku в конвейерах Buildkite! 🎉

Настройка конвейера сборки

В конвейере добавьте командный шаг для развертывания. Ограничьте его веткой, которую вы хотите развернуть, и добавьте команды для отправки в Heroku:

Что здесь происходит? heroku git:remote гарантирует, что удаленный Git всегда указывает на правильное приложение Heroku и не имеет старого значения из предыдущих сборок. git push указывает точную фиксацию, чтобы убедиться, что мы отправляем ту же фиксацию, которую тестировали.

Запуск сборки

После того как вы сохранили настройки пайплайна, последним шагом будет отправка коммита в ветку master и его автоматическое развертывание в Heroku:

Скрипты после развертывания

Если вы хотите запускать задачи после развертывания, например выполнение миграции базы данных, вы можете добавить этап ожидания и дополнительный командный этап, использующий запуск heroku, например:

Заметили опечатку? Что-то пропало? Пожалуйста, откройте вопрос или добавьте обновление.

Читайте также: