Развертывание http-сервиса OneScript на Raspberry Pi

Публикация № 821434

Разработка - Языки и среды - OneScript

web http-сервис raspberry pi OneScript

В статье описан процесс настройки, а также процесс развертывания http-сервиса (web-приложения) OneScript на Raspbian (Raspberry Pi 2).

Введение
Идея попробовать установить OneScript на устройство типа Raspberry Pi возникла у меня давно, однако сей эксперимент постоянно откладывался, ввиду различных обстоятельств. И вот, улучив момент, когда ребенок смотрел мультфильмы, я наконец-таки решил попробовать. О том, что из этого получилось - читайте ниже. 

Приборы и материалы
В качестве устройства, в экспериметах использовался Raspberry Pi 2.
В качестве операционной системы, на которую производилась установка, использовалась Raspbian OS. Само устройство, поддерживает достаточно большое количество операционных систем, среди которых есть и Ubuntu без графического интерфейса. Конечно, для практического использования - это более правильный вариант, однако, ввиду того, что экспериментальное устройство принадлежит ребенку, и количество времени, выделенное на эксперимент было ограничено, было принято решение использовать уже установленную ОС.
Поскольку Raspbian OS имеет в своей основе Debian, настройка системы мало отличается от настройки Ubuntu Server, описанной в соответствующей статье. Соответственно, моменты одинаковые для обеих ОС, подробно рассматриваться не будут. 

Настройка системы
Получаем доступ к командной строке
Как и в случае с Ubuntu Server, Вы можете подключиться к устройству при помощи клиента SSH, предварительно разрешив подключения в ОС, или запустить штатный LXTerminal из графической оболочки.

Обновляем список доступных пакетов и устанавливаем новые версии
В командной строке выполняем следующие команды:
 

sudo apt-get update
sudo apt-get upgrade


Устанавливаем mono
Сначала я попробовал установить mono из штатного репозитария, однако, как впоследствии выяснилось, версия mono в нем старая, и ядро OneScript завершало работу с ошибкой, поэтому необходимо подключить репозитарий mono-project.
Поиск в google выдал необходимую ссылку с инструкцией.
Обратите внимание, что ссылки для Raspberry отличаются от тех, которые используются для подключения репозитария x86.
Для подключения репозитария, в командной строке выполняем нижеследующие команды:

sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3FA7E0328081BFF6A14DA29AA6A19B38D3D831EF 
echo "deb http://download.mono-project.com/repo/debian wheezy main" | sudo tee /etc/apt/sources.list.d/mono-xamarin.list 
sudo apt-get update && apt-get upgrade 

Для установки mono выполняем:
 

sudo apt-get install mono-complete

Установка web-сервера
Не смотря на то, что для Raspbian есть и apache и mod-mono, и вроде-бы все должно быть хорошо, гугл выдал некоторое количество публикаций, в которых говорится о проблемах с использованием mod-mono server на Raspberry. Поэтому было принято решение, использовать в качестве web-сервера XSP (к тому-же установка apache и mono-mod-server уже описана в другой статье). Это простой web-сервер, который как правило используется для разработки и отладки, однако, он может быть успешно применен и в продуктивных средах в связке с ngix. Поскольку время эксперимента, а также файловые ресурсы на SD-карте устройства были ограничены, я ограничился установкой только XSP.
Для установки XSP, в командной строке выполните следующую команду:
 

sudo apt-get install mono-xsp4

