Готовый Docker-образ с набором инструментов для CI/CD пайплайнов. Содержит все необходимые утилиты для работы с Kubernetes, контейнерами и автоматизации развертывания.
Find a file
creativdex 07d3e19100
All checks were successful
Build and Push Docker Image / build (push) Successful in 50s
feat: add yq to Dockerfile and update sanity checks
- Introduced YQ version 4.44.3 to the Dockerfile for YAML processing
- Updated sanity checks to include verification of yq version
2025-12-21 02:59:18 +07:00
.forgejo/workflows fix: update Docker configuration paths in build workflow 2025-12-20 20:36:50 +07:00
.gitignore init: добавлена начальная конфигурация Docker и CI/CD 2025-12-20 20:35:10 +07:00
Dockerfile feat: add yq to Dockerfile and update sanity checks 2025-12-21 02:59:18 +07:00
README.md init: добавлена начальная конфигурация Docker и CI/CD 2025-12-20 20:35:10 +07:00

🚀 CI Tools Docker Image

Docker Node.js Kubernetes

Готовый Docker-образ с набором инструментов для CI/CD пайплайнов. Содержит все необходимые утилиты для работы с Kubernetes, контейнерами и автоматизации развертывания.

📦 Включенные инструменты

Инструмент Версия Описание
Node.js 20 (Bookworm) Среда выполнения JavaScript
kubectl v1.30.0 CLI для управления Kubernetes кластерами
kubeseal 0.34.0 Утилита для работы с Sealed Secrets
Kaniko v1.23.2 Инструмент для сборки Docker-образов без Docker daemon
Helm v3.15.4 Менеджер пакетов для Kubernetes
Git latest Система контроля версий
Bash latest Командная оболочка

🎯 Использование

Запуск контейнера

docker run -it --rm \
  -v ~/.kube:/root/.kube \
  -v $(pwd):/workspace \
  -w /workspace \
  your-registry/ci-tools:latest

Использование в CI/CD пайплайнах

GitHub Actions / Forgejo Actions

jobs:
  deploy:
    runs-on: ubuntu-latest
    container:
      image: your-registry/ci-tools:latest
    steps:
      - name: Check Kubernetes version
        run: kubectl version --client
      
      - name: Deploy with Helm
        run: helm upgrade --install my-app ./charts/my-app

GitLab CI

deploy:
  image: your-registry/ci-tools:latest
  script:
    - kubectl apply -f k8s/
    - helm upgrade --install app ./helm-chart

Примеры команд

# Проверка версий установленных инструментов
kubectl version --client
kubeseal --version
helm version
node --version
npm --version

# Работа с Kubernetes
kubectl get pods
kubectl apply -f deployment.yaml

# Работа с Sealed Secrets
kubeseal -o yaml < secret.yaml > sealed-secret.yaml

# Сборка образа с Kaniko
kaniko --context=/workspace \
       --dockerfile=/workspace/Dockerfile \
       --destination=my-registry/my-app:latest

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

Локальная сборка

docker build -t ci-tools:latest .

Сборка с указанием версий

docker build \
  --build-arg KUBECTL_VERSION=v1.30.0 \
  --build-arg KUBESEAL_VERSION=0.34.0 \
  --build-arg KANIKO_VERSION=v1.23.2 \
  --build-arg HELM_VERSION=v3.15.4 \
  -t ci-tools:latest .

📋 Требования

  • Docker 20.10 или новее
  • Доступ к интернету для загрузки зависимостей (при сборке)

🏗️ Структура проекта

ci-tools/
├── Dockerfile              # Определение Docker-образа
├── .forgejo/
│   └── workflows/
│       └── build.yaml      # CI/CD пайплайн для автоматической сборки
└── README.md               # Документация

🔄 Автоматическая сборка

Образ автоматически собирается и публикуется при создании тега в репозитории через Forgejo Actions.

git tag v1.0.0
git push origin v1.0.0

📝 Лицензия

MIT


Примечание: Этот образ оптимизирован для использования в CI/CD пайплайнах и содержит только необходимые инструменты для автоматизации развертывания.