ساخت اولین وب سایت (با داکر دسکتاپ)


در این آموزش طریقه ایجاد یک سرور محلی روی لینوکس تحت ویندوز با استفاده از داکر دسکتاپ توضیح داده شده است.

ساخت اولین وب سایت روی سرور محلی با داکر دسکتاپ

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

در این آموزش طریقه ایجاد یک سرور محلی روی لینوکس تحت ویندوز با استفاده از داکر دسکتاپ توضیح داده شده است. در ادامه مراحل ایجاد اولین پروژه php روی یک سیتم محلی خدمت شما توضیح داده شده است:

  1. با «شکن» تحریم‌های اینترنتی رو بی‌اثر کن!

    با توجه به اینکه داکر ایران را تحریم کرده از روشی که در سایت شکن گفته شده DNS سیستم محلی خود را تغییر دهید و سیستم خود را Restart کنید.

  2. دانلود و نصب لینوکس روی ویندوز

    نصب لینوکس به‌صورت زیرسیستم ویندوز (WSL - Windows Subsystem for Linux) یک روش ساده و کارآمد برای اجرای توزیع‌های لینوکس روی ویندوز 10 و ویندوز 11 است. با استفاده از WSL، شما می‌توانید از ویژگی‌های لینوکس در محیط ویندوز بدون نیاز به بوت مجدد استفاده کنید.اگر قبلا لینوکس را به عنوان زیر سیستم ویندوز خود نصب نکرده اید اینجا کلیک کنید.

  3. دانلود و نصب داکر دسکتاپ

    Docker Desktop یک نرم‌افزار مدیریت کانتینر است که به توسعه‌دهندگان این امکان را می‌دهد تا به راحتی برنامه‌های خود را در محیط‌های مجزای کانتینر اجرا و مدیریت کنند. Docker Desktop به راحتی می‌تواند با سایر ابزارهای توسعه ادغام شود و به شما این امکان را می‌دهد که به سرعت برنامه‌های خود را آزمایش و توسعه دهید. اگر قبلا داکر دسکتاپ را روی ویندوز خود نصب نکرده اید اینجا کلیک کنید.

  4. تنظیمات اولیه داکر دسکتاپ

    زمپ (XAMPP) و داکر دسکتاپ (Docker Desktop) دو ابزار مختلف برای راه‌اندازی محیط‌های سرور و توسعه نرم‌افزار هستند. همانگونه که برای استفاده از زمپ باید ابتدا آن را استارت کنید، داکر دسکتاپ را نیز باید قبل از استفاده استارت کنید. برای استارت داکر دسکتاپ اینجا کلیک کنید.

  5. به روز رسانی اوبونتو 22.04

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

    ابونتو 22.04 را به روش Run as administrator باز کنید و توسط دو دستور زیر به روز رسانی آن را انجام دهید.

    Ubuntu 22.04
    sudo apt-get update
    Ubuntu 22.04
    sudo apt-get upgrade
  6. اتصال Vs Code به WSL
  7. اتصال Visual Studio Code (VS Code) به Windows Subsystem for Linux (WSL) به شما این امکان را می‌دهد که به راحتی در محیط لینوکس کار کنید و از امکانات VS Code بهره‌مند شوید. برای مشاهده مراحل اتصال VS Code به WSL اینجا کلیک کنید.

    دایرکتوری پروژه
  8. ایجاد دایرکتوری پروژه

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

    برای ایجاد یک دایرکتوری پروژه در اوبونتو 22.04، می‌توانید از روش‌های مختلفی استفاده کنید، از جمله استفاده از VS Code یا دستورات Bash. هر دو روش در ادامه توضیح داده شده‌اند.

    • روش اول : استفاده از دستورات Bash
    •  نصب لینوکس (اوبونتو) روی ویندوز

      در پنجره start مطابق شکل زیر ابونتو را به صورت Run as administrator باز کنید.

       نصب لینوکس (اوبونتو) روی ویندوز
      ubuntu 22.04
      mkdir first-website
    • روش دوم : استفاده از Visual Studio Code
      • باز کردن VS Code
      • اتصال Vs Code به WSL
      • برای مشاهده مراحل اتصال VS Code به WSL اینجا کلیک کنید.

        دایرکتوری پروژه
      • ایجاد پوشه جدید
      • از منوی اصلی، گزینه File را انتخاب کنید و سپس Add Folder to Workspace را انتخاب کنید.

        دایرکتوری پروژه دایرکتوری پروژه

        حال در پنجره باز شده مشابه شکل زیر نام دلخواه پروژه خود را وارد کنید مثلا first-website سپس روی گزینه Add کلیک کنید تا این فولدر ایجاد گردد.

        دایرکتوری پروژه
  9. باز کردن دایرکتوری پروژه در Vs Code
  10. مشابه شکل زیر از منوی اصلی File را انتخاب کنید.

    دایرکتوری پروژه

    حال روی گزینه Open Folder کلیک کنید

    دایرکتوری پروژه

    از لیست باز شده در وسط صفحه نام پروژه خود را پیدا کرده و روی آن کلیک کنید

    دایرکتوری پروژه

    بعد از اضافه شدن به آدرس بار روی گزینه Ok کلیک کنید تا برای اولین بار دایرکتوری پروژه در سمت چپ Vs Code نمایش داده شود.

    دایرکتوری پروژه
    دایرکتوری پروژه
  11. ایجاد Dockerfile

    در دایرکتوری پروژه، یک فایل به نام Dockerfile ایجاد کنید و کد زیر را درون آن قرار دهید:

    dockerfile
    FROM php:8.4-fpm
    RUN docker-php-ext-install mysqli pdo pdo_mysql
    WORKDIR /var/www/html
    COPY . .
    CMD ["php-fpm"]
  12. ایجاد فایل docker-compose.yml

    برای مدیریت کانتینرها به راحتی، می‌توانید از Docker Compose استفاده کنید. یک فایل به نام docker-compose.yml در دایرکتوری پروژه ایجاد کنید و کد زیر را داخل آن قرار دهید:

    yaml
    services:
    php:
    build: .
    volumes:
    - .:/var/www/html
    networks:
    - my-network
    nginx:
    image: nginx:latest
    ports:
    - "8080:80"
    volumes:
    - .:/var/www/html
    - ./nginx.conf:/etc/nginx/conf.d/default.conf
    networks:
    - my-network
    networks:
    my-network:
    driver: bridge
  13. ایجاد فایل پیکربندی Nginx

    یک فایل به نام nginx.conf در دایرکتوری پروژه ایجاد کنید و محتوای زیر را در آن وارد کنید:

    yaml
    server {
    listen 80;
    server_name localhost;
    root /var/www/html;
    index index.php index.html index.htm;
    location / {
    try_files $uri $uri/ /index.php?$query_string;
    }
    location ~ \.php$ {
    include fastcgi_params;
    fastcgi_pass php:9000;
    fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
    }
    }
  14. ایجاد فایل index.html

    در دایرکتوری پروژه، یک فایل جدید به نام index.html ایجاد کنید و محتوای زیر را به آن اضافه کنید:

  15. ایجاد فایل index.php:

    در دایرکتوری پروژه، یک فایل جدید به نام index.php ایجاد کنید و محتوا را به آن اضافه کنید:

    php
    <?php
    phpinfo();
    ?>
  16. Run کردن داکر داکر دسکتاپ
  17. مطابق آنچه در مرحله چهار گفته شد ، دقت کنید داکر دسکتاپ استارت باشد برای استارت کردن داکر دسکتاپ اینجا کلیک کنید.

  18. باز کردن ترمینال در Vs Code
  19. در منوی اصلی Vs Code گزینه Terminal را انتخاب کنید و مشابه شکل زیر روی New Terminal کلیک کنید تا پنجره ترمینال باز شود.

    دایرکتوری پروژه دایرکتوری پروژه
  20. ساخت و اجرای کانتینر

    فرمان زیر را کپی کنید و در خط فرمان باز شده در ترمینال که در مرحله قبل توضیح داده شد با کلیک راست کردن paste نمایید.

    • ساخت کانتینر:
      bash
      docker-compose build
    • اجرای کانتینر:
      bash
      docker-compose up
  21. دسترسی به اپلیکیشن

    اکنون می‌توانید با باز کردن مرورگر خود ‌ (Browser)، به آدرس زیر بروید:

    bash
    http://localhost:8080

اگر مراحل فوق را به درستی انجام داده باشید مشابه شکل زیر اولین پروژه شما به درستی بر روی سرور محلی شما اجرا شده است.

دایرکتوری پروژه