กลับไปหน้าสูตร
#docker#command#devops#cheatsheet

Docker Command Cheatsheet

รวมคำสั่ง Docker แบบจัดเต็ม: images, containers, networks, volumes, compose, build optimization และ troubleshooting

11 มีนาคม 2569อ่านประมาณ 2 นาที

Docker Basics

Commandคำอธิบาย
docker versionดูเวอร์ชัน client/server
docker infoดูข้อมูลระบบ Docker
docker context lsดู contexts
docker system dfดู disk usage

Images

Commandคำอธิบาย
docker pull nginx:latestดึง image
docker imagesดู images
docker build -t app:1.0 .build image
docker build --no-cache -t app:1.0 .build แบบไม่ใช้ cache
docker image inspect app:1.0inspect image
docker tag app:1.0 repo/app:1.0tag image
docker push repo/app:1.0push image
docker rmi app:1.0ลบ image

Containers

Commandคำอธิบาย
docker run -d --name web -p 8080:80 nginxรัน container
docker psดู container ที่รันอยู่
docker ps -aดูทุก container
docker start webstart
docker stop webstop
docker restart webrestart
docker rm webลบ
docker exec -it web shเข้า shell

Logs / Inspect / Stats

Commandคำอธิบาย
docker logs -f webfollow logs
docker logs --tail 200 webดูท้าย logs
docker inspect webinspect metadata
docker statsดู resource usage
docker top webprocess ใน container

Volumes

Commandคำอธิบาย
docker volume lsดู volumes
docker volume create pgdataสร้าง volume
docker run -v pgdata:/var/lib/postgresql/data postgresmount volume
docker volume inspect pgdatainspect volume
docker volume rm pgdataลบ volume

Networks

Commandคำอธิบาย
docker network lsดู networks
docker network create app-netสร้าง network
docker network inspect app-netinspect network
docker network connect app-net webconnect container
docker network disconnect app-net webdisconnect

Docker Compose

Commandคำอธิบาย
docker compose up -dstart services
docker compose up --buildbuild แล้ว start
docker compose psดู service status
docker compose logs -flogs ทุก service
docker compose logs -f apilogs service เดียว
docker compose exec api shshell ใน service
docker compose downหยุดและลบ resources
docker compose down -vdown พร้อมลบ volumes

Cleanup

Commandคำอธิบาย
docker container pruneลบ stopped containers
docker image prune -aลบ unused images
docker volume pruneลบ unused volumes
docker network pruneลบ unused networks
docker system prune -a --volumescleanup ทั้งระบบ

Build Optimization

เทคนิครายละเอียด
multi-stage buildลด image size
.dockerignoreลด build context
layer orderingเปลี่ยนช้าสุดไว้ท้ายๆ
cache mountใช้ build cache ได้ดีขึ้น

Troubleshooting

ปัญหาวิธีตรวจ
container ล่มdocker logs <name>
port ชนlsof -i :<port>
app ต่อ DB ไม่ได้ตรวจ network + env vars
data หายตรวจ volume mapping
image ใหญ่เกินdocker history <image>

Practical Patterns

# run api with env file
docker run --env-file .env -p 3000:3000 --name api app:latest

# copy file from container
docker cp api:/app/logs/app.log ./app.log

# show only running containers names
docker ps --format '{{.Names}}'