تاریخ امروز۱۴۰۳-۰۱-۱۰

نصب داکر در CentOS – آشنایی با اجرای یک Docker Container

در مطلب آموزش نصب داکر در CentOS، قصد داریم شما را با نحوه نصب آن بر روی CentOS آشنا نماییم اما قبل از آن به این مسئله خواهیم پرداخت که Docker چیست و چه کاربردی دارد.

داکر (Docker) یک پلتفرم متن باز است که بر مبنای سیستم عامل لینوکس راه‌اندازی شده است. Docker پلتفرمی است که اجرای فرآیندهای ایجاد، پیاده سازی و اجرای برنامه‌ها را در یک کانتینر بسیار ساده و آسان می‌کند.

این پلتفرم مشابه ماشین‌های مجازی می‌باشد با این تفاوت که قابلیت جابجایی بیشتری دارد، با منابع سازگارتر است و ارتباط بیشتری با سیستم‌عامل اجرا شده در سرور مجازی خواهد داشت.

داکر با هدف ایجاد تعامل راحت‌تر با کانتینرها ایجاد شد و این امکان را برای کاربران فراهم می‌آورد تا یک محیط را به چند بخش تقسیم کنند و در هر بخش یک برنامه مجزا اجرا نماید.

داکر در شروع کار برای لینوکس ساخته شد اما امروزه به خوبی در ویندوز و MacOS نیز اجرا می‌شود.

دو روش برای نصب Docker در CentOS وجود دارد. یک روش، نصب این ابزار بر روی نصب سیستم عامل است و دیگری وارد کردن ابزاری با نام Docker Machine در سرور لینوکس است که به صورت خودکار، نصب Docker را در خود دارد.

در ادامه با نحوه نصب مرحله به مرحله داکر در CentOS در خدمت شما خواهیم بود، پس تا پایان این آموزش همراه ما باشید.

پیش نیاز نصب داکر در CentOS

  • نسخه ۶۴ بیتی CentOS 7 Droplet
  • کاربر Root یا کاربر غیر Root با مجوزهای sudo

نکته: Docker نیاز به یک نسخه ۶۴ بیتی از CentOS و نسخه کرنل حداقل ۳٫۱۰ یا بالاتر دارد. نسخه پیش‌فرض CentOS Droplet 64 بیتی این پیش‌نیازها را در خود خواهد داشت.

تمامی دستورات موجود در این آموزش می‌بایست با یک کاربر Root اجرا شوند. درصورت نیاز به دسترسی روت لازم است از sudo در ابتدای آن استفاده کنیم.

نصب داکر

در ابتدا بهتر است آخرین نسخه Docker را از سایت اصلی آن نصب نماییم. زیرا ممکن است بسته نصب Docker موجود در منبع رسمی CentOS آخرین نسخه این ابزار نباشد. در این بخش نحوه انجام این کار را به شما نشان می‌دهیم.

اما بهتر است ابتدا پایگاه داده بسته‌ها را بروزرسانی نماییم.

sudo yum check-update

سپس دستور زیر را اجرا کنید. اجرای این دستور، سایت رسمی Docker را اضافه می‌کند، آخرین نسخه Docker را دانلود و آن را نصب می‌نماید:

curl -fsSL https://get.docker.com/ | sh

پس از اتمام روند نصب، Daemon Docker را راه اندازی کنید:

sudo systemctl start docker

بعد از راه اندازی، بررسی کنید که داکر در حال اجرا است:

sudo systemctl status docker

خروجی باید مشابه موارد زیر باشد و نشان دهد که سرویس داکر فعال و در حال اجرا است:

Output
● docker.service - Docker Application Container Engine
   Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
   Active: active (running) since Sun 2016-05-01 06:53:52 CDT; 1 weeks 3 days ago
     Docs: https://docs.docker.com
 Main PID: 749 (docker)

درنهایت با اجرای دستور زیر اطمینان حاصل نمایید که پس از نصب Docker، این ابزار بعد از هر بار راه‌اندازی سرور ابری، شروع به کار می‌کند.

sudo systemctl enable docker

با نصب این ابزار نه تنها سرویس Docker را در اختیار شما قرار می‌دهد، بلکه شما به ابزار خط فرمان Docker نیز دسترسی پیدا می‌کنید. در ادامه آموزش نصب داکر در CentOS در مورد چگونگی استفاده از خط فرمان Docker نیز صحبت خواهیم کرد.

استفاده از خط فرمان داکر
استفاده از فرمان داکر

استفاده از خط فرمان داکر

پس از نصب و اجرای داکر، لازم است شما را با ابزار خط فرمان آشنا نماییم. برای استفاده از داکر گزینه‌ها و زیرفرمان‌های مختلفی وجود دارد که در ادامه به آن می‌پردازیم.

docker [option] [command] [arguments]

