Dockerfile থেকে ডকার তৈরির সাথে যখন yaourt দিয়ে arch linux প্যাকেজ ইনস্টল করবেন কিভাবে?


3

আমি অফিসার ব্যবহার করে আমার নিজের জিরা কন্টেইনার তৈরি করার চেষ্টা করছি pritunl / archlinux চিত্র। আমি ইতিমধ্যে yaourt ইনস্টল এবং rusk85 / archbase যে প্রতিশ্রুতিবদ্ধ। আমার Dockerfile এই মত দেখায়:

1: FROM rusk85/archbase
2: CMD /bin/bash
3: RUN yaourt -Sy --noconfirm atlassian-jira

ত্রুটি এই ফলাফল:

Running makepkg as root is not allowed as it can cause permanent, catastrophic damage to your system.

তারপর আমি লাইন 2 যোগ করার চেষ্টা করেছিলাম:

RUN useradd -ms /bin/bash jira
USER jira

যে পরিবর্তে একটি পাসওয়ার্ড জন্য আমাকে জিজ্ঞেস করে। আরেকটি বৈকল্পিক ইউজার জিরার বদলে এটি ব্যবহার করতে হয়েছিল:

RUN su jira

এটি প্রথম ত্রুটি প্রদান করে। আমি তারপর একটি ব্যবহারকারী জিরার তৈরি, সুডো ইন্সটল করেছি, গ্রুপ চাকার সমস্ত ব্যবহারকারীকে কোনও কমান্ড ওয়াই / ও পাসওয়ার্ড চালানোর জন্য সক্রিয় করা হয়েছে এবং গ্রুপ চাকা যোগ করার পাশাপাশি ব্যবহারকারী জিরাকে পাসওয়ার্ড জিরার জন্য জিরো যোগ করা হয়েছে। আমি আমার ছবিতে সেই পরিবর্তনগুলি করেছি এবং এর সাথে আবার চেষ্টা করেছি:

FROM rusk85/archbase
CMD /bin/bash
USER jira # fixed: was docker before
RUN yaourt -Sy --noconfirm atlassian-jira

যে আবার প্রাথমিক sudo পাসওয়ার্ড জন্য অনুরোধ। আমি পুরুষদের জন্য পরিচিত সমস্ত রূপে এই সমস্যাটি অনুসন্ধান করেছি এবং একাধিক ডকারেরফিলগুলিতেও তাকিয়েছি কিন্তু আমার অনুসন্ধানগুলি কোনও কার্যকর ফলাফল ছাড়াই ফিরে এসেছে এবং আমি যে সমস্ত ডকারফিলগুলি দেখেছি সেগুলি আমাকে সম্পূর্ণরূপে বিভ্রান্ত করে ফেলেছে। আমি কিভাবে পাস এই জন্য একটি সত্যিই সহজ উদাহরণ প্রশংসা করব। এটি একটি ক্ষুদ্র সমস্যা হলেও আমি দুঃখিত, তবে আমি ডকারের সাথে শুরু করেছিলাম এবং আমার কাছে আজকের খ্যাতির জ্ঞানটি পুরোপুরি কাটছে বলে মনে হচ্ছে না।


যে একটি খুব পুরানো ইমেজ মত দেখায়, আপনি ভিতরে সব প্যাকেজ আপডেট করেছেন? আপনি ইনস্টল করেছেন base-devel প্যাকেজ গ্রুপ?
quixotic

@quixotic: দুঃখিত আমি ভুল repo বলেছেন। আমি আসলে অফিসিয়াল (?) খিলান linux ইমেজ ব্যবহার করা হয় যা pritunl/archlinux। আমার পোস্টে যে স্থির। হ্যাঁ আমি এমনকি ছিল yaourt যা উপর নির্ভর করে সেট আপ base/devel (আংশিক afaik)। কি আছে base/devel একটি থেকে প্যাকেজ ইনস্টল করতে অক্ষম হচ্ছে আমার দ্বিধা সঙ্গে কাজ করতে Dockerfile যে এক উপায় বা অন্য রুট প্রয়োজন? BTW আমি তাদের নিজস্ব মূল ইমেজটি তাদের ক্ষুদ্র রুট ফাইল সিস্টেম সংস্করণ ব্যবহার করে আলপাইন লিনাক্স দিয়ে তৈরি করেছি। যা কাজ করে আমার নিজস্ব nginx বিপরীত প্রক্সি তৈরি করুন। দেখ goo.gl/qCu7py এবং goo.gl/xoM5vJ । এখনও একটি উত্তর প্রয়োজন যদিও।
Sven M.

আমি yaourt ব্যবহার করি না তাই আমি অনুমান করছি। আমি মনে করি yaourt আপনি যে পাত্রে শুরু প্রত্যেক সময় একটি নতুন প্যাকেজ নির্মাণ করা হবে; আপনি প্রয়োজন হতে পারে RUN pacman -S base-devel (বা অনুরূপ) প্রথম, যদি আপনার ছবিটি ইতিমধ্যে সেই প্যাকেজগুলি অন্তর্ভুক্ত না করে। দ্য makepkg ত্রুটি আপনি দেখতে একটি ইঙ্গিত হতে পারে দেখতে fakeroot, বেস-ডেভেল প্যাকেজ অন্তর্ভুক্ত করা হয় যা। yaourt ইনস্টলেশনের জন্য বেস-ডেভেল প্যাকেজগুলিতে নিজেই নির্ভর করে বলে মনে হচ্ছে না, তাই এটির অর্থ আপনার কাছে নেই কারণ আপনার কাছে অন্যদের আছে।
quixotic

আচ্ছা ঠিক আছে আমি শুধু ডেভেল ইনস্টল অংশ ছিল এবং fakeroot প্রকৃতপক্ষে অনুপস্থিত। Fakeroot এর সাথে এখনো এটি চেষ্টা করে নি, কিন্তু আমি বুঝতে পারছি যে এটির ব্যবহারগুলির একটিতে উচ্চতর / রুট বিশেষাধিকার ছাড়াই প্যাকেজগুলি তৈরি করা হচ্ছে। এটা কি ঠিক?
Sven M.

উত্তর:


0

কিছু আগে, YAOURT ব্যবহার করবেন না

তারপর, আমাকে সরকারী আর্কি উদ্ধৃত করা যাক makepkg উইকি পাতা:

চলমান makepkg রুট হিসাবে নিজেই হয় প্রত্যাখ্যাত । পাশাপাশি কিভাবে একটি PKGBUILD নির্বিচারে কমান্ড থাকতে পারে, রুট হিসাবে বিল্ডিং সাধারণত অনিরাপদ বলে মনে করা হয়। নিয়মিত ব্যবহারকারীর অ্যাকাউন্টে অ্যাক্সেস নেই এমন ব্যবহারকারীদের চালানো উচিত makepkg হিসাবে কোন ব্যবহারকারী নেই

তাই আপনার সমস্যা ফিরে, আপনি কি করার চেষ্টা করছেন তা করার চেষ্টা করা উচিত নয়।

কিন্তু আপনি যদি এখনও চান:

  • আপনি yaourt ইনস্টল করতে পারেন তবে শুধুমাত্র ইনস্টল করতে পারেন অ রুট ব্যবহারকারী।

অথবা

  • আপনি চেষ্টা করতে পারেন (আপনার নিজের ঝুঁকিতে) অ্যালান ম্যাক্রাই এর সমাধান পুরানো একটি প্রতিস্থাপন একটি ভাল ব্যাখ্যা হিসাবে বিবেচিত হয় makepkg --asroot কমান্ড।
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.