Heroku є однією з найпопулярніших хмарних платформ як сервіс (PAAS). Це була одна з перших хмарних платформ, яка існує з 2007 року. Вона популярна завдяки підтримці різноманітних мов, включаючи Ruby, Python, Java, Node.js, Scala та PHP. А також тому, що він дозволяє платити лише за ресурси, які ви використовуєте, і пропонує базу даних як послугу разом із кількома розширеними додатками для гнучкості.
У цьому підручнику ми розгорнемо просту програму PHP, яку ми розгорнемо на Heroku за допомогою стрічки інструментів. Щоб почати з цим, вам потрібно створити обліковий запис на Heroku. Не хвилюйтеся, створити обліковий запис на Heroku можна безкоштовно тут.
Після успішної реєстрації вам потрібно буде встановити файл Пояс інструментів Heroku. (Heroku добре задокументував процедуру встановлення стрічки для інструментів на тій же сторінці). Після встановлення стрічки інструментів вам потрібно увійти, використовуючи свою електронну пошту та пароль (тобто ваші облікові дані Heroku).
У цьому підручнику ми використовували ОС Ubuntu разом із терміналом. Але ви можете встановити Heroku toolbelt на Windows, а також Mac OS X. Увійдіть за допомогою цієї команди:
[html]
$ heroku вхід
[/ html]
Вам буде запропоновано ввести свою електронну адресу та пароль.
Після того, як ви успішно ввійшли. Ви отримаєте повідомлення «Автентифікація успішна».
Тепер вам потрібно завантажити свій SSH ключі від Heroku. Якщо ви не створили ключі SSH, будь ласка зверніться до цього.
Для створення ключів SSH використовуйте команду:
[html]
$ ssh-keygen -t rsa
[/ html]
Це повинно генерувати публічну/приватну пару ключів SSH. Тепер додаємо ваші ключі SSH до Heroku:
[html]
$ heroku keys: add
[/ html]
Тепер ви успішно налаштували ремінь для інструментів Heroku на своїй машині.
Демо: розгортання програми PHP на Heroku
У цій демонстрації ми створимо просту програму PHP, яка буде друкувати phpinfo(); ось код для index.php
[PHP]
<?php
луна «привіт, світ»;
PHPInfo ();
?>
[/ PHP]
Збережіть цей файл у новій папці «myapp». Використовуючи cmd, `cd` у нову папку.
[html]
$ mkdir мій додаток
$ cd моє додаток
[/ html]
Переконайтеся, що ви додали 'index.php' в файл папка "myapp"..
Тепер вам потрібно ініціалізувати git у цій новій папці, використовуючи:
[html]
$ git init
[/ html]
Тепер, коли папка ініціалізована, вам потрібно зафіксувати репо:
[html]
$ git додати .
$ git commit -m «Початковий»
[/ html]
Тепер вам потрібно створити програму Heroku і завантажити її в Heroku за допомогою цих команд:
[html]
$ heroku створити
[/ html]
Це створить програму Heroku і виведе URL-адресу вашої нової програми Heroku.
Тепер ви можете завантажити свою програму в Heroku за допомогою:
[html]
$ git push heroku master
[/ html]
Це виявить створений файл 'index.php' і створить екземпляр, пов’язаний із сервером Apache. Він виведе URL-адресу програми. І ви успішно розгорнули свою програму PHP на Heroku. Демонстраційна програма, створена в цьому посібнику, доступна за адресою http://agile-garden-9901.herokuapp.com/.
Ви можете розміщувати повноцінні веб-сайти на Heroku. Разом із програмами баз даних, які ми створимо у другій частині цього посібника. Для будь-яких питань або сумнівів, будь ласка, скористайтеся формою коментарів, наведеною нижче.
Велике спасибі за це детальне та зрозуміле пояснення….heroku можна встановити в будь-якій ОС……… я використовую Windows 7…
Так, ми згадували, що ви можете використовувати Windows, Linux або Mac OS X :)
я виконав інструкції, які ви дали. Але я постійно отримую помилку, що не виявлено додаток, який підтримується кедрою. Чи можете ви допомогти мені, будь ласка, дякую заздалегідь
Привіт Гету!
Я припускаю, що проблема пов’язана з вашим каталогом .git. Чи можете ви спробувати видалити каталог .git і повторно створити його за допомогою `git init`.
Будь ласка, повідомте мені, як це вийшло для вас.
Спасибі,
Вірендра Раджпут
Гарно викладений підручник. Але у мене є запитання: я використовую Windows 8 і несумісна з багатьма іншими програмами. Чи буде він сумісний з Heroku?
Він повинен працювати на Windows 8 – спробуйте. Встановити Пояс інструментів Heroku і повідомте нам, якщо у вас виникнуть проблеми.
@Sajesh @Rajesh Namase..Так..він працює на Windows 8..дякую за [захищено електронною поштою] вищезгаданий інструмент успішно працює на платформі Windows 8 і, безумовно, працюватиме і на Windows 7. Дякую
привіт,
Ваша стаття дійсно гарна. Але у мене виникла проблема, коли я намагався натиснути за допомогою git push heroku master. Вона не працює і тримається надовго.
Чи можете ви сказати мені, в чому може бути проблема
Дякую
М.Шрідеві
Ви отримуєте помилку? Поділіться, будь ласка, відстеженням помилки.
Спасибі,
Вірендра Раджпут
Велике спасибі. Спочатку я заплутався з розгортанням програми PHP на Heroku. Дотримувався цього підручника. І це зроблено зараз. Велике спасибі.
для початку я точно дотримувався того, що ви зробили. На останньому кроці, коли я мав завантажити зразок програми php за допомогою команди: $ git push heroku master
Я отримав повідомлення про помилку: у дозволі відмовлено (Publickey)
фатально: не вдалося прочитати зі сховища :(
до цього все було гладко.
Я вважаю, що це може бути пов'язано з адміністратором в ОС Windows. Навіть якщо так, я не знаю, як з цього вийти.
Пс. Я навіть спробував запустити термінал «Як адміністратор». Нічого доброго не сталося
Будь ласка, допоможіть
Під час спроби розгорнути свою програму, розроблену в php codeigniter, я можу розгорнути проект, але потім я отримую цю помилку:
Сталася помилка
Не вдалося завантажити запитаний файл: helpers/asset_helper.php
Може хтось допоможе
Привіт Абдул!
Ви перевірили, чи є файл `asset_helper.php` у каталозі допоміжних програм, якщо він уже присутній. Перевірте, чи використовує оператор `require` для імпорту цього файлу відносний шлях.
З повагою,
Вірендра Раджпут
Мені вдалося позбутися цієї проблеми, насправді допоміжної бібліотеки не було. Але як імпортувати базу даних mysql у heroku (безкоштовну).
Привіт Абдул!
Ви не можете використовувати mysql на Heroku. Вам доведеться перейти на використання Postgresql.
З повагою,
Вірендра Раджпут
У мене виникла проблема з перевіркою виставлення рахунків на heroku, коли я вводжу облікові дані картки, з’являється помилка «Мережа процесора 3000 недоступна – спробуйте ще раз»
Я перевірив це проблема з постачальниками послуг.
у вас є уявлення про те, як це зробити?
не знаю, чому я не можу завантажити файли. Здається, у мене немає доступу до свого комп’ютера
не знаю, чому я не можу завантажити файли. Здається, у мене немає доступу до свого комп’ютера.
Я отримав помилку:
У дозволі відмовлено (Publicickey)
фатально: не вдалося прочитати зі сховища
Вам потрібно завантажити свій відкритий ключ до Heroku:
ключі heroku: додайте ~/.ssh/id_rsa.pub
Якщо у вас немає відкритого ключа, Heroku запропонує вам додати його автоматично, що працює без проблем. Просто використовуйте:
ключі heroku: дод
дайте мені знати, чи це працює!
Гарний посібник, але що робити, якщо я хочу встановити joomla для свого веб-сайту, як цього досягти?
Привіт…. Я працюю з Windows і виявив, що eerything працювало нормально до останнього кроку git push heroku master
C:\Users\Larry\myapp>git push heroku master
Введіть парольну фразу для ключа '/c/Users/Larry/.ssh/id_rsa':
Ініціалізація сховища, готово.
помилка: src refspec master не відповідає жодному.
помилка: не вдалося надіслати деякі посилання на '[захищено електронною поштою]:morning-plains-5813.git'
Я дотримувався вашого підручника весь шлях і успішно розгорнув додаток. Однак мені довелося тільки зараз перезавантажити комп’ютер, і коли я відкрив термінал, він більше не був налаштований на процес heroku. Як мені повернутися до статусу «Ale» для розгортання?
Я знаю, що це може здатися дурним, але для мене це дуже важко, оскільки я не використовую командний рядок, крім цього одного проекту. Я ціную допомогу. Дуже дякую
Хоча Heroku також чудово підходить для розгортання програм PHP, чи використовували ви також платформу хостингу Cloudways PHP? Він схожий на Heroku, оскільки це рішення PaaS, але за допомогою їхньої платформи ви можете розміщувати та розгортати PHP-додаток на керованих серверах, щоб вам не потрібно було встановлювати ОС або стекувати самостійно. Це заощаджує багато часу, який замість цього витрачався б на налаштування та керування сервером.