হালনাগাদ করা
সহজ পদ্ধতি: ডকার এক্সকে ব্যবহার করে
ডকার সংস্করণ 1.3 বা আরও নতুন কমান্ডটিকে exec
অনুরূপ আচরণ করে nsenter
। এই কমান্ডটি ইতিমধ্যে চলমান ধারকটিতে নতুন প্রক্রিয়া চালাতে পারে (ধারকটির পিআইডি 1 প্রক্রিয়া ইতিমধ্যে চলমান থাকতে হবে)। আপনি /bin/bash
ধারক রাষ্ট্র অন্বেষণ চালাতে পারেন :
docker exec -t -i mycontainer /bin/bash
দেখতে Docker কমান্ড লাইন ডকুমেন্টেশন
বিকল্প পদ্ধতি 1
স্ন্যাপশোটিং
আপনি ধারক ফাইল সিস্টেমটি এইভাবে মূল্যায়ন করতে পারেন:
# find ID of your running container:
docker ps
# create image (snapshot) from container filesystem
docker commit 12345678904b5 mysnapshot
# explore this filesystem using bash (for example)
docker run -t -i mysnapshot /bin/bash
এইভাবে, আপনি সুনির্দিষ্ট সময় মুহূর্তে চলমান ধারকটির ফাইল সিস্টেমের মূল্যায়ন করতে পারেন। ধারক এখনও চলছে, ভবিষ্যতের কোনও পরিবর্তন অন্তর্ভুক্ত নেই।
আপনি পরে স্ন্যাপশটটি মুছতে পারেন (চলমান ধারকটির ফাইল সিস্টেমটি প্রভাবিত হয় না!):
docker rmi mysnapshot
বিকল্প পদ্ধতি 2
এসএসএস
আপনার যদি অবিচ্ছিন্ন অ্যাক্সেসের প্রয়োজন হয় তবে আপনি আপনার ধারকটিতে এসএসডিডি ইনস্টল করতে পারেন এবং এসএসডিডি ডিমন চালাতে পারেন:
docker run -d -p 22 mysnapshot /usr/sbin/sshd -D
# you need to find out which port to connect:
docker ps
এইভাবে, আপনি ssh ব্যবহার করে আপনার অ্যাপটি চালাতে পারেন (যা চান তা সংযুক্ত করুন এবং কার্যকর করুন)।
আপডেট: বিকল্প পদ্ধতি 3
এনসেন্টার
ব্যবহার করুন nsenter
, https://web.archive.org/web/20160305150559/http://blog.docker.com/2014/06/why-you-dont-need-to-run-sshd-in-docker/ দেখুন
সংক্ষিপ্ত সংস্করণটি হ'ল: ন্যান্টারের সাহায্যে আপনি একটি বিদ্যমান পাত্রে শেল পেতে পারেন, এমনকি যদি সেই ধারকটি এসএসএইচ বা কোনও ধরণের বিশেষ-উদ্দেশ্যে ডেমন চালায় না if
docker exec <container> bash
। সুতরাং, আপনি কেবল ধারকটির ভিতরে একটি শেল খুলুন।