HashiCorp шинэ төслийг үзүүлэв
Үнэн хэрэгтээ HashiCorp нь Waypoint-ийг нээлттэй эх сурвалж болгон гаргасан бөгөөд олон жишээн дээр ирдэг. Оркестраторын давхарга нь танаас шалтгаална, Waypoint нь гүйцэтгэх файл хэлбэрээр ирдэг бөгөөд та зөөврийн компьютер дээрээ эсвэл өөрийн сонгосон CI/CD зохион байгуулах хэрэгслээс шууд ажиллуулж болно. Waypoint нь Kubernetes, Docker, Google Cloud Run, AWS ECS болон бусад програмуудыг дэмждэг тул таны аппликешнүүдийг байршуулах зорилго нь танаас хамаарна.
Гайхалтай уншсаны дараа
Хадгалах газрыг клончилсны дараа нэг хуудсыг харуулсан програмын бүтцийг харцгаая.
Энэ төсөлд Dockerfile байхгүй гэдгийг та анзаарсан байх. Тэдгээрийг жишээн дээр нэмээгүй, учир нь зарчмын хувьд бидэнд хэрэггүй, учир нь Waypoint бидний өмнөөс тэдэнд анхаарал тавих болно. Файлыг нарийвчлан авч үзье waypoint.hcl
юу хийхийг ойлгохын тулд:
project = "example-nodejs"
app "example-nodejs" {
labels = {
"service" = "example-nodejs",
"env" = "dev"
}
build {
use "pack" {}
registry {
use "aws-ecr" {
region = "us-east-1"
repository = "waypoint-gitlab"
tag = "latest"
}
}
}
deploy {
use "aws-ecs" {
region = "us-east-1"
memory = "512"
}
}
}
Бүтээцийн үе шатанд Waypoint нь Cloud Native Buildpacks (
Зургийг бүтээсний дараа Waypoint нь үүнийг манай AWS ECR бүртгэлд автоматаар байршуулж, хүргэхэд бэлэн болно. Барилга дууссаны дараа хүргэх алхамыг ашиглана
Миний зөөврийн компьютерээс - бүх зүйл энгийн. Би AWS бүртгэлдээ баталгаажуулсан Waypoint-г оруулсан бөгөөд энэ нь "зүгээр л ажилладаг". Гэхдээ би зөөврийн компьютерээсээ цааш явахыг хүсвэл яах вэ? Эсвэл би энэ суулгацыг CI/CD-ийн нэг хэсэг болгон автоматжуулахыг хүсэж байна уу? Энэ бол GitLab CI/CD орж ирдэг түүхийн хэсэг юм!
NB Хэрэв та зүгээр л CI/CD-г хэрэгжүүлэхээр төлөвлөж байгаа эсвэл шугам хоолой барих шилдэг туршлагыг хэрэгжүүлж эхлэхийг хүсч байгаа бол Slurm-ийн шинэ сургалтанд анхаарлаа хандуулаарай.
“Жишээ нь Gitlab CI-г ашигласан CI/CD” . Одоо урьдчилсан захиалгын үнээр авах боломжтой.
GitLab CI/CD дэх зам цэг
Энэ бүгдийг GitLab CI/CD дээр зохион байгуулахын тулд файлдаа юу хэрэгтэй байгааг харцгаая. .gitlab-ci.yml
:
- Юуны өмнө та дотор нь ажиллуулахын тулд үндсэн зураг хэрэгтэй. Waypoint нь ямар ч Linux түгээлт дээр ажилладаг, түүнд зөвхөн Docker хэрэгтэй байдаг тул бид ерөнхий Docker дүрстэй ажиллах боломжтой.
- Дараа нь та энэ зурган дээр Wapoint програмыг суулгах хэрэгтэй. Ирээдүйд бид цуглуулж магадгүй
зургийн мета бүтээх мөн энэ үйл явцыг өөртөө зориул. - Эцэст нь бид Waypoint командуудыг ажиллуулна
Дээр дурдсан зүйлс нь суулгацыг дуусгахад шаардлагатай скриптүүдийг ажиллуулахад шаардлагатай бүх зүйлийг тодорхойлсон боловч AWS-д байршуулахын тулд бидэнд өөр нэг зүйл хэрэгтэй болно: бид AWS бүртгэлдээ нэвтэрсэн байх ёстой. Замын цэгийн тайлбарт
AWS дахь GitLab CICD баталгаажуулалтын хэд хэдэн сонголт байдаг. Эхний сонголт бол суулгацыг ашиглах явдал юм AWS_ACCESS_KEY_ID
и AWS_SECRET_ACCESS_KEY
.
Бүгдийг нь нийлүүлж байна
Баталгаажуулалтыг ойлгосны дараа бид эхэлж болно! Бидний финал .gitlab-ci.yml
иймэрхүү харагдаж байна:
waypoint:
image: docker:latest
stage: build
services:
- docker:dind
# Define environment variables, e.g. `WAYPOINT_VERSION: '0.1.1'`
variables:
WAYPOINT_VERSION: ''
WAYPOINT_SERVER_ADDR: ''
WAYPOINT_SERVER_TOKEN: ''
WAYPOINT_SERVER_TLS: '1'
WAYPOINT_SERVER_TLS_SKIP_VERIFY: '1'
script:
- wget -q -O /tmp/waypoint.zip https://releases.hashicorp.com/waypoint/${WAYPOINT_VERSION}/waypoint_${WAYPOINT_VERSION}_linux_amd64.zip
- unzip -d /usr/local/bin /tmp/waypoint.zip
- rm -rf /tmp/waypoint*
- waypoint init
- waypoint build
- waypoint deploy
- waypoint release
Бид зургаас эхэлж байгааг та харж байна docker:latest
болон Waypoint-д шаардлагатай хэд хэдэн орчны хувьсагчийг тохируулна. Бүлэгт script
Бид Waypoint программын хамгийн сүүлийн хувилбарыг татаж аваад суулгана /usr/local/bin
. Манай гүйгч аль хэдийн AWS-д зөвшөөрөл авсан тул дараа нь бид зүгээр л гүйдэг waypoint init
, build
, deploy
и release
.
Бүтээх даалгаврын гаралт нь бидний програмыг гаргасан эцсийн цэгийг харуулах болно:
Замын цэгийн нэг
HashiCorp болон GitLab-ийн боловсруулсан хамтарсан шийдлүүд нь компаниудад хүргэх дамжуулах хоолой, дэд бүтцийн тогтвортой удирдлагаар хангах замаар програмуудыг хөгжүүлэх илүү сайн арга замыг олоход тусалдаг. Замын цэг нь зөв чиглэлд өөр нэг алхам хийсэн бөгөөд бид төслийн цаашдын хөгжлийг тэсэн ядан хүлээж байна. Та Waypoint-ийн талаар илүү ихийг олж мэдэх боломжтой
Та CI/CD-ийн зарчмуудыг ойлгож, Gitlab CI-тэй ажиллах бүх нарийн ширийн зүйлийг эзэмшиж, видео хичээлд сууснаар шилдэг туршлагуудыг хэрэгжүүлж эхлэх боломжтой.
Эх сурвалж: www.habr.com