Автоматты аударма пайдаланылды

Контейнерлеу 101: Docker қиындықсыз

Бағдарламалық жасақтаманы әзірлеу әлемінде жиі кездесетін мәселелердің бірі-бұл код әзірлеушінің компьютерінде жақсы жұмыс істейтін, бірақ басқа ортаға, мысалы, сынақ немесе өндіріс серверіне ауысқан кезде іске қосудан бас тартатын немесе өзін дұрыс ұстамайтын жағдай. Контейнерлеу технологиясы, атап айтқанда оның ең танымал Docker құралы осы тапсырманы орындау үшін арнайы жасалған.

Сіздің қосымшаңыз бір порттан екінші портқа жеткізілетін құнды жүк екенін елестетіп көріңіз. Бұрын жүктің әр түріне өзінің ерекше көлігі мен шарттары қажет болатын. Docker, керісінше, кез — келген "жүкті" (сіздің қосымшаңызды) оның жұмысына қажетті барлық нәрселермен-кітапханалармен, тәуелділіктермен және конфигурация файлдарымен бірге жинауға болатын стандартты контейнерді ұсынады. Мұндай контейнер кез-келген портта бірдей жұмыс істейді, мейлі ол сіздің жеке ноутбугыңыз, әріптес серверіңіз немесе бұлтты платформаңыз болсын.

Контейнерлеу дегеніміз не?

Контейнерлеу-бұл қосымшаны және оның барлық тәуелділіктерін контейнер деп аталатын оқшауланған блокқа орау әдісі. Бүкіл операциялық жүйені өзегімен эмуляциялайтын виртуалды машиналардан айырмашылығы, контейнерлер хост операциялық жүйесінің өзегінде жұмыс істейді. Бұл оларды ресурстарды тұтыну тұрғысынан өте жеңіл, жылдам және тиімді етеді.

Docker пайдаланудың негізгі артықшылықтары:

  • Портативтілік: контейнерге салынған қолданба Docker орнатылған кез келген ортада бірдей жұмыс істейді.
  • Оқшаулау: контейнерлер бір-бірінен және хост жүйесінен оқшауланған, бұл жұмыс қауіпсіздігі мен тұрақтылығын арттырады.
  • Тиімділік: контейнерлер виртуалды машиналармен салыстырғанда айтарлықтай аз ресурстарды қажет етеді, бұл бір жабдықта көбірек қолданбаларды іске қосуға мүмкіндік береді.
  • Масштабтау: қолданбаның ағымдағы жүктемесіне бейімделу арқылы контейнерлердің көшірмелерін оңай және жылдам жасауға және жоюға болады.

Docker негізгі түсініктері

Docker ді бастау үшін үш негізгі компонентті түсіну керек:

  1. Dockerfile: бұл кескінді құрастыруға арналған қадамдық нұсқаулары бар қарапайым мәтіндік файл. Онда сіз қолданбаңыздың неден тұратынын және оны қалай іске қосу керектігін сипаттайсыз.
  2. Сурет (сурет): бұл контейнерлер жасауға арналған өзгермейтін үлгі. Кескін Dockerfile нұсқаулары негізінде жасалады және сізге қажет нәрсенің бәрін қамтиды: код, кітапханалар, қоршаған орта айнымалылары және конфигурация файлдары.
  3. Контейнер (Контейнер): бұл жұмыс істеп тұрған кескін данасы. Бұл сіздің қосымшаңыз контейнерде тұрады. Қажет болса, контейнерлерді жасауға, іске қосуға, тоқтатуға және жоюға болады.

Практикалық мысалдар

Оның іс жүзінде қалай жұмыс істейтінін қарастырайық. Бастау үшін компьютерге Docker орнату керек.

Сіз Python-да қарапайым веб-сервер жаздыңыз деп елестетіп көріңіз. Оны контейнерде іске қосу үшін бірнеше қадамдар қажет:

Файл жасаңыз app.py осындай мазмұнмен:

from http.server import BaseHTTPRequestHandler, HTTPServer

class SimpleHandler(BaseHTTPRequestHandler):

    def do_GET(self):

        self.send_response(200)

        self.end_headers()

        self.wfile.жазу(b " Docker контейнерінен Сәлем!")

if __name__ == "__main__":

    server = HTTPServer(('0.0.0.0', 8000), SimpleHandler)

    Print ("Сервер 8000 портында жұмыс істейді...")

    server.serve_forever()     

Жақын жерде Dockerfile файлын жасаңыз-бұл қолданбаны "орау" туралы Нұсқаулық:

FROM python:3.11-slim

COPY app.py /app.py

CMD ["python", "/app.py"]

Кескінді жинаңыз:

docker build -t my-python-app .

Контейнерді іске қосыңыз:

docker run -p 8000:8000 my-python-app

Іске қосылғаннан кейін шолғышта ашыңыз http://localhost:8000 -сіз " Docker контейнерінен Сәлем!"

Сіз қосымшаны оқшауланған ортада жинадыңыз және іске қостыңыз, ол енді кез — келген жерде-ноутбукта да, бұлттағы серверде де бірдей жұмыс істейді.

Қорытынды

Сіз заманауи дамудағы ең сұранысқа ие технологиялардың бірін игеруде сенімді және маңызды қадам жасадыңыз. Контейнерлеудің қалай жұмыс істейтінін түсіну және Docker — де алғашқы қосымшаңызды іске қосу-бұл үлкен жетістік.

Енді сізде қосымша зерттеулер мен эксперименттер үшін берік негіз бар. Бұл дағды сіздің арсеналыңызда құнды құрал болатыны және сіздің мансабыңызда немесе жобаларыңызда жаңа мүмкіндіктер ашатыны сөзсіз. Сондықтан ұстаңыз

Технология, цифрлық әлем және IT өнімдерін жасау туралы қарапайым түсініктемелерді біздің Telegram dat Studio арнасынан таба аласыз. Қиындықты түсінуді бастау үшін жазылыңыз — оңай.

Пікірлер 2

Кіру пікір қалдыру үшін

благодарю за комментарий! Больше объяснений в нашем Telegram - канале https://t.me/razrabotkadat

Жауап беру