Docker-т нэвтрэх гарын авлага: Өөрийн програмаа контейнержуулах

2/18/2026
3 min read

markdown\n# Docker-т нэвтрэх гарын авлага: Өөрийн програмаа контейнержуулах\n\nDocker нь орчин үеийн програм хангамж хөгжүүлэлт болон байршуулалтын салшгүй нэг хэсэг болсон. Kubernetes-ийн талаарх хэлэлцүүлэг өрнөж байгаа хэдий ч Docker нь олон компаниудын програм хангамжийг бүтээх, турших, байршуулах үндсэн хэрэгсэл хэвээр байна. Энэхүү нийтлэл нь Docker-т хэрхэн хурдан нэвтрэх, түүний үндсэн ойлголтуудыг ойлгох, мөн таны програмыг контейнержуулахад туслах практик жишээг агуулна.\n\n## Docker-ийн үндсэн ойлголтууд\n\nПрактикт гарахаасаа өмнө Docker-ийн зарим үндсэн ойлголтуудыг ойлгох нь чухал:\n\n* **Зураг (Image):** Зураг нь зөвхөн унших боломжтой загвар бөгөөд програмыг ажиллуулахад шаардлагатай бүх зүйлийг агуулдаг: код, ажиллах орчин, системийн хэрэгслүүд, сангууд болон хамаарал. Виртуал машины зурагтай төстэй боловч илүү хөнгөн.\n\n* **Контейнер (Container):** Контейнер нь зургаас үүсгэсэн ажиллаж буй жишээ юм. Энэ нь зургийн ажиллаж буй жишээ бөгөөд програм болон түүний бүх хамаарлыг агуулдаг. Контейнерууд нь бие биенээсээ тусгаарлагдсан, өөрийн гэсэн файлын систем, процесс болон сүлжээний орон зайтай.\n\n* **Docker Hub:** Docker Hub бол олон нийтийн зураг хадгалах сан бөгөөд та урьдчилан бүтээгдсэн зургуудыг татаж авах эсвэл өөрийн зургуудаа байршуулах боломжтой. GitHub-тэй төстэй боловч Docker зургуудад зориулагдсан.\n\n* **Dockerfile:** Dockerfile бол Docker зургийг бүтээх бүх зааврыг агуулсан текст файл юм. Dockerfile бичсэнээр та зургийг үүсгэх процессыг автоматжуулах боломжтой.\n\n* **Docker Compose:** Docker Compose бол олон контейнертэй Docker програмыг тодорхойлох, ажиллуулахад зориулагдсан хэрэгсэл юм. Энэ нь YAML файлыг ашиглан програмын үйлчилгээг тохируулах, дараа нь ганц командоор бүх үйлчилгээг эхлүүлэх эсвэл зогсоох боломжийг олгодог.\n\n## Docker-ийг суулгах\n\nЭхлээд та Docker-ийг суулгах хэрэгтэй. Docker нь янз бүрийн үйлдлийн системд зориулсан суулгах багцыг санал болгодог. [Docker-ийн албан ёсны вэбсайтад](https://www.docker.com/get-started/) зочилж, холбогдох зааврын дагуу суулгана уу.\n\nСуулгаж дууссаны дараа `docker --version` командыг ажиллуулж Docker зөв суулгагдсан эсэхийг шалгаж болно.\n\n## Энгийн Python програмыг контейнержуулах\n\nБид энгийн Python програм үүсгэж, Docker ашиглан контейнержуулна.\n\n### 1. Python програм үүсгэх\n\n`app.py` нэртэй файл үүсгэж, дараах кодыг оруулна уу:\n\npython\nfrom flask import Flask\napp = Flask(name)\n\n@app.route(# Аппликейшний кодоо ажлын санд хуулах COPY app.py .

5000 портыг ил болгох

EXPOSE 5000

Захиалгыг эхлүүлэх командыг тодорхойлох

