Рубрики
Uncategorized

Запуск Дженкинса в Docker

ขั้นตอน การ เซ็ต อัพ อัพ jenkins server โดย ให้ docker ทำ หน้าที่ เป็น ใช้ สำหรับ การ จัด การ กับ Узел ที่ สร้า … Tagged с Jenkins, DevOps, Docker.

ขั้นตอน การ เซ็ต อัพ อัพ jenkins server โดย ให้ docker ทำ หน้าที่ เป็น เป็น ใช้ การ จัด การ กับ Узел ที่ ขึ้น มา จาก จาก จาก ที่ เตรียม ใช้ สำหรับ สำหรับ Строительство, нажмите изображение Docker และ การ เขียน และ รัน รัน บน vscode (ขั้นตอน ทั้งหมด ทำ บน เครื่อง macOS)

1) สร้าง Дженкинс каталог แล้ว เปิด VSCODE

mkdir jenkins
cd jenkins
code .

2) สร้าง ไฟล์ Dockerfile เพื่อ ใช้ สำหรับ Построение изображения Docker เป็น Узел ให้ Jenkins

FROM jenkins/jenkins

USER root
RUN apt-get update -qq && apt-get install -qqy \
    apt-transport-https \
    ca-certificates \
    curl \
    lxc \
    iptables

RUN curl -sSL https://get.docker.com/ | sh

RUN usermod -aG docker jenkins

CMD dockerd

3) Построить изображение Docker แล้ว Нажмите ไป ที่ Docker Hub (เปลี่ยน Codebangkok เป็น ชื่อ Docker Hub Имя пользователя ของ คุณ เอง)

docker image build -t codebangkok/jkdocker .
docker image push codebangkok/jkdocker

4) สร้าง ไฟล์ Docker-compose.yml เพื่อ ใช้ รัน รัน รัน jenkin Container พอร์ท 8080 และ Socat ใช้ สำหรับ การ Docker Daemon พอร์ท 2375

version: '3.9'
services:

  jenkins:
    container_name: jenkins
    image: jenkins/jenkins
    ports:
      - 8080:8080
    volumes:
      - ${PWD}/jenkins_home:/var/jenkins_home

  socat:
    container_name: socat
    image: alpine/socat
    ports:
      - 2375:2375
    volumes:
      - /var/run/docker.sock:/var/run/docker.sock
    command: tcp-listen:2375,fork,reuseaddr unix-connect:/var/run/docker.sock

4) รัน Docker-Compose

docker-compose up -d

6) รอ ซัก พัก แล้ว เข้า ดู ดู log ใน ใน จน กว่า จะ มี inityAdminpassword ขึ้น ให้ เรา Копия เก็บ เอา ไว้ ไว้ ไว้ ไว้ ไว้ ไว้ ไว้ ไว้ ไว้

docker container logs jenkins

7) เปิด Браузер แล้ว ไป ที่ ที่ ที่ http://localhost: 8080 แล้ว ใส่ inistranadminpassword

8) Установите предлагаемые плагины แล้ว จน กว่า จะ ติดตั้ง ติดตั้ง плагины เสร็จ

9) Создать первого пользователя администратора

10) Конфигурация экземпляра กด Сохранить и отделить แล้ว กด Начните с помощью Jenkins

11) กดเมนู Управление Jenkins -> Управление плагинами -> Доступно แล้ว ค้นหา คำ ว่า Docker แล้ว เพื่อ ติดตั้ง ติดตั้ง

12) คลิ๊ก Перезагрузите Дженкинс при завершении установки, и задания не выполняются แล้ว กลับ ไป ที่ หน้า แรก แรก แรก แรก แรก แรก แรก แรก แรก แรก http://localhost: 8080 เพื่อ Вход в систему เข้า สู่ ระบบ ใหม่

13) กดเมนู Управление Jenkins -> Управление узлами и облаками -> Настройка облаков -> Добавить новое облако -> Docker

