Deutsch
Germany.ruФорумы → Архив Досок→ Программирование

​Деплоймент web-сервиса?

738  
Murr патриот29.05.19 11:15
Murr
29.05.19 11:15 

Деплоймент web-сервиса?


До сего дня делал в ручную.

Делал не часто - между деплоями все забывается и надо смотреть по новой что и куда прописывать.

Описалово процесса - сделал, но описано не все и что-то надо ковырять и ковырять...


Чем деплоить web-сервис?

Задавать надо:

- физический путь на диске,

- логическое место на сайте

- используемый порт

- используемые базы данных


Может быть несколько мини-сервисов - надо чтобы использовали общие параметры.

Должно ставится ремотно - логин будет, но как настроить - надо смотреть.

Идеально будет - если будет брать проект/солюшен и собирать пакет.

Ну может еще чего подзабыл...


Есть какой инсталлятор для таких вещей? и, разумеется, пошаговая инструкция.

#1 
koder патриот29.05.19 11:26
koder
NEW 29.05.19 11:26 
в ответ Murr 29.05.19 11:15, Последний раз изменено 29.05.19 11:33 (koder)

Что то я не догоняю. Веб-сервис это набор классов, которые веб-сервер предоставляет в пользование. Какой у вас сервер? Если я не ошибаюсь, то за порт отвечает сам сервер. Веб - анвендунг на это не влияет

#2 
Murr патриот29.05.19 16:54
Murr
NEW 29.05.19 16:54 
в ответ koder 29.05.19 11:26

Какой у вас сервер?

------

IIS. Версию не помню, но не из самых последних.


Веб-сервис это набор классов, которые веб-сервер предоставляет в пользование.

-----

Точнее - набор интерфейсов и транспорт между системами.

Но вопрос не в составе сервиса - он написан и работает.

Вопрос в том, как с работающего сервиса получить инсталятор для инсталяции на другой системе.

Делать все руками, как было - сильно не хочется по описанным причинам.


Эээ... меня не интересует создание клиента - меня интересует деплой сервисa.


Если я не ошибаюсь, то за порт отвечает сам сервер.

-----

Да. Но вот какой именно пользовать - ему сообщается отдельно.

Вот именно это и надо делать при инсталяции.

Т.е. по дефолту - хттп на 80, но мне нужен тотже хттп, но на 8080.

Вот 8080 и надо определить при инсталяции.


Еще моментик вспомнил - асмх.

Сервис для функционирования требует наличия данных файлов и их корректного содержимого.

При этом Я точно знаю, что данный файл будет компилироваться сервером.

Хотелось бы загружать уже откомпилированную и обфусканную версию.

Когда-то это делали для сайта, но занимался не Я и Я так и не освоил как это делать...

Надо догонять...


Веб - анвендунг на это не влияет

------

Не понял.

#3 
AlexNek патриот29.05.19 22:59
AlexNek
NEW 29.05.19 22:59 
в ответ Murr 29.05.19 11:15

никогда не делал веб сервисы, но для создания сложных установочных файлов пользовал это

https://www.finalbuilder.com/finalbuilder/feature-tour

в связке с установщиком.

#4 
koder патриот30.05.19 10:26
koder
NEW 30.05.19 10:26 
в ответ AlexNek 29.05.19 22:59, Последний раз изменено 30.05.19 10:28 (koder)

Я только с томкэтом работал. За порт отвечает он, а не сервис. Для разворачивания сервиса НИЧЕГО делать не надо. Только разместить классы в нужной деректории сервера. И все. Вообще все. Все настройки лежат в конфигах проекта и специфичны для типа веб-про́екта. То есть они создаются и тестируются в процессе написания проекта. Базы данных вообще никаким боком к разворачиванию проекта не относятся, это глубоко специфичная для проекта вещь и доступ может быть по разному организован. Но опять же, в самом проекте.

#5 
Murr патриот30.05.19 11:04
Murr
NEW 30.05.19 11:04 
в ответ koder 30.05.19 10:26

Только разместить классы в нужной деректории сервера

-----

У мелкомягких - немного по другому.

Т.е. - можно и так же, но интересует - немного по-другому.

Файлы - да, надо разместить... при этом размещать можно не в директории сервера, а в произвольном месте, и подмапливать виртуальными папочками.

Кроме этого - у меня код не в страницах, а в библиотеках - их надо укладывать в точно определенное место.

Ну и остальное так же...


Все настройки лежат в конфигах проекта и специфичны для типа веб-про́екта.

-----

На самом деле - все еще хуже.

ИИС - "суммирует" конфиги - от корня и до папки со страничкой.

В любой папке все можно перенастроить как надо по месту.

И это тоже часть деплоймента.



То есть они создаются и тестируются в процессе написания проекта.

-----

Проект - написан и оттестирован.

На прогерской машинке.

Теперь его надо проинсталить на тестовом сервере.

Причем там может быть несколько версий этого же проекта.

Интересует именно процедура деплоймента и доступные тоолсы...



Базы данных вообще никаким боком к разворачиванию проекта не относятся

-----

Я думаю, что у тебя несколько неверное понимание данного вопроса.

В плоть до того, что если база требуется, а сервера базы не обнаружено, то сервер базы нужно инсталить и на него ставить нужную базу.

#6 
VseNikiZanyati посетитель31.05.19 21:31
NEW 31.05.19 21:31 
в ответ Murr 29.05.19 11:15, Последний раз изменено 31.05.19 22:13 (VseNikiZanyati)

В VS, выбрав проект, можно выбрать в контекстном меню "Publish" и настроить его профайл.


физический путь на диске

----

