উইন্ডোজে ডকারের চিত্রটি মাউন্ট করার চেষ্টা করার সময় আমি কিছু আকর্ষণীয় অদ্ভুততা পেয়েছি।
আমি একটি .shস্ক্রিপ্ট তৈরি করেছি যা আমাদের বিকাশকারী পরিবেশের চিত্র চালানোর জন্য প্রকল্প ফোল্ডারের মাউন্ট করে। আমি একটি স্ক্রিপ্ট চাই যা প্রতিটি দেবই তাদের মেশিন নির্বিশেষে চালাতে পারে। এটি যা করে তা হ'ল বর্তমান প্রকল্প ফোল্ডারের সাথে ডকার চালানো।
#!/usr/bin/env bash
docker run -it --rm -v D:\my\project\folder:/wkDir $IMAGE_TAG yarn dev
ঠিক আছে। এখন থেকে এই স্ক্রিপ্টটি কল করার পরিকল্পনা রয়েছে npm, সুতরাং আমি বর্তমান ফোল্ডারের তুলনায় এটি কাজ করতে চাই। আসুন অন্য সংস্করণ চেষ্টা করুন।
docker run -it --rm -v $PWD:/wkDir $IMAGE_TAG yarn dev
এতে ব্যর্থ:
C:\Program Files\Docker\Docker\Resources\bin\docker.exe: Error response from
daemon: Mount denied:
The source path "D:/my/project/folder;C"
doesn't exist and is not known to Docker.
ওয়াট কি ;Cএবং এটি কোথা থেকে এসেছে?
সুতরাং আমি echo $PWDযা আমাকে দেয় না /d/my/project/folder।
আকর্ষণীয়, তাই $PWDলিনাক্স পথের ফর্ম্যাটে সঠিক পথের সমাধান হয়েছে, এবং মনে হচ্ছে ডকার এই থেকে সঠিক উইন্ডোজ পথে অনুবাদ করার চেষ্টা করছেন, এটি বাদে ;Cকোথাও উপস্থিত নেই appears এবং \হ /...
এখানে ঠিক কি ঘটছে না?
আমি ভিএসকোডের টার্মিনাল গিট ব্যাশ এবং পাওয়ারশেলের একই ফলাফল পেয়েছি।
আপডেট: আমি লক্ষ্য করেছি যে .shভিএসকোডের পাওয়ারশেল টার্মিনালটিতে চলমান , একটি পৃথক cmd.exeকনসোল উইন্ডো খোলে যা মনে হয় গিট ব্যাশে স্ক্রিপ্টটি চালায়। সুতরাং এটি একটি গিট ব্যাশ সমস্যা হতে পারে।
"/${PWD}"