User Tools

Site Tools


devops1._основные_инструменты

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
devops1._основные_инструменты [2025/12/12 12:58]
val
devops1._основные_инструменты [2026/02/10 11:40] (current)
val [Теория]
Line 19: Line 19:
  
   * [[https://​landscape.cncf.io/​]]   * [[https://​landscape.cncf.io/​]]
 +  * [[https://​habr.com/​ru/​companies/​nixys/​articles/​514098/​|С чего начать DevOps?]]
   * [[https://​dzen.ru/​a/​ZVIBk2kT0ntemhwK|Дорожная карта DevOps-инженера в 2023 году]]   * [[https://​dzen.ru/​a/​ZVIBk2kT0ntemhwK|Дорожная карта DevOps-инженера в 2023 году]]
   * Ссылки в разделе [[Сервис Git]]   * Ссылки в разделе [[Сервис Git]]
Line 120: Line 121:
 === 2.1 Собираем docker контейнер === === 2.1 Собираем docker контейнер ===
  
-  * [[Технология Docker#​Установка]] Docker из базового репозитория на **server** и из репозитория вендора на **gate**+  * [[Технология Docker#​Установка]] Docker из базового репозитория на **server** и из репозитория вендора на **gate** ​(!!! Обратитесь к преподавателю по поводу версии !!!)
  
 !!! Методическая рекомендация,​ запустить установку Golang на gate из этой лабораторной работы 2.1.3 !!! Методическая рекомендация,​ запустить установку Golang на gate из этой лабораторной работы 2.1.3
Line 324: Line 325:
   * [[Технология Docker#​Обзор и удаление]] (преподавателю можно всех) образов c gate   * [[Технология Docker#​Обзор и удаление]] (преподавателю можно всех) образов c gate
   * Отключаем [[Технология Docker#​Insecure Private Registry]]   * Отключаем [[Технология Docker#​Insecure Private Registry]]
 +  * Для загрузки docker:dind может понадобиться [[Технология Docker#​Настройка registry-mirrors]] хоста на котором работает gitlab-runner
  
   * Повторяем [[Инструмент GitLab#​Установка в виде контейнера]] gitlab-runner на gate   * Повторяем [[Инструмент GitLab#​Установка в виде контейнера]] gitlab-runner на gate
Line 358: Line 360:
 stages: stages:
   - build   - build
 +  - test
   - push   - push
 #  - deploy #  - deploy
- 
-variables: 
-  DOCKER_TLS_CERTDIR:​ ""​ 
- 
-services: 
-  - name: docker:dind 
-    command: 
-      [ 
-        '​--insecure-registry=server.corpX.un:​5000',​ 
-      ] 
  
 before_script:​ before_script:​
 +  - env
   - echo -n $CI_REGISTRY_PASSWORD | docker login -u $CI_REGISTRY_USER --password-stdin $CI_REGISTRY   - echo -n $CI_REGISTRY_PASSWORD | docker login -u $CI_REGISTRY_USER --password-stdin $CI_REGISTRY
  
Line 386: Line 380:
     - docker push $CI_REGISTRY_IMAGE:​$CI_COMMIT_SHA     - docker push $CI_REGISTRY_IMAGE:​$CI_COMMIT_SHA
  
 +  except:
 +    - tags
 +
 +Smoke test:
 +  stage: test
 +  script:
 +    - MY_ID=$(docker run -d --rm $CI_REGISTRY_IMAGE:​$CI_COMMIT_SHA)
 +    - MY_IP=$(docker inspect -f '​{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}'​ $MY_ID)
 +    - docker run --rm alpine/curl -sS $MY_IP
 +    - docker stop $MY_ID
   except:   except:
     - tags     - tags
Line 410: Line 414:
     - docker tag $CI_REGISTRY_IMAGE:​$CI_COMMIT_SHA $CI_REGISTRY_IMAGE:​$CI_COMMIT_REF_NAME     - docker tag $CI_REGISTRY_IMAGE:​$CI_COMMIT_SHA $CI_REGISTRY_IMAGE:​$CI_COMMIT_REF_NAME
     - docker push $CI_REGISTRY_IMAGE:​$CI_COMMIT_REF_NAME     - docker push $CI_REGISTRY_IMAGE:​$CI_COMMIT_REF_NAME
 +
  
 #Deploy: #Deploy:
devops1._основные_инструменты.1765533492.txt.gz · Last modified: 2025/12/12 12:58 by val