ขั้นตอน การ เซ็ต อัพ อัพ 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»