mirror of
https://github.com/agibalovsa/-1C_DevOps.git
synced 2025-10-08 23:22:16 +02:00
46f004a6933f287feee09b5a4030f18a9b58302c
1C-DevOps
Описание
В данном репозитории находятся файлы настроек для создания docker образов и развертывания docker контейнеров приложений, относящихся к разработке на платформах 1С:Предприятие, 1С:Элемент.
Структура репозитория
- build_deb - каталог, в котором находятся скрипты сборки deb-пакетов.
- docker - каталог для работы с docker.
|
- applications - каталоги с файлами настроек под конкретное приложении.
|
- build - каталог, в котором находятся файлы описания сборки docker-образов
|
- dockerfile - основной файл описания сборки docker-образа.
- context - каталог со скриптами установки приложений, которые вызываются из dockerfile.
- .arg.tmpl - шаблон файла для задания аргументов сборки образа.
- docker-build.sh - шаблон скрипта запуска сборки docker-образа.
- entrypoint.sh - скрипт-точка-входа описывающий поведение контейнеров при его запуске.
- прочие файлы скриптов и настроек, передаваемые в docker-образ.
- compose - каталог, в котором находятся файлы описания параметров развертывания контейнера.
|
- common-compose.yml - базовый файл описания настроек общих для запуска контейнера в режимах compose или swarm.
- docker-compose.yml - файл с описанием запуска контейнера в режиме compose.
- docker-stack.yml - файл с описанием запуска контейнера в режиме swarm.
- .env.tmpl - как шаблон файла для задания интерполирующих переменных запуска контейнера.
- *config.tmpl - шаблоны файлов, для создания конфигураций через docker config.
- *secret.tmpl - шаблоны файлов, для создания секретов через docker secret.
- build - каталог, в котором находятся файлы описания сборки docker-образов
|
- common_context - каталог с общими скриптами и настройками как для build, так и для compose.
- init.sh - файл инициализации скриптов сборки или запуска контейнеров.
- users - динамически создаваемый каталог с пользовательскими настройками сборки или запуска контейнеров.
- applications - каталоги с файлами настроек под конкретное приложении.
|
- .gitignore - сюда помещены:
- .env
- .arg
- users
Порядок работы с репозиторием
- Инициализация
Для создания образа или запуска контейнера необходимо инициализировать каталог с пользовательскими настройками с помощью скрипта docker/init.sh.
При запуске скрипта открывается окно, в котором необходимо:
- Задать имя проекта
- Выбрать тип проекта:
- build
- compose (в работе...)
- swarm (в работе...)
- Выбрать приложение из списка доступных
- После чего создастся скрипт сборки и скрипт переменных в папке users, которая добавлена в gitignore
- Сборку можно запустить с помощью скрипта docker-build.sh в каталоге users/appl после задания переменных через файл .arg.
- Развернуть контейнер с минимальными настройками (docker compose, docker stack deploy).
- Docker compose
- Запуск осуществляется с помощью файла скрипта compose.sh.
- Docker swarm
- Запуск осуществляется с помощью файла скрипта deploy.sh.
- Docker compose
Порядок работы с Portainer
- Запуск осуществляется через web-интерфейс платформы для управления контейнерами Portainer.
- В настройках запуска можно указать как один compose.yml файл, так и несколько, если настройки сгруппированы по файлам.
- Настроить приложения в контейнере с помощью пользовательских настроек и заданных переменных среды, список которых можно получить из файлов .env.tpml.
Важно. В настройках переменных среды в диалоговом окне portainer ОБЯЗАТЕЛЬНО убрать все кавычки, которые есть в .env.tpml. Над унификацией этого вопроса я еще работаю.
Развитие репозитория
Репозиторий на текущем этапе развития не претендует на полноту описания. Его развитие будет идти по мере изучения новых механизмов и оптимизации изученных раннее. За любую помощь в дополнении или развития текущих файлов настроек автор репозитория будет очень благодарен.
Содержание
(Описание дополняется...)
Description
Languages
Shell
79.4%
Lua
8.9%
PowerShell
7.5%
Makefile
4.2%