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


استفاده از Docker Desktop برای برنامه‌نویسان تازه‌کار ‌که به PHP و Laravel علاقه دارند، انتخاب خوبی است. این ابزار به شما کمک می‌کند تا به‌راحتی پروژه‌های خود را مدیریت کنید و مهارت‌های خود را در توسعه و استقرار نرم‌افزار تقویت کنید.

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

  1. نصب Docker Desktop
  2. تنظیمات اولیه داکر دسکتاپ
  3. ایجاد یک پروژه PHP در لینوکس (اوبونتو)
  4. ایجاد Dockerfile در دایرکتوری پروژه
  5. ایجاد فایل docker-compose.yml در دایرکتوری پروژه
  6. ساخت و اجرای کانتینر
  7. دسترسی به اپلیکیشن

در ادامه هر یک از موارد بالا توضیح داده شده است:

  1. نصب Docker Desktop
    اگر قبلاً Docker Desktop را نصب نکرده‌اید، آن را نصب کنید. روش دانلود و نصب داکر دسکتاپ
  2. تنظیمات اولیه داکر دسکتاپ
    بعد از نصب داکر دسکتاپ تنظیمات لازم برای ارتباط با سیستم عامل لینوکس را انجام دهید تنظیمات اولیه داکر دسکتاپ
  3. ایجاد یک پروژه PHP
    • ایجاد دایرکتوری پروژه
      ubuntu 22.04
      mkdir my-php-app
      ubuntu 22.04
      cd my-php-app
    • ایجاد فایل index.php:

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

      php
      <?php
      phpinfo();
      ?>
  4. ایجاد 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"]
  5. ایجاد فایل 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
  6. ایجاد فایل پیکربندی 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;
    }
    }
  7. ساخت و اجرای کانتینر

    در ترمینال، به دایرکتوری پروژه بروید و دستورات زیر را اجرا کنید:

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

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

    bash
    http://localhost:8080

با این مراحل، شما یک اپلیکیشن ساده PHP را با استفاده از Docker Desktop راه‌اندازی کرده‌اید. Docker این امکان را به شما می‌دهد که به جای استفاده از XAMPP، به صورت مستقل و مقیاس‌پذیر برنامه‌های خود را راه‌اندازی و مدیریت کنید. این رویکرد به ویژه برای محیط‌های توسعه و استقرار بسیار مفید است.