Развертывание приложения
В качестве приложения для развертывания было выбрано приложение, описанное в этой статье (//infostart.ru/public/792995/).
В папке /home/pi, была создана папка onescript, куда и было разархивировано содержимое архива приложения.
После распаковки, файл Web.config был переименован в _Web.config, а файл web.config.linux соответственно в web.config.

Запуск приложения
Поскольку web-сервер XSP не является службой (демоном), запуск web-сервера был произведен "вручную".
Для запуска, необходимо перейти в папку с web-приложением: 

cd /home/pi/onescript


и запустить web-сервер

xsp4


После старта, web-сервер сообщит нам информацию, необходимую для доступа к web-приложению

После ввода в браузере соответствующего url, мы увидим наше web-приложение.

Для автоматического старта XSP при старте ОС, необходимо внести небольшие изменения в загрузочные скрипты, однако в силу того, что я не тестировал эти настройки, эта тема выходит за рамки настоящей статьи.

Заключение 

OneScript, в частности http-сервисы, можно вполне успешно использовать на устройствах Raspberry Pi, версии >= 2. Это может быть полезно в тех случаях, когда использовать отдельный компьютер или виртуальную машину нецелесообразно (ну и в конце концов - просто интересно :)).

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. nomadon 393 23.04.18 14:05 Сейчас в теме
Хорошо что малинка начала на инфостарте появляться:)
Ждем появления апача с модулем so на домашнем роутере и реверс прокси на старый адроид (заголовок: "Когда заблокировали Azure, но в 1с очень нужно или как мы собрали кластер серверов из подручного железа")
zarankony; +1 Ответить
2. Alsegan 24.04.18 22:35 Сейчас в теме
А никто не задавался вопросом,может ли быть профит от развертывания 1С на 30 соединенных малинках и будет ли это работать? А то знаю , что из нескольких машинок собирают минисупер компьютеры, но не знаю есть ли применение таким сборкам кроме как в математических вычислениях.
3. blackhole321 1189 25.04.18 06:56 Сейчас в теме
(2) на счёт 1с -вряд ли. Я давным давно пытался развернуть 1С 8.3 файловую с использованием ExaGear (http://raspberrypi.ru/blog/644.html). Появлялся не то splash screen, не то окно логина и все намертво висло.
А так, можно делать штуки типа https://infostart.ru/public/669242/
5. UtrobinMV 14.05.18 13:06 Сейчас в теме
(2)
А никто не задавался вопросом,может ли быть профит от развертывания 1С на 30 соединенных малинках


Я думаю, если умножить стоимость серверной лицензии установленной на малинку на 30 раз, то "профита" точно никакого не будет! ;-)
6. olegmedvedev 14.05.18 13:38 Сейчас в теме
(5) а зачем ставить серверную лицензию 30 раз?
8. UtrobinMV 22.05.18 10:28 Сейчас в теме
(6)потому что 30 серверов (малинок)
9. olegmedvedev 22.05.18 10:34 Сейчас в теме
(8)я не совсем в теме - поэтому вопрос - а эта штукень в 30 штук разве не может работать параллельно (одна ОСь на 30 штук)? или точно есть необходимость на каждую малинку ставить свою ОСь?
10. UtrobinMV 23.05.18 18:41 Сейчас в теме
(9)Вопрос выходит за рамки данной конференции.
7. UtrobinMV 22.05.18 10:28 Сейчас в теме
11. Voblhned 51 07.02.19 19:39 Сейчас в теме
мне было интересно на Расбери фаловую базу залить самопись, и веб к ней. Там чисто 3 клиента и объем мизерный, серв в таком случае ставить или комп нецелесообразно, а закинуть базу размером 15мб и кинуть ее на роутер просто идеальный вариант.
Оставьте свое сообщение

См. также

Смена паролей всем локальным пользователям Windows с помощью OneScript

Windows OneScript Пароли Бесплатно (free)

Скрипт, который меняет пароли всем локальным пользователям Windows и сохраняет их в файле. Есть функция генерации пароля, можно задать длину пароля.

18.08.2020    524    info1i    7    

Swagger для 1С.

OneScript WEB Бесплатно (free)

Решение для формирования Swagger спецификаций, описывающих HTTP сервисы конфигураций 1С.

21.10.2019    13245    botokash    45    

Автоматическое сравнение-объединение баз данных с мини-конфигурацией

OneScript v8 Бесплатно (free)