برای مشاهده تمام زیرفرمان‌های موجود، دستور زیر را اجرا نمایید.

docker

تا نسخه ۱٫۱۱٫۱ از Docker، لیست کاملی از دستورات فرعی موجود را به ما خرجی خواهد داد، شامل موارد زیر می‌باشند.

Output

    attach    Attach to a running container
    build     Build an image from a Dockerfile
    commit    Create a new image from a container's changes
    cp        Copy files/folders between a container and the local filesystem
    create    Create a new container
    diff      Inspect changes on a container's filesystem
    events    Get real time events from the server
    exec      Run a command in a running container
    export    Export a container's filesystem as a tar archive
    history   Show the history of an image
    images    List images
    import    Import the contents from a tarball to create a filesystem image
    info      Display system-wide information
    inspect   Return low-level information on a container or image
    kill      Kill a running container
    load      Load an image from a tar archive or STDIN
    login     Log in to a Docker registry
    logout    Log out from a Docker registry
    logs      Fetch the logs of a container
    network   Manage Docker networks
    pause     Pause all processes within a container
    port      List port mappings or a specific mapping for the CONTAINER
    ps        List containers
    pull      Pull an image or a repository from a registry
    push      Push an image or a repository to a registry
    rename    Rename a container
    restart   Restart a container
    rm        Remove one or more containers
    rmi       Remove one or more images
    run       Run a command in a new container
    save      Save one or more images to a tar archive
    search    Search the Docker Hub for images
    start     Start one or more stopped containers
    stats     Display a live stream of container(s) resource usage statistics
    stop      Stop a running container
    tag       Tag an image into a repository
    top       Display the running processes of a container
    unpause   Unpause all processes within a container
    update    Update configuration of one or more containers
    version   Show the Docker version information
    volume    Manage Docker volumes
    wait      Block until a container stops, then print its exit code

برای مشاهده سوئیچ و گزینه‌های مرتبط با یک فرمان خاص می‌توانید دستور زیر را اجرا کنید.

docker docker-subcommand --help

برای مشاهده اطلاعات کل سیستم لازم است دستور زیر را اجرا نمایید.

docker info

اجرای یک Docker Container

کانتینر hello-world نمونه‌ای از کانتینری است که پس از ارسال یک پیام آزمایشی، خارج می‌شود. البته آنها کارآیی بیشتری دارند. کانتینرها شبیه به ماشین‌های مجازی هستند و سازگاری بیشتری با منابع دارند.

به عنوان مثال، یک کانتینر را با استفاده از آخرین نسخه تصویر CentOS اجرا نمایید. ترکیب سوئیچ‌های -i و -t منجر به دسترسی تعاملی و هوشمند به کانتینر می‌شود.

docker run -it centos

خط فرمان شما در این حالت تغییر خواهد کرد، زیرا درون کانتینر مشغول به کار هستید. نتیجه به شکل زیر خواهد بود:

Output
[root@59839a1b7de2 /]#

نکته: به شناسه کانتینر در خط فرمان توجه کنید. در نمونه بالا، این شناسه ۵۹۸۳۹a1b7de2 می‌باشد.

اکنون می‌توانید هر دستوری را در داخل کانتینر اجرا کنید. به عنوان مثال، برای نصب سرور MariaDB در کانتینر در حال اجرا،

نیازی به پیشوند هیچ دستوری با sudo نیست، زیرا در داخل کانتینر با امتیازات روت کار می‌‌کند و می توانید هر نوع فرمانی را درون کانتینر اجرا کنید، به شرح زیر:

yum install mariadb-server

ابر آسیاتک با ارائه ابر سرور مجازی رایگان به مدت ۲۴ ساعت، این امکان را برای کاربران فراهم می‌آورد تا برای یادگیری بهتر بتوانند مطالب آموزشی را در سرور خود تست و پیاده‌سازی نمایند.

سپاس از همراهی شما با تیم ابر آسیاتک

اشتراک‌گذاری

یک نظر

    1. ابر آسیاتک نویسنده پاسخ

      باسلام و وقت بخیر
      داکر با هدف ایجاد تعامل راحت‌تر با کانتینرها ایجاد شد و این امکان را برای کاربران فراهم می‌آورد تا یک محیط را به چند بخش تقسیم کنند و در هر بخش یک برنامه مجزا اجرا نماید.

  1. Hamid_solati پاسخ

    سلام خسته نباشید
    آموزشتون خیلی خوب و کاربردی بود
    فقط میخواستم بدونم داکر فقط از سیستم عامل لینوکس پشتیبانی میکنه؟؟؟؟

    1. ابر آسیاتک نویسنده پاسخ

      کاربر عزیز ابرآسیاتک
      داکر در شروع کار برای لینوکس ساخته شد اما امروزه به خوبی در ویندوز و MacOS نیز اجرا می‌شود.

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *