Docker 容器简介
容器是镜像的运行实例,可以启动、停止、删除。容器是轻量级的,可以快速创建和销毁。
创建容器
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| docker run ubuntu:20.04 echo "Hello Docker"
docker run -it ubuntu:20.04 /bin/bash
docker run -d nginx
docker run --name mynginx -d nginx
docker run -d -p 80:80 nginx
docker run -v /host/path:/container/path ubuntu:20.04
docker run -e APP_ENV=production myapp
docker run --rm ubuntu:20.04 echo "Temporary container"
|
查看容器
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| docker ps
docker ps -a
docker ps -l
docker ps -q
docker ps -s
|
停止容器
1 2 3 4 5 6 7 8 9 10 11
| docker stop mynginx
docker stop container1 container2 container3
docker kill mynginx
docker stop $(docker ps -q)
|
启动容器
1 2 3 4 5
| docker start mynginx
docker restart mynginx
|
删除容器
1 2 3 4 5 6 7 8 9 10 11
| docker rm mynginx
docker rm -f mynginx
docker container prune
docker rm -f $(docker ps -aq)
|
进入容器
1 2 3 4 5
| docker exec -it mynginx /bin/bash
docker attach mynginx
|
查看容器日志
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| docker logs mynginx
docker logs -f mynginx
docker logs --tail 100 mynginx
docker logs --since 2024-03-20T00:00:00 mynginx
docker logs -t mynginx
|
容器资源管理
查看资源使用
1 2 3 4 5 6 7 8
| docker stats
docker stats mynginx
docker stats --no-stream
|
限制资源
1 2 3 4 5 6 7 8
| docker run -m 512m nginx
docker run --cpus="1.5" nginx
docker run --cpuset-cpus="0-2" nginx
|
容器网络
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| docker network create mynetwork
docker network connect mynetwork mynginx
docker network disconnect mynetwork mynginx
docker network ls
docker network inspect mynetwork
|
数据卷管理
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| docker volume create myvolume
docker volume ls
docker volume inspect myvolume
docker volume rm myvolume
docker volume prune
|
容器导出和导入
导出容器
1 2
| docker export mynginx > mynginx.tar
|
导入容器
1 2
| cat mynginx.tar | docker import - mynginx:imported
|
最佳实践
- 使用有意义的容器名称
- 合理设置资源限制
- 使用数据卷持久化数据
- 定期清理未使用的容器
- 监控容器资源使用
- 使用健康检查
- 合理使用容器网络
总结
本文详细介绍了 Docker 容器的创建、管理、监控和资源限制等功能。通过掌握这些命令,你可以高效地管理和操作 Docker 容器。下一篇文章将介绍 Docker Compose 的使用。