จะหยุดและถอดที่เก็บของได้อย่างไร?


11

ฉันกำลังพยายามลบนักเทียบท่า / รูปภาพ / คอนเทนเนอร์และทุกอย่างที่เชื่อมต่อกับนักเทียบท่า แต่ก่อนอื่นฉันต้องหยุดมัน ในขณะที่ฉันพยายามรันคำสั่งนี้:

docker stop $(docker ps -a -q)

มันทำให้ฉันมีข้อผิดพลาด:

[:/home/imran] 1 $ docker stop $(docker ps -a -q)

2015/01/16 00:37:38 Get http:///var/run/docker.sock/v1.14/containers/json?all=1: dial unix /var/run/docker.sock: permission denied

Usage: docker stop [OPTIONS] CONTAINER [CONTAINER...]  

Stop a running container by sending SIGTERM and then SIGKILL after a grace period

  -t, --time=10      Number of seconds to wait for the container to stop before killing it. Default is 10 seconds.

ฉันจะถอนการติดตั้งคอนเทนเนอร์นักเทียบท่าได้อย่างไร?

คำตอบ:


12

ฉันแก้ไขมันแล้ว! โปรดอย่าลืม - ข้อมูลทั้งหมดในตู้คอนเทนเนอร์จะถูกลบออก!

ดังนั้นก่อนอื่นเราต้องใช้คำสั่งนี้:

# adding new group
$ sudo groupadd docker

# adding user to the 'docker' group
$ sudo gpasswd -a ${your_username} docker

# restart the docker (documentation suggests to use 'docker.io' instead of 'docker',
# for me both variants work just fine!
$ sudo service docker restart

ถ้าอย่างนั้นเราต้องออกจากระบบอย่าใช้ GUI-variant เพราะมันไม่ได้ผลสำหรับฉันและฉันผิดหวังกับเรื่องนี้

ให้ใช้คำสั่งนี้แทน:

sudo pkill -u username

ถ้าอย่างนั้นเราต้อง ...

1. ฆ่าตู้สินค้าที่กำลังทำงานอยู่ทั้งหมด

sudo docker kill $(docker ps -q)

2. ลบคอนเทนเนอร์ที่หยุดทั้งหมด

sudo docker rm $(docker ps -a -q)

3. ลบภาพ 'untagged / dangling' ทั้งหมด

sudo docker rmi $(docker images -q -f dangling=true)

4. ลบภาพทั้งหมด

sudo docker rmi $(docker images -q)

แหล่งที่มา:
https://www.calazan.com/docker-cleanup-commands/
http://www.linuxquestions.org/questions/ubuntu-63/how-do-i-log-out-via-terminal-928183/

ป.ล. บางทีคำตอบอื่น ๆ ก็ถูกต้องเช่นกัน แต่ในขณะนี้คำตอบเหล่านี้ได้รับการเผยแพร่ปัญหาของฉันได้รับการแก้ไขแล้วและฉันไม่สามารถตรวจสอบว่าคำตอบนั้นถูกต้องหรือไม่ ขอบคุณ @Andreas เขาชี้ให้เห็นข้อผิดพลาดว่าตู้คอนเทนเนอร์ถูกนำออกไปแล้ว เนื่องจากฉันไม่พบคำตอบที่ถูกต้องและ "ทั้งหมดในที่เดียว" ฉันต้องการบอกคุณว่าคุณสามารถแก้ไขได้อย่างไร


คุณจะลบการกำหนดเส้นทาง IP ที่เหลือออกจาก ifconfig ได้อย่างไร dockerยังคงปรากฏเป็นอุปกรณ์เครือข่าย
6ft Dan

3

คุณต้องดำเนินการคำสั่งเหล่านี้rootเช่นใช้sudo:

sudo docker stop $(sudo docker ps -a -q)

หรือ:

sudo sh -c "docker stop $(docker ps -a -q)"

นี่คือการส่งออกปกติ: pastebin.com/FXhc5TF7 นอกจากนี้ฉันยังสังเกตเห็นว่า "cmd-label" ของฉันเปลี่ยนไป จาก 'user @ rootf8fds7 $:' ถึง '[: / home / imran]'
pushandpop

อาจหมายความว่าไม่มีคอนเทนเนอร์ที่รันอยู่ sudo docker psตรวจสอบโดยเพียงแค่การทำงาน
Andreas Veithen

ใช่คุณพูดถูกฉันลองวิธีอื่นก่อนที่คุณจะเขียนคำตอบของคุณและสิ่งนี้เพราะพวกเขาไม่มีตัวตน xD ปัญหาเกี่ยวกับ "cmd-label" คืออะไร? นี้เป็นเพราะนักเทียบท่า ฉันควรเปิดเธรดใหม่หรือไม่ ฉันคิดว่ามันซับซ้อนที่จะเข้าใจผู้อื่นว่าเกิดอะไรขึ้นพวกเขาจะไม่เห็นการสนทนานี้ คุณรู้วิธีการแก้ไขหรือไม่
pushandpop

นี่อาจเป็นปัญหาแยกต่างหาก
Andreas Veithen
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.