Uploaded by Николай Хрисанов

ОВ лаб02 PaaS

advertisement
Лабораторная работа № 2
Сервис PaaS для создания приложений
Цель работы: Получение навыков создания Web приложений на языке
PHP с использованием PaaS (платформа как сервис), облачного сервиса,
предоставляемого на сайте www.heroku.com.
Теоретический материал.
Сервис PaaS (платформа как сервис) предназначен для размещения и
запуска приложений в сети Internet. Под платформой понимается набор
программ, которые необходимы для запуска приложения. Например, для
запуска приложения, написанного на языке Java, на компьютере должна быть
установлена Java-машина, которая является платформой для программ на
языке Java. Для запуска интернет-приложений необходим следующая
платформа, т.е. набор следующих программ – Web сервер (Apache, Nginx и
др), интерпретатор или исполняемая среда для серверного языка (PHP, Java,
C++ и др.), система управления базами данных (MySQL, Oracle и др.).
В лабораторной предлагается использовать следующую платформу - Web
сервер Apache, PHP-машина, СУБД MySQL, которая предоставляется на сайте
www.heroku.com.
PaaS на сайте www.heroku.com является открытой, стандартизованной
средой для создания, эксплуатации и администрирования веб- и мобильных
приложений в облаке. Сервис поддерживает многие популярные языки
программирования для веб-приложений, в том числе: PHP, Java, С#, Ruby.
На рисунке ниже показано взаимодействие Web приложения с сервисом
PaaS на сайте www.heroku.com.
Приложение создается на клиентском компьютере и загружается на сайт
www.heroku.com с помощью загрузчика heroku.exe, предоставляемого этим
сервисом, где производится окончательная отладка и запуск приложения. Для
ускорения разработки приложения (загрузка его на сайт может занимать
достаточно длительный промежуток времени), рекомендуется на клиентском
компьютере создать аналогичную используемой в облаке платформу.
Клиент
Web приложение
Web
браузер
PaaS Heroku.com
Denwer
(Apache, PHP,
MySQL)
Загрузчик
(heroku.exe)
FrameWork (Simfonia), CMS (Joomla)
Web сервер (Apache)
PHP - машина
СУБД (MySQL)
Операционная система (Linux)
IaaS
Один из вариантов создания платформы для лабораторной – это
использования программы Denwer ( http://www.denwer.ru/ ), с помощью
которой можно создать на локальном компьютере платформу для создания
Web приложений (с другими программами для создания локального Web
сервера
можно
ознакомиться
на
https://timeweb.com/ru/community/articles/luchshie-lokalnye-servery).
сайте
На
установленном локальном сервере производится создание и основная отладка
приложения перед его загрузкой в облако.
После установки Denwer, проверить доступность PHP машины
выполнением в командной строке Windows следующей команды php -v или
php --version:
c:\>php --version
PHP 7.4.6 (cli) (built: May 12 2020 11:38:54) ( ZTS
Visual C++ 2017 x64 )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
Перед этим, возможно, придется прописать в системной переменной
path пути к файлу php.exe и к библиотеке дополнительных функций php,
которая обычно находится в папке ext, это зависит от того, какой локальный
сервер будет выбран. Эти пути примерно могут выглядеть следующим
образом:
C:\...\php;
C:\...\php\ext.
Доступ
переменной производится через Панель управления,
к
системной
далее Система и
безопасность – Система – Дополнительные параметры системы –
Переменные среды – Системные переменные (Windows 10).
Методика выполнения лабораторной.
Зарегистрироваться на сайте www.heroku.com .
После входа на сайт под своим аккаунтом, используя меню в правом
верхнем углу, выбрать пункт Documentation.
В следующем окне выбрать язык программирования, в данном случае
PHP.
Далее рекомендуется пройти все этапы по работе с сервисом, используя
демо-версию приложения. В следующем окне перейти по ссылке Get started
with PHP.
В следующем окне указано, что для дальнейшей работы необходимо
установить PHP машину и систему управления зависимостями для языка PHP
- Composer. PHP машина будет доступна, если установить Denwer. Composer
можно скачать перейдя по ссылке https://getcomposer.org/
Setup.exe).
После
инсталляции
можно
проверить
(Composer-
работоспособность
программы Composer, выполнением в командной строке Windows следующей
команды:
c:\>composer --version
Composer version 2.0.11 2021-02-24 14:57:23
Далее выбрать I’m ready to start.
На следующем окне приведены ссылки для загрузки программ git и
загрузчика heroku.
Программа git – это популярное средство для контроля над версиями, ее
применение при использовании сервиса PaaS на heroku.com обязательно.
Адрес
для
скачивания
программы
-
https://git-
scm.com/download/win . Программа устанавливается запуском файла
Git-2.30.2-64-bit.exe. После инсталляции проверка выполняется
командой git --version в командной строке Windows.
c:\>git --version
git version 2.30.2.windows.1
С программой git поставляется утилита git
которой
необходимо
указать имя и
config, с помощью
действующий почтовый
адрес
пользователя:
c:\>git config --global user.name "stvt"
c:\>git config --global user.email stvt@mail.ru
Текущие настройки программы можно посмотреть с помощью команды
git config –list:
c:\>git config --list
core.symlinks=false
core.autocrlf=true
. . .
user.name=stud
user.email=stud@mail.ru
color.ui=true
Загрузчик
heroku
доступен
по
ссылке
https://cli-
assets.heroku.com/heroku-x64.exe . После инсталляции загрузчика
в командной строке Windows выполнить команду:
c:\>heroku -v
heroku/7.41.1 win32-x64 node-v12.16.2
После инсталляции всех программ и проверки их функционирования
вернуться на сайт heroku.com и нажать кнопку (I have installed Heroku CLI –
интерпретатор командной строки heroku установлен).
Следующий этап – загрузка (клонирование) демо-версии приложения.
Сначала необходимо создать папку для приложений, например
c:/heroku.
В командной строке Windows перейти в новь созданную папку.
c:\>cd c:/heroku
Выполнить команду клонирования демо-версии приложения в созданную
папку.
c:\heroku>git clone https://github.com/heroku/phpgetting-started.git
Cloning into 'php-getting-started'...
remote: Enumerating objects: 198, done.
. . .
Receiving objects: 100% (198/198), 53.56 KiB | 86.00
KiB/s, done.
Resolving deltas: 100% (87/87), done.
После выполнения команды клонирования, в папке c:/heroku будет
создана папка php-getting-started с демо-версией приложения.
Следующий этап – развертывание (deploy) приложения в облаке
Вначале на основе загруженного кода создается heroku приложение. Для
этого перейти в папку приложения и выполнить команду heroku create.
c:\heroku\cd php-getting-started
c:\heroku\php-getting-started>heroku create
Creating app... done, ⬢ thawing-lake-42726
https://thawing-lake-42726.herokuapp.com/
|
https://git.heroku.com/thawing-lake-42726.git
Далее созданное приложение загружается в облако:
c:\heroku\php-getting-started>git push heroku main
Counting objects: 184, done.
Delta compression using up to 4 threads.
. . .
To https://git.heroku.com/evening-beyond-67969.git
* [new branch]
main -> main
Масштабирование задаем равным единице, т.е. в облаке будет
запускаться одна копия приложения.
c:\heroku\php-getting-started>heroku ps:scale web=1
Scaling dynos... done, now running web at 1:Free
Запускаем приложение:
c:\heroku\php-getting-started>heroku open
В браузере должна загрузиться главная страница демо-приложения:
В адресной строке браузера будет адрес этого приложения в сети https://evening-beyond-67969.herokuapp.com/,
автоматически
присвоенный ему сервисом heroku.
Произведем небольшие изменения в проекте. В папке приложения
C:\heroku\php-getting-started\web\views
найдем
файл
index.twig и загрузим его в текстовый редактор (в этом файле находится
основное содержимое главной страницы).
Заменим строку
<h1>Getting Started with PHP on Heroku</h1>
на строку
<h1>Запускаем приложение PHP на Heroku</h1>
С помощью системы контроля версий git фиксируем произведенные
изменения:
c:\heroku\php-getting-started>git commit -m ’eng-rus’
В команде фиксации изменений обязательно необходимо указывать
комментарии к изменениям, в данном случае это ’eng-rus’.
Заново загружаем приложение в облако:
c:\heroku\php-getting-started>git push heroku main
Перезагружаем приложение в браузере:
Задание на лабораторную.
1. Создать аккаунт на сайте heroku.com.
2. Выполнить все действия по установке программного обеспечения и
создания собственного приложения на основе демо-версии.
3. На главной странице приложения привести сведения о собственной
бригаде.
4. В качестве отчета прислать ссылку на свое приложение на сайте
heroku.com.
Download