Там можно либо локально паблишить и потом вручную по ftp копировать либо сразу на ftp, или WebDeploy использовать.


логическое место на сайте

----

Перенос файлов идет в конкретную директорию на web-сервер по ftp. Приложение на IIS-е уже должно быть настроено, то есть создан "site" + "application pool" для него.


используемый порт

----

Настраивается в IIS в настройках site-а. Никакого отношения к деплойменту не имеет.


используемые базы данных

----

Все в web.config-е, можно либо web.config на сервере перезаписывать, если вручную по ftp все копировать. Можно использовать config transformations и для releas-ов прописывать значения для PROD/UAT баз данных.

#7 
Программист коренной житель03.06.19 08:19
NEW 03.06.19 08:19 
в ответ Murr 29.05.19 11:15

У тебя как всегда геморрой на ровном месте :)


Берешь Windows Installer Reference и куришь мануал. Там есть описание кучи разных таблиц: Installer Database


Собирать инсталлер по мануалц дело не очень простое поэтому ребязата придумали WiX Toolset. Это очень крутой инструмент, который мало того, что позволяет описывать инсталлятор, так еще и предлагает расширения для нативного инсталлятора. В частности, у них есть есть расширение для настройки IIS: WebSite Element.


Дальше тебе надо будет только ввести все необходимые параметры в UI твоего инсталлера.

#8 
Murr патриот04.06.19 10:08
Murr
NEW 04.06.19 10:08 
в ответ VseNikiZanyati 31.05.19 21:31

Приложение на IIS-е уже должно быть настроено

-----

Ну вот и точка непонимания - руками Я это делаю. Но сейчас Я хочу уйти от делания этого в ручную.

Цель - запустить все ремотно и получить все проинсталленое...

Логику и детали инсталяции - однократно прописать в инсталяторе.

#9 
Murr патриот04.06.19 10:15
Murr
NEW 04.06.19 10:15 
в ответ Программист 03.06.19 08:19

У тебя как всегда геморрой на ровном месте :)

-----

Ну так по первоте оно всегда геморой... ну и слава богу - геморой, но есть.

У товарища выше - до гемороя далеко - пока сложно даже с пониманием потребностей ... :)


В частности, у них есть есть расширение для настройки IIS: WebSite Element

-----

Вот за это - спасибки - буду смотерть как время будет.

Сам ВИХ в базовом варианте Я как-то крутил - без него расширения для Студии не собираются, а вот до расширений - не добрался - надо смотреть.

#10 
VseNikiZanyati посетитель04.06.19 18:29
NEW 04.06.19 18:29 
в ответ Murr 04.06.19 10:08

Ну вот и точка непонимания - руками Я это делаю.

----

В "нормальных" конторах, где есть OPS-ы, тебя, как девелопера к IIS-у даже не подпустят.

Поэтому начнем с того, что то, что ты хочешь сделать выглядит неадекватно, в частности, сочитание инсталлятор и деплоймент web-сервиса звучит ненормально.


#11 
VseNikiZanyati посетитель04.06.19 18:31
NEW 04.06.19 18:31 
в ответ Murr 04.06.19 10:15, Последний раз изменено 04.06.19 18:32 (VseNikiZanyati)

У товарища выше - до гемороя далеко - пока сложно даже с пониманием потребностей

---

Да, до гемороя далеко. Может, у тебя проблема с описанием потребностей?

#12 
Программист коренной житель05.06.19 08:11
NEW 05.06.19 08:11 
в ответ VseNikiZanyati 04.06.19 18:29
сочитание инсталлятор и деплоймент web-сервиса звучит ненормально

ты из какого вообще века? Деплоить руками - это верный путь к ошибке. Инсталлятор все делает за тебя и, что самое важное, так как нужно веб-сервису. И никаких проблем ни с установкой, ни в деинсталляцией, ни с апгрейдом. Учи матчасть (инсталлятор).

#13 
Murr патриот05.06.19 10:01
Murr
NEW 05.06.19 10:01 
в ответ VseNikiZanyati 04.06.19 18:29

В "нормальных" конторах, где есть OPS-ы, тебя, как девелопера к IIS-у даже не подпустят.

-----

Ну не допустят и не допустят - будет какой-то ихний админ-аныкейщик и будет он зануиматься инсталлом...

Или ты хочешь, чтобы Я мотался в каждую контору и выбивал себе права на инсталяцию? Мне такое как-то не интересно...


сочитание инсталлятор и деплоймент web-сервиса звучит ненормально.

-----

Да-да...

Вот давай сейчас ты аккуратно напишешь пошаговую инструкцию по ручной инсталяции нужного мне самопального сервиса...

Ну а Я торжественно пообещаю выполнить ее в деталях... если заработает - опубликуем и будем грести деньгу за пользование... смущ

#14 
Murr патриот05.06.19 10:03
Murr
NEW 05.06.19 10:03 
в ответ VseNikiZanyati 04.06.19 18:31, Последний раз изменено 05.06.19 10:08 (Murr)

Может, у тебя проблема с описанием потребностей?

------

Может быть.

Но по крайней мере Я вижу где именно у меня проблемы и пытаюсь их описать и решить...


Ты не обижайся - у тебя действительно есть проблема с пониманием того, об чем Я спрашиваю.

Просто прими как факт - без обидок - и постарайся понять и устранить пробел в знаниях.

Оно - понять и устранить - полезнее, чем обидки копить....

#15 
Murr патриот05.06.19 10:05
Murr
NEW 05.06.19 10:05 
в ответ Программист 05.06.19 08:11

Деплоить руками - это верный путь к ошибке.

-----

Угу... Но ПХПшники именно ручками и деплоят... хаха

#16