1 容器相关命令
1.1 将容器导出为归档包
docker export 容器名称 -o 归档包名称
1.2 将容器导入的归档包导入为镜像
docker import 归档包名称 repository:tag
1.3 将容器直接导出为镜像
docker commit 容器名称或ID repository:tag
1.4 查看容器端口映射
docker port 容器名称或ID
1.5 向容器内拷贝文件
docker cp 文件名 容器名称或ID
1.6 查看容器运行进程
docker top 容器名称或ID
1.7 查看容器资源使用
docker stats 容器名称或ID
1.8 查看容器日志
docker logs 容器名称或ID
1.8.1 --details:显示更为详细的日志信息
1.8.2 --follow(-f):跟踪日志输出
1.8.3 --since:显示自某个开始时间的所有日志
1.8.4 --tail:仅列出最新的N条容器日志
1.8.5 --timestamps(-t):显示时间戳
1.8.6 --until:显示到某个截止时间的所有日志
2 网络命令介绍
2.1 docker network connect:将容器连接到指定的网络
2.2 docker network create:创建一个网络
2.3 docker network disconnect:断开容器与指定网络的连接
2.4 docker network inspect:显示一个或多个网络的详细信息
2.5 docker network ls:显示网络列表
2.6 docker network prune:删除所有未使用的网络
2.7 docker network rm:删除一个或多个网络
3 进入容器执行操作
3.1 使用docker attach命令连接到正在运行的容器。 要连接上去的容器必须正在运行。 连接到容器后,按组合键CTRL+C不仅从容器退出(脱离容器),而且导致容器停止了。要使容器依然运行,就需要加上选项--sig-proxy=false。 当多个终端窗口同时使用docker attach命令连接到同一个容器时,所有窗口都会同步显示。
3.2 使用docker exec命令在正在运行的容器中执行命令。 docker exec命令直接进入容器内执行命令。 与docker attach命令不同,每次执行的docker exec命令都是彼此独立的。 对于以后台方式启动的容器,通过docker exec -it进入容器排查问题很方便。 对一个暂停中的容器执行docker exec命令会出错。
4 通过现有容器生成镜像
4.1 基于容器生成镜像的具体的实现原理是通过对可写层的修改来生成新的镜像,实现的是传统的镜像分层结构。
使用docker commit命令,用于从容器创建一个新的镜像:
docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
以centos为例:
5 限制容器的内存使用
5.1 用户内存限制
设置用户内存的选项
-m, --memory:容器可用的最大内存
--memory-swap:允许容器置入磁盘交换空间中的内存数量。
Docker设置用户内存的方式
对容器内存使用无限制
设置内存限制并取消交换空间内存限制
只设置内存限制
同时设置内存和交换空间