ENTAXY-122 Entaxy installation in docker documentation added #1
| @@ -5,6 +5,6 @@ __Alternative languages:__ | ||||
| = Установка | ||||
| Entaxy из коробки имеет разные варианты установки: | ||||
|  | ||||
| * xref:../../temp/entaxy-docker/ReadMe.md[Установка для разработки в докер] | ||||
| * xref:local-installation/ReadMe.md[Установка для разработки в докер] | ||||
| * xref:../../features/README.ru.md[Установка для разработки отдельных серверных приложений] | ||||
| * xref:install.adoc[Установка на промышленное окружение] | ||||
|   | ||||
							
								
								
									
										141
									
								
								documentation/installation/local-installation/ReadMe.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										141
									
								
								documentation/installation/local-installation/ReadMe.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,141 @@ | ||||
| ## Docker compose для сборки и запуска Entaxy. | ||||
|  | ||||
| Запуск локального окружения с несколькими docker контейнерами:  | ||||
| * Караф | ||||
| * Брокер | ||||
| * СУБД | ||||
| * Менеджер артефактов | ||||
|  | ||||
| Для начала клонируем репозиторий и переходим в корень проекта:  | ||||
| ```bash | ||||
| git clone <entaxy-framework-repository> | ||||
| cd entaxy-framework | ||||
| ``` | ||||
| Далее у нас есть разные варианты хранения необходимых для установки Entaxy артефактов. | ||||
| ### 1. Самый простой способ: локальный репозиторий артефактов включаеться в образ карафа. | ||||
| В корневом POM находится профиль для деплоя артефактов в образ карафа: | ||||
| ```xml | ||||
| <profile> | ||||
|     <id>docker.file.repo</id> | ||||
|     <distributionManagement> | ||||
|         <snapshotRepository> | ||||
|             <id>entaxy-maven-repo-file</id> | ||||
|             <url>file:./temp/entaxy-docker/karaf/repo</url> | ||||
|         </snapshotRepository> | ||||
|     </distributionManagement> | ||||
| </profile> | ||||
| ``` | ||||
| Запускаем мевен деплой из корня проекта с этим профилем:  | ||||
| ```bash | ||||
| mvn deploy -P docker.file.repo | ||||
| ```  | ||||
| И после успешной сборки запускаем контейнеры из директории проекта, в которой находится docker-compose.yml: | ||||
| ```bash | ||||
| cd ./temp/entaxy-docker | ||||
| docker-compose up | ||||
| ```  | ||||
| Или `docker compose up` для новых версий docker. | ||||
| После запуска комманды мы будем видеть прогресс сборки образов, запуска контейнеров и логи запущенных приложений. Для остановки контейнеров достаточно нажать сочетание клавиш Ctrl+C или через команды запущенные из другого окна/вкладки терминала. | ||||
| ```bash | ||||
| docker-compose stop | ||||
| docker-compose start | ||||
| ``` | ||||
| После запуска контейнеров открываем новый терминал и заходим в караф: | ||||
| ```bash | ||||
| docker-compose exec karaf /opt/apache-karaf/bin/client | ||||
| ``` | ||||
| или ssh клиент с дальнейшим вводом пароля (karaf) | ||||
| ```bash | ||||
| ssh -p 8101 karaf@localhost | ||||
| ```  | ||||
|  | ||||
| И в консоли карафа запускаем скрипт с установкой необходимых фич: | ||||
| ```bash  | ||||
| shell:source ./install.karaf | ||||
| ``` | ||||
| Ждём окончания деплоя в караф. | ||||
| (Не всегда полная установка проходит с первой попытки и тогда помогает повторный запуск `source install.karaf`) | ||||
|  | ||||
| ### 2. Reposilite: легковесный http репозиторий артефактов запускается в отдельном контейнере. | ||||
| Комментируем в файле install.karaf строку начинающуюся с:  | ||||
| ```bash | ||||
| config:property-set -p org.ops4j.pax.url.mvn org.ops4j.pax.url.mvn.repositories file:/opt/apache-karaf/repo | ||||
| ``` | ||||
| И убираем комментарий в строке начинающейся:  | ||||
| ```bash | ||||
| #config:property-set -p org.ops4j.pax.url.mvn org.ops4j.pax.url.mvn.repositories http://maven-repo/snapshots | ||||
| ``` | ||||
|  | ||||
| Запускаем контейнеры из директории проекта, в которой находится docker-compose.yml: | ||||
| ```bash | ||||
| cd ./temp/entaxy-docker | ||||
| docker-compose up | ||||
| ```  | ||||
| Или `docker compose up` для новых версий docker. | ||||
| После запуска комманды мы будем видеть прогресс сборки образов, запуска контейнеров и логи запущенных приложений. Для остановки контейнеров достаточно нажать сочетание клавиш Ctrl+C или через команды запущенные из другого окна/вкладки терминала. | ||||
| ```bash | ||||
| docker-compose stop | ||||
| docker-compose start | ||||
| ``` | ||||
|  | ||||
| Для деплоя в reposilite добавляем учётные данные в конфигурацию мавена (`~/.m2/settings.xml`): | ||||
| ```xml | ||||
| <settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" | ||||
|           xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||||
|           xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> | ||||
|     <servers> | ||||
|         <server> | ||||
|             <id>entaxy-maven-repo</id> | ||||
|             <username>admin</username> | ||||
|             <password>aW7frfS9NPGrOnuNBMf9gyO0eXNRaCoOGtXHTcLU5akDFJ9ACiUJhgmZxlOKnLC5</password> | ||||
|         </server> | ||||
|     </servers> | ||||
| </settings> | ||||
| ``` | ||||
| В корневом POM находится профиль для деплоя артефактов на сервер reposilite: | ||||
| ```xml | ||||
| <profile> | ||||
|     <id>docker.reposilite</id> | ||||
|     <distributionManagement> | ||||
|         <snapshotRepository> | ||||
|             <id>entaxy-maven-repo</id> | ||||
|             <url>http://127.0.0.1:8081/snapshots</url> | ||||
|         </snapshotRepository> | ||||
|     </distributionManagement> | ||||
| </profile> | ||||
| ``` | ||||
| Запускаем мевен деплой из корня проекта с этим профилем: | ||||
| ```bash | ||||
| mvn deploy -P docker.reposilite | ||||
| ```  | ||||
| После успешной сборки открываем новый терминал и заходим в караф: | ||||
| ```bash | ||||
| docker-compose exec karaf /opt/apache-karaf/bin/client | ||||
| ``` | ||||
| или ssh клиент с дальнейшим вводом пароля (karaf) | ||||
| ```bash | ||||
| ssh -p 8101 karaf@localhost | ||||
| ```  | ||||
|  | ||||
| И в консоли карафа запускаем скрипт с установкой необходимых фич: | ||||
| ```bash  | ||||
| shell:source ./install.karaf | ||||
| ``` | ||||
| Ждём окончания деплоя в караф. | ||||
| (Не всегда полная установка проходит с первой попытки и тогда помогает повторный запуск `source install.karaf`) | ||||
|  | ||||
|  | ||||
|  | ||||
| Также есть вариант с nexus | ||||
| После старта получаем пароль для admin через команду:  | ||||
| `docker-compose exec nexus cat /nexus-data/admin.password`. | ||||
| Через админку нужно разрешить анонимный деплой или настроить доступы. | ||||
| Урл для install.karaf | ||||
| `http://nexus:8081/repository/maven-snapshots/@id=local-nexus@snapshots@noreleases` | ||||
|  | ||||
|  | ||||
|  | ||||
| Остановить все контейнеры | ||||
| `docker-compose down` | ||||
| Остановить и удалить хранилища с БД и репой | ||||
| `docker-compose down -v` | ||||
		Reference in New Issue
	
	Block a user