Представляю вашему вниманию скрипт на OneScript для автоматического сравнения-объединения по правилам ("мержевания") конфигураций нескольких баз с мини-конфигурацией.

14.10.2019    3069    artkor    2    

АИТП. Подсистема взаимодействия с рабочими серверами OneScript

OneScript v8 Бесплатно (free)

В статье описан механизм взаимодействия конфигурации АИТП с рабочими серверами OneScript.

22.05.2019    5439    blackhole321    33    

1Script.Web. Интернет-приложения на языке 1С

WEB OneScript Инструментарий разработчика v8 Бесплатно (free)

Запросы рынка таковы, что любое современное клиент-серверное приложение должно иметь веб-интерфейс. Почему бы не писать такие приложения на языке 1С? Андрей Овсянкин расскажет о возможностях разработки веб-приложений на базе 1Script, рассмотрит перспективы этого направления и в качестве демонстрации покажет «боевое» веб-приложение на новом движке – кроссплатформенную консоль администрирования парка кластеров 1С.

20.05.2019    20672    Evil Beaver    33    

Создание высокодоступной фермы рабочих серверов OneScript в ОС Centos 7

OneScript Бесплатно (free)

В статье описана методика создания высокодоступной фермы рабочих серверов OneScript, для конфигурации АИТП.

14.05.2019    4795    blackhole321    0    

Разворачиваем рабочий сервер OneScript для конфигурации АИТП

OneScript v8 Бесплатно (free)

В статье описана методика развертывания рабочего сервера OneScript для конфигурации АИТП, на ОС CentOS 7.

09.05.2019    6315    blackhole321    0    

Хостим OneScript.Web приложение (heroku)

OneScript Бесплатно (free)

Развертывание oscript.web в heroku.

19.12.2018    6582    pallid    6    

Хостим OneScript.Web приложение

OneScript Бесплатно (free)

Удобная возможность для размещения своего OneScript.Web приложение, это завернуть его в docker. Остается вопрос: где разместить контейнер, сделать это можно на vscale или DO, но хочется упростить и не делать установку самого docker на хосте. Один из вариантов - это сервис now https://zeit.co/.

04.07.2018    7854    pallid    3    

Добавляем онлайн-чат в web-приложение OneScript

OneScript v8 Бесплатно (free)

В статье рассмотрено подключение онлайн-чата к web-приложению на основе http-сервисов OneScript

24.06.2018    7634    blackhole321    1    

Сказ про то, как я DevOps-ом занимался (OneScript, Deployka, Jenkins)

OneScript DevOps Jenkins v8 1cv8.cf ИТ-компания Бесплатно (free)

Решаем задачу: автоматизировать обновление тестовых баз 1С из хранилища конфигурации при появлении в нём новых изменений. Данная статья родилась в муках хождения по граблям и поиска безопасного форватора среди подводных камней. Изложение постарался представить в виде инструкции для новичка, в которой собрал всё, с чем пришлось столкнуться. Сам я не DevOps-ер, ни на что не претендую, просто делюсь опытом :)

17.06.2018    22796    stas_ganiev    36    

Макеты в http-сервисах OneScript

OneScript v8 Бесплатно (free)

В статье описана библиотека, реализующая механизм макетов в http-сервисах OneScript, аналогично платформе 1С:Предприятие.

03.06.2018    8469    blackhole321    1    

Перечисления в http-сервисах OneScript

OneScript v8 Бесплатно (free)

В статье описывается библиотека, реализующая механизм перечислений в http-сервиах OneScript, аналогичный механизму платформы 1С:Предприятие

03.06.2018    8037    blackhole321    13    

Обработки в http-сервисах OneScript

OneScript Бесплатно (free)

В статье описана библиотека, реализующая механизм обработок в http-сервисах OneScript.

25.05.2018    7677    blackhole321    0    

Расширенные методы загрузки внешних библиотек в http-сервисах OneScript

OneScript Бесплатно (free)