14) กด ปุ่ม Docker облако детали … กำหนด ค่า แล้ว ปุ่ม Test Connection เพื่อ ทดสอบ ทดสอบ ทดสอบ ทดสอบ

  • Докер -хост uri = TCP://host.docker.internal: 2375
  • Включено
  • Разоблачить docker_host

15) กด ปุ่ม Шаблоны агента Docker -> Добавить шаблон Docker -> Настройки контейнера … กำหนด ค่า กด ปุ่ม ปุ่ม Сохранить (เปลี่ยน Codebangkok เป็น ชื่อ Docker Hub Имя пользователя ของ คุณ เอง)

  • Метки = докер
  • Включено
  • Имя = докер
  • Docker Image = Codebangkok/Jkdocker
  • Тома = /var/run/docker.sock:/var/run/docker.sock
  • Запустить контейнер привилегирован
  • Удаленная файловая система root = /var/Jenkins_home

1) เข้า เว็บ http://localhost: 8080 2) คลิ๊กเมนู Новый элемент แล้ว กำหนด ค่า Введите имя элемента = Pipelineapp เลือก Конвейер แล้ว กด ปุ่ม OK — > Сохранять

3) ไป ที่ Vscode ติดตั้ง расширения

4) สร้าง .VSCODE каталог แล้ว สร้าง ไฟล์ Настройки.json ด้าน ใน พิมพ์ ตั้ง ค่า ดัง นี้ (เปลียน Имя пользователя, пароль เป็น คุณ คุณ เอง)

{
    "jenkins-runner.jobs": {
        "PipelineApp": {
            "isDefault": true,
            "runWith": "localhost",
            "name": "PipelineApp"
        }
    },
    "jenkins-runner.hostConfigs": {
        "localhost": {
            "url": "http://localhost:8080",
            "user": "admin",
            "password": "admin",
            "useCrumbIssuer": true
        }
    }
}

5) สร้าง ไฟล์ Jenkinsfile แล้ว ใส่ โค้ด Привет, мировой трубопровод

node {
    stage("Hello") {
        echo "Hello World"
    }
}

6) ทดลองรัน Конвейер ด้วย การ กด Cmd + Shift + P (палитра команд) ค้นหา คำ ว่า jenkins แล้ว เลือก Запустите сценарий трубопровода по умолчанию Работа

7) สังเกตุ Выход ว่า Конвейер ได้ เริ่ม งาน แล้ว พร้อม กับ พิมพ์ คำ คำ ว่า Привет, мир ออก มา ที่ Стадия Привет ด้วย

8) แก้ไข ไฟล์ jenkinsfile โดย จะ เพิ่ม เพิ่ม เพิ่ม เพิ่ม Стадия ดัง นี้ (เปลี่ยน Codebangkok เป็น ชื่อ Docker Hub Имя пользователя และ пароль ของ คุณ เอง)

  • SCM ใช้ สำหรับ สำหรับ git клон исходный код ลง มา ที่ Рабочая область
  • Сборка ใช้ สำหรับ Строительство изображения Docker ด้วย Dockerfile ใน โปรเจ็ค
  • Push ใช้ สำหรับ Нажмите изображение Docker ไป ที่ Docker Registry
node("docker") {
    stage("SCM") {
        git branch: "master", url: "https://github.com/codebangkok/jenkins"
    }
    stage("Build") {
        sh "docker image build -t codebangkok/goapp src/goapp"
    }
    stage("Push") {
        sh """
        docker login -u "codebangkok" -p "mypassword"
        docker image push codebangkok/goapp
        """
    }
}

9). Запустите сценарий трубопровода на задании по умолчанию สังเกตุ ว่า Jenkins จะ สร้าง สร้าง สร้าง สร้าง ขึ้น มา เพื่อ ใช้ สำหรับ สำหรับ Строительство изображения Docker

และ หลัง จาก Сборка

10) กลับ ไป เวป http://localhost: 8080/job/pipelineapp ดู ที่ ที่ ที่ แสดง เห็น ถึง การ ทำ งาน ของ Конвейер ที่ Успех ทุก ขั้นตอน

Оригинал: «https://dev.to/codebangkok/running-jenkins-in-docker-5gkd»