สรุปคำสั่ง docker ฉบับสายย่อ เด็กแนว
เอาที่สำคัญๆ หากินได้ยาวๆ
.
1) คำสั่งดูเลขเวอร์ชั่น docker engine ในเครื่อง
docker -v
.
2) คำสั่งล็อกอินเข้าไปใน docker hub (ที่เก็บไฟล์ image ของ docker)
docker login [OPTIONS] [SERVER]
.
3) คำสั่ง logout ออกจาก docker hub ...บาย บาย
docker logout
.
4) คำสั่งค้นหาไฟล์ image จาก docker hub
docker search
.
5) คำสั่งดาวน์โหลดไฟล์ image จาก docker hub มาที่เครื่องเรา
docker pull
.
6) คำสั่งรันไฟล์ image -> เพื่อสร้าง container (สร้างกี่ตัวก็ได้)
docker run [options]
.
7) คำสั่งดูรายชื่อไฟล์ images ที่อยู่ในเครื่องเรา
docker images
docker images --no-trunc // แสดง Images ID แบบเต็มๆ
.
😎 คำสั่งลบไฟล์ images
docker rmi
docker rmi -f
docker rmi -f $(docker images -a -q) // ลบทั้งหมด
.
9) คำสั่งดูรายชื่อ container
docker ps // แสดง container ที่ทำงานอยู่
docker ps -a // แสดงรายการ container ทั้งหมดที่ทำงานอยู่และหยุดทำงานไปแล้ว
.
10) คำสั่งลบ container
docker rm
docker rm -f
docker rm $(docker ps -a -q) // ลบทั้งหมด
docker rm $( docker ps -q -f status=exited) // ลบ continer ทั้งหมดที่ไม่ทำงาน
.
11) คำสั่งสั่งให้ container ทำงาน (สตาร์ท)
docker start
.
12) คำสั่งหยุด container (กลับมาสตาร์ทใหม่ภายหลังได้)
docker stop
docker stop $(docker ps -a -q) // หยุดการทำงาน container ทั้งหมด
.
13) คำสั่งแช่แข็ง container
docker pause
docker unpause
.
14) คำสั่งรีโมทเข้าไปใน container แล้วรันคำสั่ง เช่น รัน bash shell ของ linux เป็นต้น
docker exec -it
.
14) คำสั่งดูข้อมูลของ container
docker inspect
.
15) คำสั่งดูการใช้ทรัพยกรเครื่องของ container
docker stats // ทั้งหมด
docker stats
.
16) คำสั่งดู logs ของ container
docker logs
.
16) คำสั่งคำสั่งสร้างไฟล์ image
docker build [OPTIONS] PATH | URL | -
.
17) คำสั่ง commit ไฟล์ image ที่เราสร้าง
docker commit
.
18) คำสั่งส่่งไฟล์ image ขึ้น docker hub
docker image push [OPTIONS] NAME[:TAG]
.
++++++++++++++++++++
อธิบายเพิ่ม docker
++++++++++++++++++++
docker มันคือ container
ถ้าจะเรียกให้ถูกต้องเป๊ะๆ ก็คือ software container
.
จะคล้ายๆ Virtual Machine (VM)
แต่เบากว่า
Overhead น้อยกว่า
รันได้เร็วกว่า
.
container มันเป็นคอนเซปต์การสร้างสภาพแวดล้อมเฉพาะให้กับซอฟต์แวร์ เพื่อให้สามารถทำงานได้โดยไม่กวนกับซอฟต์แวร์ตัวอื่นบนระบบปฏิบัติการเดียวกัน
.
เช่น เครื่องลง PHP กับ Apache HTTP ไว้
คราวนี้พอจะรัน Tomcat แล้ว port มันชนกัน
เกิดอุบัติเหตุแบบนี้ ทำไงดีหว้า?
ต้องร้องเรียนตำรวจเลยไหม?
...ก็ไม่ต้อง
สามารถใช้ container เป็นอีกหนึ่งวิธีแก้ปัญหา
.
สำหรับคอนเซปต์ container
ให้นึกถึงว่าเรามีตู้ container ใส่ของ จำนวน 2 ตู้
ทั้งสองตู้ข้างในมีสภาพแวดล้อมเป็น Linux
.
- โดย container ตู้แรก จะติดตั้ง PHP กับ Apache HTTP ลงไป
- container ตู้ตัวที่สอง จะติดตั้ง Tomcat ลงไป
.
โดยทั้งสองตู้สามารถวางไว้ภายในระบบปฏิบัติการเดียวกัน
สามารถรันทำงานแยกสภาพแวดล้อมจากกันไปเลย
ไม่ชน ไม่ทะเลาะตบตีแย่งแฟนกัน
.....เฮยๆ ไม่ใช่ายแหละ ไม่แย่ง resource กัน
.
และเราก็สามารถย้ายตู้ container ที่มีซอฟต์แวร์ที่เราได้ติดตั้งลงไปนั้น
ก็สามารถย้ายตู้ไปไว้ที่เครื่องไหนก็ได้
ขอให้เครื่องนั้นๆ ติดตั้ง docker engine ก็พอ
(นำไฟล์ image ของ docker ไปรันบนเครื่องไหนก็ได้ขอให้มี docker engine)
.
.
.
อ้างอิง
- https://sites.google.com/.../chanwit/blogs/what-is-container
-http://www.siamhtml.com/getting-started-with-docker/
-https://medium.com/quintuples/รวม-docker-command-line-พื้นฐาน-74b61101effa
-https://memo8.com/docker-command/
.
.
.
✍ เรียบเรียงโดย โปรแกรมเมอร์ไทย thai programmer
.
.
.
มีปัญหาด้านไอทีให้ไปที่ลิงก์นี้
https://github.com/adminho/Thai-IT-community
จะมีกลุ่มเฟสบุ๊คต่างๆ รอคุณอยู่
สนใจกลุ่มไหนก็เข้าไปแจม
สามารถโพสต์ถามปัญหาที่สงสัยได้
จะมีเพื่อนๆ น่ารักคอยตอบเสมอ
docker engine 在 BorntoDev Facebook 的最讚貼文
โอ๊ยยยย...อยากใช้งาน Docker แบบคนอื่นเขาบ้าง แต่ศัพท์เทคนิคเยอะแยะไปหมด มึนหมดแล้ววว 😖😰
.
Don't worry จ้าเพื่อน ๆ เพราะวันนี้แอดจะมารวบรวม 10 คำศัพท์เด็ด ๆ ที่ควรรู้ก่อนจะใช้งาน Docker ให้เพื่อน ๆ มือใหม่ได้ดูกัน หากอยากรู้แล้วว่ามีอะไรบ้าง ไปดูกันเลยยย !!
.
ก่อนจะไปเข้าเนื้อหากัน เรามารู้จักเจ้า Docker กันแบบคร่าว ๆ ก่อนเนอะ
.
ลองนึกภาพง่าย ๆ เมื่อก่อนหากเราอยากรัน Service อะไรสักอย่างนึง เราจะต้องจำลองสภาพแวดล้อมของเครื่อง โดยใช้ Virtual Machine เพื่อจำลองทั้ง OS ให้รองรับกับการรัน Service นั้น ๆ แต่เจ้า Docker มันทำได้ง่ายกว่านั้น เพราะมันจะใช้การจำลองสภาพแวดล้อมบน Server ไม่ต้องใช้พื้นที่และทรัพยากรเยอะเหมือน VM อีกต่อไป แถมยังมีขนาดเล็ก ติดตั้งได้รวดเร็ว รองรับทั้ง MacOS, Windows, และ Linux นั่นเอง !! เจ๋งสุด 👍
.
🔥 ไปดูกันเลยว่ามีศัพท์อะไรที่มือใหม่ควรรู้ก่อนใช้งาน Docker บ้าง…
.
.
📃 Docker Images
.
เป็นต้นแบบที่ใช้สร้าง Docker Containers ซึ่งจะเก็บการตั้งค่าของสภาพแวดล้อม และการ Config ค่าต่าง ๆ ที่จำเป็นสำหรับการรัน Service จะทำงานเมื่อมีการเรียกใช้ที่ Docker Containers
.
.
📃 Docker Containers
.
เปรียบเสมือนกล่องที่รวบรวมแอปพลิเคชัน ค่า Config และสภาพแวดล้อมที่จำเป็นต่อการทำงาน ที่สร้างจาก Docker Images
.
.
📃 Dockerfiles
.
เป็นเอกสารที่รวบรวมการใช้งานและคำสั่งทั้งหมด เพื่อใช้ในการสร้าง Docker Images
.
.
📃Docker Registry
.
คือบริการโฮสต์ที่ใช้เก็บ Images Repository ทำให้เราสามารถ Push หรือ Pull Repository ผ่านเครือข่ายได้ สามารถใช้งานผ่าน Docker Hub และ คำสั่ง docker search
.
.
📃 Docker Repository
.
เป็นที่เก็บชุดของ Docker images สามารถทำการ Push หรือ Pull ผ่าน Docker Registry ได้
.
.
📃 Volumes
.
ข้อมูลไดเร็กทอรี่ที่อยู่ภายใน Docker Containers ใช้เพื่อรักษาข้อมูลใน Containers มีทั้งหมด 3 ประเภท คือ
🔸 Host volume - เป็น volume ของ Docker Host สามารถเข้าถึงได้จาก Containers
🔸 Named volume - เป็น volume ที่ใช้จัดการตำแหน่งบนดิกส์แบบระบุชื่อ
🔸 Anonymous volume - คล้ายกับ Named volume แต่จะไม่มีการระบุชื่อ
.
.
📃 Docker Compose
.
เป็นคำสั่งที่ใช้ในการสร้างหลาย ๆ Containers ขึ้นมาในครั้งเดียว ซึ่งจะมีการเซ็ท Config และ Service ต่าง ๆ ไว้เรียบร้อยแล้วในไฟล์ docker-compose.yml โดยไม่ต้องมานั่ง Config ทีละอันให้เสียเวลานั่นเอง
.
.
📃 Docker Swarm
.
เป็นเครื่องมือที่ช่วยรัน Docker หลาย ๆ ตัวได้พร้อมกันในสภาพแวดล้อมเดียวกัน
.
.
📃 Swarm
.
เป็นกลุ่มของ Docker Engine ที่ทำงานใน Swarm Mode
.
.
📃 Swarm Mode
.
เป็นโหมดที่ใช้จัดการ Cluster Management และ Orchestration ที่อยู่ใน Docker Engine เมื่อเราสร้าง Swarm ใหม่ หรือรวมโหนดต่าง ๆ เข้ากับ Swarm เจ้า Docker Engine ก็จะทำงานอยู่ใน Swarm Mode นั่นเอง
.
.
และทั้งหมดนี้คือคำศัพท์พื้นฐานสำหรับมือใหม่หัดใช้ Docker หวังว่าจะเป็นประโยชน์กับเพื่อน ๆ นะ หากใครมีคำอื่น ๆ อยากจะเพิ่มเติม สามารถคอมเมนต์มาพูดคุยกันได้เลย ❤️
.
borntoDev - 🦖 สร้างการเรียนรู้ที่ดีสำหรับสายไอทีในทุกวัน
#Docker #VM #BorntoDev
docker engine 在 โปรแกรมเมอร์ไทย Thai programmer Facebook 的最讚貼文
สรุปคำสั่ง docker ฉบับสายย่อ เด็กแนว
เอาที่สำคัญๆ หากินได้ยาวๆ
.
1) คำสั่งดูเลขเวอร์ชั่น docker engine ในเครื่อง
docker -v
.
2) คำสั่งล็อกอินเข้าไปใน docker hub (ที่เก็บไฟล์ image ของ docker)
docker login [OPTIONS] [SERVER]
.
3) คำสั่ง logout ออกจาก docker hub ...บาย บาย
docker logout
.
4) คำสั่งค้นหาไฟล์ image จาก docker hub
docker search
.
5) คำสั่งดาวน์โหลดไฟล์ image จาก docker hub มาที่เครื่องเรา
docker pull
.
6) คำสั่งรันไฟล์ image -> เพื่อสร้าง container (สร้างกี่ตัวก็ได้)
docker run [options]
.
7) คำสั่งดูรายชื่อไฟล์ images ที่อยู่ในเครื่องเรา
docker images
docker images --no-trunc // แสดง Images ID แบบเต็มๆ
.
8) คำสั่งลบไฟล์ images
docker rmi
docker rmi -f
docker rmi -f $(docker images -a -q) // ลบทั้งหมด
.
9) คำสั่งดูรายชื่อ container
docker ps // แสดง container ที่ทำงานอยู่
docker ps -a // แสดงรายการ container ทั้งหมดที่ทำงานอยู่และหยุดทำงานไปแล้ว
.
10) คำสั่งลบ container
docker rm
docker rm -f
docker rm $(docker ps -a -q) // ลบทั้งหมด
docker rm $( docker ps -q -f status=exited) // ลบ continer ทั้งหมดที่ไม่ทำงาน
.
11) คำสั่งสั่งให้ container ทำงาน (สตาร์ท)
docker start
.
12) คำสั่งหยุด container (กลับมาสตาร์ทใหม่ภายหลังได้)
docker stop
docker stop $(docker ps -a -q) // หยุดการทำงาน container ทั้งหมด
.
13) คำสั่งแช่แข็ง container
docker pause
docker unpause
.
14) คำสั่งรีโมทเข้าไปใน container แล้วรันคำสั่ง เช่น รัน bash shell ของ linux เป็นต้น
docker exec -it
.
14) คำสั่งดูข้อมูลของ container
docker inspect
.
15) คำสั่งดูการใช้ทรัพยกรเครื่องของ container
docker stats // ทั้งหมด
docker stats
.
16) คำสั่งดู logs ของ container
docker logs
.
16) คำสั่งคำสั่งสร้างไฟล์ image
docker build [OPTIONS] PATH | URL | -
.
17) คำสั่ง commit ไฟล์ image ที่เราสร้าง
docker commit
.
18) คำสั่งส่่งไฟล์ image ขึ้น docker hub
docker image push [OPTIONS] NAME[:TAG]
.
++++++++++++++++++++
อธิบายเพิ่ม docker
++++++++++++++++++++
docker มันคือ container
ถ้าจะเรียกให้ถูกต้องเป๊ะๆ ก็คือ software container
.
จะคล้ายๆ Virtual Machine (VM)
แต่เบากว่า
Overhead น้อยกว่า
รันได้เร็วกว่า
.
container มันเป็นคอนเซปต์การสร้างสภาพแวดล้อมเฉพาะให้กับซอฟต์แวร์ เพื่อให้สามารถทำงานได้โดยไม่กวนกับซอฟต์แวร์ตัวอื่นบนระบบปฏิบัติการเดียวกัน
.
เช่น เครื่องลง PHP กับ Apache HTTP ไว้
คราวนี้พอจะรัน Tomcat แล้ว port มันชนกัน
เกิดอุบัติเหตุแบบนี้ ทำไงดีหว้า?
ต้องร้องเรียนตำรวจเลยไหม?
...ก็ไม่ต้อง
สามารถใช้ container เป็นอีกหนึ่งวิธีแก้ปัญหา
.
สำหรับคอนเซปต์ container
ให้นึกถึงว่าเรามีตู้ container ใส่ของ จำนวน 2 ตู้
ทั้งสองตู้ข้างในมีสภาพแวดล้อมเป็น Linux
.
- โดย container ตู้แรก จะติดตั้ง PHP กับ Apache HTTP ลงไป
- container ตู้ตัวที่สอง จะติดตั้ง Tomcat ลงไป
.
โดยทั้งสองตู้สามารถวางไว้ภายในระบบปฏิบัติการเดียวกัน
สามารถรันทำงานแยกสภาพแวดล้อมจากกันไปเลย
ไม่ชน ไม่ทะเลาะตบตีแย่งแฟนกัน
.....เฮยๆ ไม่ใช่ายแหละ ไม่แย่ง resource กัน
.
และเราก็สามารถย้ายตู้ container ที่มีซอฟต์แวร์ที่เราได้ติดตั้งลงไปนั้น
ก็สามารถย้ายตู้ไปไว้ที่เครื่องไหนก็ได้
ขอให้เครื่องนั้นๆ ติดตั้ง docker engine ก็พอ
(นำไฟล์ image ของ docker ไปรันบนเครื่องไหนก็ได้ขอให้มี docker engine)
.
.
.
อ้างอิง
- https://sites.google.com/site/chanwit/blogs/what-is-container
-http://www.siamhtml.com/getting-started-with-docker/
-https://medium.com/quintuples/รวม-docker-command-line-พื้นฐาน-74b61101effa
-https://memo8.com/docker-command/
.
.
.
✍ เรียบเรียงโดย โปรแกรมเมอร์ไทย thai programmer
docker engine 在 How To Install and Use Docker Engine on Ubuntu 20.04 ... 的必吃
How To Install and Use Docker Engine on Ubuntu 20.04 (Tutorial): Docker is one of the best software for IT organizations that enables to ... ... <看更多>