В статье описаны расширенные методы загрузки внешних библиотек в http-сервисах OneScript на примере механизма фоновых заданий.

25.05.2018    7632    blackhole321    0    

Сборка, тестирование, доставка приложения на onescript с помощью gitlab-ci

OneScript v8 1cv8.cf Бесплатно (free)

Сборка, тестирование, доставка приложения на onescript с помощью gitlab-ci на примере портирования на onescript функции daСклонение.

14.05.2018    13214    pallid    7    

OneScript в облаке или Развертываем http-сервис OneScript на хостинге

OneScript Бесплатно (free)

В статье описан процесс развертывания web-приложения, созданного на базе http-сервисов OneScript на бесплатном хостинге.

05.05.2018    9694    blackhole321    0    

TMSSQL - работа с базами данных MS SQL Server в скриптах на OneScript и из командной строки

OneScript v8 Бесплатно (free)

Представляю вашему вниманию библиотеку TMSQL для работы с базами данных на MS SQL Server. Библиотека подключается в качестве модуля или класса в скрипты, написанные на OneScript, а также может работать как независимое консольное приложение.

26.04.2018    14966    Tavalik    22    

Создаем свою библиотеку для OneScript

OneScript v8 Бесплатно (free)

Как упаковать свою библиотеку в пакет? Что такое загрузчик и зачем он нужен? Как вообще создать свою библиотеку? Разбираемся на примере.

06.03.2018    22306    nixel    36    

Развертывание http-сервиса (web-приложения) OneScript на Ubuntu Server 16.04

OneScript Бесплатно (free)

В статье описан процесс настройки сервера, а также процесс развертывания http-сервиса (web-приложения) OneScript на Ubuntu Server 16.04

04.03.2018    15821    blackhole321    14    

Обзор имеющихся библиотек OneScript

OneScript v8 Бесплатно (free)

Экосистема OneScript активно развивается. Количество пользователей данного интерпретатора и имеющихся библиотек неуклонно растет, количество решаемых проблем - тоже. Однако остро встает вопрос некоторой разобщенности и размазанности информации по имеющимся библиотекам, их функциональности и проблемам, которые они решают. Данная статья призвана навести порядок в этой теме.

14.11.2017    45038    nixel    87    

Начало работы с OneScript

OneScript Бесплатно (free)

Краткая инструкция по установке и начале работы с OneScript. Пишу потому что сам много шишек набил, пока нашел все инструменты. В статье рассмотрены: 1) Установка OneScript. 2) Установка редактора кода. 3) Настройка редактора кода под OneScript. 4) Запуск скриптов из редактора кода 5) Полезные ссылки

18.10.2017    44103    DmitrySinichnikov    54    

С чего начать разработку скриптов на OneScript? Первые шаги

OneScript Бесплатно (free)

После моего доклада на INFOSTART 2017 EVENT COMMUNITY ко мне многие обращались с таким вопросом: с чего начать разработку скриптов на OneScript? В этой статье привожу набор ссылок и некий порядок действий (как его вижу я) для людей, не знакомым с этим инструментом.

11.10.2017    26229    Tavalik    14    

Вебинтерфейс для OneScript и 1С

OneScript v8 Россия Бесплатно (free)

Пример создания вебинтерфейса для OneScript с использованием библиотеки UfaScript.osb

30.06.2017    13890    andreosh    7    

OneScript и Ajax. POST-запрос и мои дальнейшие планы с фантазиями о будущем

OneScript v8 Россия Бесплатно (free)

Моя библиотека для OneScript (версия 3.0 от 09.06.2017 см.GitHab UfaScript) https://github.com/andreosh/UfaScript теперь позволяет посылать POST-запросы на сервер без использования сторонних библиотек типа jquery.

09.06.2017    18011    andreosh    3    

Как сделать OneScript объектно-ориентированным

OneScript Россия Бесплатно (free)

Описание метода создания объектов на OneScript и метода передачи функции в качестве параметра.

16.04.2017    8486    andreosh    7