أنا أتعلم عامل الميناء 1.8. أردت تغيير اسم مضيف الحاوية بعد أنا خلق لهم. حاولت تحرير /etc/host
داخل الحاوية وحصلت على الكتابة في كل مرة كنت attach
ثم start
الصورة. حاولت تحرير الملف التالي ، ويتم الكتابة فوق اسم المضيف.
[root@localhost ~]# docker inspect high_blackwell | grep hostname"HostnamePath": "/var/lib/docker/containers/15b84f7012383b1af2d4c8c6443506cdff3b19cb1d87d3dfdcb10df126c4eec3/hostname",
[الجذر@المضيف المحلي ~]#
لم تنجح أي من هذه الإجابات معي
كيف يمكنك تسمية حاوية عامل الميناء?
لست متأكدا مما إذا كنت تعني أنك تريد تعيين اسم مضيف حاوية جديدة أو حاوية قيد التشغيل. أنت تقول أنك تريد القيام بذلك بعد إنشاء الحاوية ، ولكن بعد ذلك تقول أيضا أنك "تبدأ الصورة". إذا لم يكن لديك start
إد الصورة التي لم تقم بعد بإنشاء الحاوية-حاوية هو ما تحصل عليه عند بدء تشغيل صورة.
أنت تقوم بإنشاء حاوية جديدة
يمكنك تعيين اسم المضيف على سطر الأوامر:
docker run --rm -h "example.com" -t -i ubuntu bash# ...root@example:/# hostnameexample.com
الحاوية الخاصة بك قيد التشغيل بالفعل
هذا أكثر صعوبة. سترغب في إبقاء العين على قضية عامل الميناء هذه ولكن حتى يتم حلها لا يمكنك أن تفعل أكثر بكثير من تحرير /etc/hosts
أعتقد. ال hostname
لن يعمل الأمر.
لتغيير اسم مضيف حاوية قيد التشغيل ، يمكنك استخدام الأمر "نسنتر". سيكون عليك أن تكون الجذر على المضيف ، على الرغم من.
يمكننا سرد مساحات الأسماء على المضيف مع الأمر "لسنز" :
# lsns NS TYPE NPROCS PID USER COMMAND4026531836 pid 73 1 root init 4026531837 user 101 1 root init 4026531838 uts 73 1 root init 4026531839 ipc 73 1 root init 4026531840 mnt 72 1 root init 4026531857 mnt 1 14 root kdevtmpfs4026531957 net 73 1 root init 4026532300 mnt 28 1785 root /usr/bin/python /usr/local/bin/supervisord -c4026532301 uts 28 1785 root /usr/bin/python /usr/local/bin/supervisord -c4026532302 ipc 28 1785 root /usr/bin/python /usr/local/bin/supervisord -c4026532303 pid 28 1785 root /usr/bin/python /usr/local/bin/supervisord -c4026532305 net 28 1785 root /usr/bin/python /usr/local/bin/supervisord -c
تلك مع بيد 1785 هي بلدي حاوية عامل الميناء. نوع مساحة الاسم الذي يعالج أسماء المضيفين هو "أوتس" ، لذلك دعونا تشغيل اسم المضيف في مساحة الاسم هذه:
# nsenter --target 1785 --uts hostname foo
الآن" اسم المضيف "في الحاوية الخاصة بك يجب أن تسفر عن"فو"!
1.وقف الحاويات والخدمة
sudo docker stop CONTAINER_NAMEsudo service docker stop
2.تحرير ملف التكوين (جسون) [يجب عليك دائما إجراء النسخ الاحتياطي أولا]
/var/lib/docker/containers/CONTAINER_ID/config.jsonReplace "Hostname":"WHATEVER"with "Hostname":"NEW_HOSTNAME"
3.بدء الحاوية والخدمة
sudo service docker startsudo docker start CONTAINER_NAME