Содержание

Подготовка и публикация собственных образов контейнеров для выполнения заданий

Подготовка файлов проекта

Создать каталог проекта.

mkdir -p my-image-ee
cd my-image-ee

Создать в каталоге файлы:

ansible.cfg
  1. [galaxy]
  2. server_list = validated
  3. ignore_certs = true
  4.  
  5. [galaxy_server.validated]
  6. url = <URL хранилища>
  7. token = <Токен>
execution-environment.yml
  1. ---
  2. version: 3
  3.  
  4. images:
  5.   base_image:
  6.   name: <название базового образа>:<тег>
  7. dependencies:
  8.   galaxy: requirements.yml
  9.  
  10. additional_build_files:
  11.   - src: ansible.cfg
  12.   dest: configs
  13.  
  14. additional_build_steps:
  15.   prepend_galaxy:
  16. - COPY _build/configs/ansible.cfg /etc/ansible/ansible.cfg
requirements.yml
  1. ---
  2. collections:
  3. #- name: microsoft.ad
  4. #- name: ansible.netcommon
  5. #- name: cisco.catalystcenter
  6.   - name: vmware.vmware
  7.   - name: community.vmware
  8. #- name: fortinet.fmgdevice

Перечень добавляемых в базовый образ коллекций.

Сборка образа и его публикация на Private Automation Hub

Сборка образа

IMAGE_TEG=<тег>
IMAGE_NAME=<название образа>
GATEWAY_FQDN=<FQDN-имя Astra Automation>
 
ansible-builder build --container-runtime podman -t $GATEWAY_FQDN/$IMAGE_NAME:$IMAGE_TEG -v 3

Проверить имя и тег собранного образа командой.

podman images -n | head -1

Если имя и тег на установлены (<none>), задать правильные имя и тег командой:

podman tag $(podman images -q | head -1) $GATEWAY_FQDN/$IMAGE_NAME:$IMAGE_TEG
podman login --tls-verify=false $GATEWAY_FQDN
 
podman push --tls-verify=false $GATEWAY_FQDN/$IMAGE_NAME:$IMAGE_TEG