Docker สามารถที่จะ Stop containers ได้โดยการระบุชื่อ container ไปตรงๆ ได้เลย เช่น docker container stop container_name
หรือระบุเป็น ID docker container stop container_id
แต่มันสามารถ Stop ได้ทีละตัวเท่านั้น
ถ้าเกิดเรามี Container หลายตัวที่มีชื่อคล้ายกัน เช่น nginx-1, nginx-2 หรือ nginx-3 แล้วเราต้องการ Stop ที่เดียวเลยทำไงดี? ก็พิมพ์
$ docker container stop nginx-1
$ docker container stop nginx-2
$ docker container stop nginx-3
ไปสามรอบเลยไง… ฮาๆ
จะบ้าหรอ…ในวันนี้เราขอเสนอคำสั่งสั้นๆ นำไปใช้งานได้เลย ดังนี้
$ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
385f96392393 nginx:1.15-alpine "nginx -g 'daemon of…" 12 minutes ago Up 12 minutes 80/tcp nginx-3
0d4eb386dfc5 nginx:1.15-alpine "nginx -g 'daemon of…" 12 minutes ago Up 12 minutes 80/tcp nginx-2
0e58414970f0 nginx:1.15-alpine "nginx -g 'daemon of…" 12 minutes ago Up 10 minutes 80/tcp nginx-1
จะเห็นว่ามีอยู่ 3 อันที่ทำงานอยู่
ทำการ Stop มันซะด้วยคำสั่ง
$ docker container stop $(docker container ls -q --filter name=nginx*)
โดย name=nginx*
ให้เปลี่ยน nginx
ได้ตามชื่อ Contianer ที่ต้องการเลย