من أجل رفع بيئة العمل بسرعة ، هناك طرق عديدة. واحد منهم هو رفع جميع الخدمات اللازمة في حاويات Docker. للإسراع في إنشاء مشاريع جديدة في إطار عمل Yii ، كتبت تعليمات صغيرة يستخدمها المطورون في فريقنا.
في البداية ، يجب أن يكون لديك عامل إرساء ، تكوين عامل ميناء ، php و php-composer.
نقوم بإنشاء المجلد مع المشروع ومجلد عامل الميناء فيه.
mkdir project-dir cd project-dir && mkdir docker
في مجلد عامل الميناء ، أنشئ ملف التكوين لحاوية ملف Dockerfile .
# nginx php FROM richarvey/nginx-php-fpm # ADD app /var/www/app # RUN rm -Rf /etc/nginx/sites-enabled
في مجلد docker نفسه ، أنشئ docker-compose.yml لرفع بيئة التطوير.
# docker-compose version: '3' # deafult networks: default: driver: bridge # services: # - app: # Dockerfile build: # context: ../ dockerfile: ./docker/Dockerfile # 80 ports: - "80:80" # networks: - default # db depends_on: - db # volumes: - "../app:/var/www/app" # nginx - "./conf/nginx:/etc/nginx/sites-available" # db: image: mysql:latest # networks: - default # ports: - "3336:3306" # environment: # MYSQL_ROOT_PASSWORD: root # MYSQL_DATABASE: yii-template-db # volumes: - "./database:/var/lib/mysql"
بالنسبة إلى nginx ، أنشئ مجلد docker / conf / nginx وملف site.conf فيه. قد يتغير الملف ، اعتمادًا على الطريقة التي تريد بها تكوين nginx في مشروعك. يمكن تغييره محليًا ، لأنه يربط من خلال الحجم. ولكن يجب ألا ننسى إعادة تشغيل nginx داخل الحاوية: nginx -s reload
server { charset utf-8; client_max_body_size 128M; listen 80;
يتم تنفيذ جميع الأوامر من المجلد الجذر.
composer create-project --prefer-dist yiisoft/yii2-app-advanced app
أمر composer create-project --prefer-dist yiisoft/yii2-app-advanced app
.- قم بتشغيل
docker-compose -f docker/docker-compose.yml up -d
- نقوم بتهيئة
app/init --env=Development --overwrite=All
المشروع app/init --env=Development --overwrite=All
- افتح تطبيق file / common / config / main-local.php في المحرر واملأه بالبيانات للاتصال بقاعدة البيانات. في المثال ، لدينا كلمة مرور الجذر كجذر ، مضيف DB هو db ، واسم قاعدة البيانات هو yii-template-db.
- الاتصال
docker exec -it docker_app_1 bash
- قم بتشغيل أمر ترحيل قاعدة البيانات ترحيل
php /var/www/app/yii migrate
- إنشاء مجلد سجل
mkdir /var/www/app/log
exit
- نحن فرامل خدمة
docker-compose -f docker/docker-compose.yml down
- قم
docker-compose -f docker/docker-compose.yml up -d
مرة أخرى docker-compose -f docker/docker-compose.yml up -d
- افتح localhost في متصفح وانظر إلى الموقع الجديد.
تحديث: من الجدير بالذكر أن هناك دائمًا صورة Docker رسمية لـ Yii2 .