اذهب إلى المحتوى

السؤال

نشر

أحاول تغيير صلاحية مجلدات المشروع لدي من خلال تنفيذ أمر CMD من داخل Dockerfile خلال إعادا الحاوية ولكنة لايعمل

FROM <my_image-source>
SHELL ["/bin/bash", "-c"]
USER root_wael
WORKDIR /dir/dir
COPY . .
CMD chmod 777 -R /src/main/*
CMD chmod 777 -R /app/main/*

لدي chmod لايعمل

Recommended Posts

  • 1
نشر

يمكنك استعمال أمر من نوع CMD وحيد في ملف Dockerfile وهو الأمر الذي تريد تنفيذه خلال تشغيل الحاوية launch container (بناء الصورة) building the image

لذلك نستخدم الأمر RUN بدل CMD

RUN chmod 777 -R /src/main/*
RUN chmod 777 -R /app/main/*

 

 

  • 0
نشر

تسمح لك تعليمات RUN بتثبيت التطبيقات والحزم المطلوبة وتنفذ الاوامر في طبقة عالية على الصورة المشأة و غالبًا ما ستجد تعليمات RUN متعددة في Dockerfile.

تعليمات CMD تسمح لك بتعيين أمر افتراضي والذي سيتم تنفيذه فقط عند تشغيل الحاوية دون تحديد أم إذا تم تشغيل حاوية Docker بأمر  فسيتم تجاهل الأمر الافتراضي إذا كان Dockerfile يحتوي على أكثر من تعليمة CMD فسيتم تجاهل تعليمات CMD.

لذا الحل هو أن تستعمل run في هذه الحالة بدل cmd

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...