CMD [* version: "3.9": Docker Compose файлын хувилбарыг заана.

  • services: Аппликешны үйлчилгээнүүдийг тодорхойлно.
  • web: "web" нэртэй үйлчилгээг тодорхойлно.
  • image: my-python-app: Үйлчилгээнд ашиглах image-ийг заана.
  • ports: Порт холболтыг тодорхойлно.

2. Аппликешныг ажиллуулах

docker-compose.yml файл агуулсан директорт дараах командыг ажиллуулж аппликешныг эхлүүлнэ үү:

docker-compose up -d
  • docker-compose up: Аппликешныг эхлүүлэх команд.
  • -d: Контейнерийг салгах горимд ажиллуулна.

3. Аппликешныг зогсоох

Дараах командыг ашиглан аппликешныг зогсооно уу:

docker-compose down

Docker аюулгүй байдлын шилдэг туршлагууд

Хэлэлцүүлгээс харахад Docker image-ийн аюулгүй байдал нь чухал асуудал юм. Docker-ийн аюулгүй байдлын шилдэг туршлагууд:

  • Албан ёсны image ашиглах: Аль болох албан ёсоор нийлүүлсэн image-үүдийг ашиглаарай, эдгээр image-үүд нь ихэвчлэн аюулгүй байдлын сканнердаар шалгагдаж, засвар үйлчилгээ хийгддэг.
  • Image-ийн эмзэг байдлыг сканнердах: Trivy зэрэг хэрэгслүүдийг ашиглан image-ийн мэдэгдэж буй эмзэг байдлыг сканнердаж, image-ээ цаг тухайд нь шинэчилнэ үү.
  • Хамгийн бага эрхтэй байх зарчим: Контейнерийг root хэрэглэгчээр ажиллуулахаас зайлсхий.
  • Контейнерийн нөөцийг хязгаарлах: cgroups-ийг ашиглан контейнерийн CPU болон санах ойн хэрэглээг хязгаарлаарай.
  • Image-ээ тогтмол шинэчлэх: Аюулгүй байдлын эмзэг байдлыг засахын тулд image-ээ шинэчилж байгаарай.
  • Аюулгүй байдлын сканнердах хэрэгсэл ашиглах: Snyk, Clair зэрэг хэрэгслүүдийг CI/CD процессдээ нэгтгэж, image-ийн эмзэг байдлыг автоматаар сканнердаж болно.

ДүгнэлтЭнэхүү нийтлэл нь Docker-ын хурдан эхлүүлэх гарын авлагыг агуулж, үндсэн ойлголтууд, суулгах алхмууд, мөн энгийн Python програмыг контейнержуулах жишээг хамарна. Эдгээр үндсэн мэдлэгийг эзэмшсэнээр та Docker-ыг ашиглан өөрийн програмаа бүтээх, турших, байршуулах боломжтой. Санах зүйл бол аюулгүй байдал чухал бөгөөд Docker image-ийн аюулгүй байдалд үргэлж анхаарч, програмаа хамгаалахын тулд зохих арга хэмжээг авах хэрэгтэй. Kubernetes нь том хэмжээний контейнер зохион байгуулалтад хүчтэй боловч Docker нь олон тохиолдолд энгийн бөгөөд үр дүнтэй шийдэл хэвээр байна. Docker-ыг эзэмшсэнээр та орчин үеийн програм хангамж хөгжүүлэлт, байршуулалтын сорилтуудыг илүү сайн даван туулах боломжтой болно.

Published in Technology

You Might Also Like

Хэрхэн үүлний тооцооллын технологийг ашиглах вэ: Таны анхны үүлний инфраструкцийг байгуулах бүрэн гарын авлагаTechnology

Хэрхэн үүлний тооцооллын технологийг ашиглах вэ: Таны анхны үүлний инфраструкцийг байгуулах бүрэн гарын авлага

[[HTMLPLACEHOLDER0]] [[HTMLPLACEHOLDER1]] [[HTMLPLACEHOLDER2]] [[HTMLPLACEHOLDER3]] [[HTMLPLACEHOLDER4]] [[HTMLPLACEHOLD...

Сэрэмжлүүлэг! Claude Code-ийн эцэг шууд хэллээ: 1 сарын дараа Plan Mode хэрэггүй болно, програм хангамжийн инженерийн цол алга болноTechnology

Сэрэмжлүүлэг! Claude Code-ийн эцэг шууд хэллээ: 1 сарын дараа Plan Mode хэрэггүй болно, програм хангамжийн инженерийн цол алга болно

Сэрэмжлүүлэг! Claude Code-ийн эцэг шууд хэллээ: 1 сарын дараа Plan Mode хэрэггүй болно, програм хангамжийн инженерийн цо...

2026年 Top 10 深度学习资源推荐Technology

2026年 Top 10 深度学习资源推荐

2026年 Top 10 深度学习资源推荐 深度 суралцах хурдан хөгжиж байгаа тул олон төрлийн суралцах материал, хэрэгсэл гарч ирж байна. Энэ ...

2026 оны Топ 10 AI агент: Гол борлуулалтын цэгүүдийн тайлбарTechnology

2026 оны Топ 10 AI агент: Гол борлуулалтын цэгүүдийн тайлбар

2026 оны Топ 10 AI агент: Гол борлуулалтын цэгүүдийн тайлбар Оршил Хиймэл оюун ухааны хурдтай хөгжлийн хамт, AI агентууд...

2026 оны шилдэг 10 AI хэрэгслийг санал болгож байна: Хүний оюун ухааны жинхэнэ потенциалыг чөлөөлөхTechnology

2026 оны шилдэг 10 AI хэрэгслийг санал болгож байна: Хүний оюун ухааны жинхэнэ потенциалыг чөлөөлөх

2026 оны шилдэг 10 AI хэрэгслийг санал болгож байна: Хүний оюун ухааны жинхэнэ потенциалыг чөлөөлөх Технологи хурдтай хө...

2026 оны Top 10 AWS хэрэгсэл ба нөөцийн саналTechnology

2026 оны Top 10 AWS хэрэгсэл ба нөөцийн санал

2026 оны Top 10 AWS хэрэгсэл ба нөөцийн санал Хурдан хөгжиж буй үүлний тооцооллын салбарт Amazon Web Services (AWS) нь т...