В данном репозитории находятся файлы для сборки образов Docker с платформой 1С:Предприятие 8.3.
В терминале введите:
Команда Linux:
# для Linux
$ cp .onec.env.example .onec.env
:: для Windows
copy .onec.env.bat.example env.bat
Скорректируйте файл .onec.env
в соответствии со своим окружением:
- ONEC_USERNAME - учётная запись на http://releases.1c.ru
- ONEC_PASSWORD - пароль для учётной записи на http://releases.1c.ru
- ONEC_VERSION - версия платформы 1С:Преприятия 8.3, которая будет в образе
- EDT_VERSION - версия EDT. Обязательно заполнять только при сборке образов с EDT или при использовании замеров покрытия (см.
COVERAGE41C_VERSION
) - DOCKER_REGISTRY_URL - Адрес Docker-registry в котором будут храниться образы
- COVERAGE41C_VERSION - версия Coverage41C
Используется при сборке агента скриптами
build-base-*-jenkins-coverage-agent.*
.
Затем экспортируйте все необходимые переменные:
# для Linux
$ source .onec.env
:: для Windows
env.bat
☝️ Запустите последовательно скрипты для сборки образов.
-
Если вам нужны образы для использования в docker-swarm:
- build-base-swarm-jenkins-agent.sh (или build-base-swarm-jenkins-coverage-agent.sh с замерами покрытия)
- build-edt-swarm-agent.sh
- build-oscript-swarm-agent.sh
-
Если же вы планируете использовать k8s:
- build-base-k8s-jenkins-agent.sh (или build-base-k8s-jenkins-coverage-agent.sh с замерами покрытия)
- build-edt-k8s-agent.sh
- build-oscript-k8s-agent.sh
Вы можете использовать готовые дистрибутивы платформы, для этого достаточно разместить их в папке distr
. Скрипты будут автоматически использовать их для сборки образа.
- взять ваш файл nethasp.ini
- создать из него docker config командой
docker config create nethasp.ini ./nethasp.ini
- в Jenkins, в настройках Docker Agent templates у соответствующих агентов в параметре Configs указать
nethasp.ini:/opt/1cv8/current/conf/nethasp.ini
docker build --build-arg ONEC_USERNAME=${ONEC_USERNAME} \
--build-arg ONEC_PASSWORD=${ONEC_PASSWORD} \
--build-arg ONEC_VERSION=${ONEC_VERSION} \
-t ${DOCKER_REGISTRY_URL}/onec-server:${ONEC_VERSION} \
-f server/Dockerfile .
docker build --build-arg ONEC_USERNAME=${ONEC_USERNAME} \
--build-arg ONEC_PASSWORD=${ONEC_PASSWORD} \
--build-arg ONEC_VERSION=${ONEC_VERSION} \
--build-arg nls_enabled=true \
-t ${DOCKER_REGISTRY_URL}/onec-server-nls:${ONEC_VERSION} \
-f server/Dockerfile .
docker build --build-arg ONEC_USERNAME=${ONEC_USERNAME} \
--build-arg ONEC_PASSWORD=${ONEC_PASSWORD} \
--build-arg ONEC_VERSION=${ONEC_VERSION} \
-t ${DOCKER_REGISTRY_URL}/onec-client:${ONEC_VERSION} \
-f client/Dockerfile .
docker build --build-arg DOCKER_REGISTRY_URL=${DOCKER_REGISTRY_URL} \
--build-arg ONEC_VERSION=${ONEC_VERSION} \
-t ${DOCKER_REGISTRY_URL}/onec-client-vnc:${ONEC_VERSION} \
-f client-vnc/Dockerfile .
docker build --build-arg ONEC_USERNAME=${ONEC_USERNAME} \
--build-arg ONEC_PASSWORD=${ONEC_PASSWORD} \
--build-arg ONEC_VERSION=${ONEC_VERSION} \
--build-arg nls_enabled=true \
-t ${DOCKER_REGISTRY_URL}/onec-client-nls:${ONEC_VERSION} \
-f client/Dockerfile .
docker build --build-arg ONEC_USERNAME=${ONEC_USERNAME} \
--build-arg ONEC_PASSWORD=${ONEC_PASSWORD} \
--build-arg ONEC_VERSION=${ONEC_VERSION} \
-t ${DOCKER_REGISTRY_URL}/onec-thin-client:${ONEC_VERSION} \
-f thin-client/Dockerfile .
docker build --build-arg ONEC_USERNAME=${ONEC_USERNAME} \
--build-arg ONEC_PASSWORD=${ONEC_PASSWORD} \
--build-arg ONEC_VERSION=${ONEC_VERSION} \
--build-arg nls_enabled=true \
-t ${DOCKER_REGISTRY_URL}/onec-thin-client-nls:${ONEC_VERSION} \
-f thin-client/Dockerfile .
docker build --build-arg ONEC_USERNAME=${ONEC_USERNAME} \
--build-arg ONEC_PASSWORD=${ONEC_PASSWORD} \
--build-arg ONEC_VERSION=${ONEC_VERSION} \
-t ${DOCKER_REGISTRY_URL}/onec-crs:${ONEC_VERSION} \
-f crs/Dockerfile .
docker build --build-arg DOCKER_REGISTRY_URL=${DOCKER_REGISTRY_URL} \
--build-arg ONEC_VERSION=${ONEC_VERSION} \
-t ${DOCKER_REGISTRY_URL}/onec-rac-gui:${ONEC_VERSION}-1.0.1 \
-f rac-gui/Dockerfile .
docker build --build-arg DOCKER_REGISTRY_URL=${DOCKER_REGISTRY_URL} \
--build-arg ONEC_VERSION=${ONEC_VERSION} \
-t ${DOCKER_REGISTRY_URL}/gitsync:3.0.0 \
-f gitsync/Dockerfile .
docker build --build-arg DOCKER_REGISTRY_URL=${DOCKER_REGISTRY_URL} \
--build-arg ONEC_VERSION=${ONEC_VERSION} \
-t ${DOCKER_REGISTRY_URL}/oscript:1.0.21 \
-f oscript/Dockerfile .
docker build --build-arg DOCKER_REGISTRY_URL=${DOCKER_REGISTRY_URL} \
-t ${DOCKER_REGISTRY_URL}/runner:1.7.0 \
-f vanessa-runner/Dockerfile .
docker build --build-arg ONEC_USERNAME=${ONEC_USERNAME} \
--build-arg ONEC_PASSWORD=${ONEC_PASSWORD} \
--build-arg EDT_VERSION=${EDT_VERSION} \
-t ${DOCKER_REGISTRY_URL}/edt:${EDT_VERSION} \
-f edt/Dockerfile .