docker 镜像管理常用命令 |
命令 | 示意 |
docker help | 查看docker帮助 |
docker image --help | 查看 docker中 镜像相关帮助 |
docker image ls | 查看当前所有镜像 |
docker image inspect nginx | 查看指定镜像(nginx镜像)详细信息 |
docker pull nginx:1.14 | 下载指定版本镜像 nginx |
docker image rm nginx:1.14 | 删除nginx 1.14版本 |
docker image save nginx > nginx.tar | 导出niginx镜像 |
docker创建容器常用命令 |
docker run 常用参数 |
命令 | 示意 |
-d: | 后台运行容器,并返回容器ID; |
-i: | 以交互模式运行容器,通常与 -t 同时使用; |
-t: | 为容器重新分配一个伪输入终端,通常与 -i 同时使用; |
-P: | 随机端口映射,容器内部端口随机映射到主机的高端口 |
-p: | 指定端口映射,格式为:主机(宿主)端口:容器端口 |
–name=“nginx-lb”: | 为容器指定一个名称; |
–dns 8.8.8.8: | 指定容器使用的DNS服务器,默认和宿主一致; |
docker run 其他参数 |
命令 | 示意 |
–dns-search example.com: | 指定容器DNS搜索域名,默认和宿主一致; |
-h “mars”: | 指定容器的hostname; |
-e username=“ritchie”: | 设置环境变量; |
–env-file=[]: | 从指定文件读入环境变量; |
–cpuset=“0-2” or --cpuset=“0,1,2”: | 绑定容器到指定CPU运行; |
-m : | 设置容器使用内存最大值; |
–net=“bridge”: | 指定容器的网络连接类型,支持 bridge/host/none/container: 四种类型; |
–link=[]: | 添加链接到另一个容器; |
–expose=[]: | 开放一个端口或一组端口; |
–volume , -v: | 绑定一个卷 |
-a stdin: | 指定标准输入输出内容类型,可选 STDIN/STDOUT/STDERR 三项; |
docker run | 其他参数 |
命令 | 示意 |
docker run --help | 查看创建容器帮助 |
docker run -it centos | 创建centos镜像并进入终端 |
docker run -d nginx | 后台启动nginx容器 |
docker stop 6bb09dce461f | 关闭一个容器 |
docker ps -l | 查看最近运行的容器 |
docker run -itd centos | 启用一个伪终端守护centos容器 |
docker container run -d --name web3 -e test=123456 -p 8800:80 -h webhostname --restart always nginx | |
-d | 后台启动nginx容器 |
–name web3 | 自定义容器名字(默认会是一段随机字符串) |
-e test=123456 | 启动容器添加变量 test=123456 (echo $test) |
-p 8800:80 | 宿主机的8800端口映射到docker容器的80端口中 |
-h webhostname | docker容器主机名 (a300f394af88) |
–restart always | 宿主机重启自动拉起这个docker容器 |
nginx | 使用这个nginx镜像启动容器 |
docker logs web | 查看上面启动的web容器的日志 |
docker exec -it web bash | 进入容器web |
容器资源限制
- 内存限额: 允许容器最多使用500M内存和100M的Swap,并禁用 OOM Killer
docker run -d --name nginx03 --memory=“500m” --memory-swap=“600m” --oom-kill-disable nginx - CPU限额:
docker run -d --name nginx04 --cpus=“1.5” nginx # 允许容器最多使用一个半的CPU
docker run -d --name nginx05 --cpus=".5" nginx # 允许容器最多使用50%的CPU
docker 管理 容器常用命令 |
命令 | 示意 |
docker ps | 仅列出当前运行的容器 |
docker ps -l | 列出最新创建得容器 |
docker ps -a | 列出素有容器(包括 未运行的) |
docker inspect web4 | 列出指定容器的详细信息 |
持久化容器 |
docker exec -it web4 bash | 进入容器web4中 |
touch 1.txt 2.txt | 对容器进行修改 |
docker commit web4 nginx:web4 | 将修改后的web4容器提交为一个新镜像 nginx:web4 |
docker images | 可以看到 多了一个 TAG标记为 web4 的镜像 |
docker run -d --name web4-1 nginx:web4 | 使用刚刚提交的镜像web4创建一个容器web4-1 |
docker exec -it web4-1 bash | 进入web4-1的bash环境 |
从宿主机复制文件到docker容器 |
docker cp nginx.tar web4-1:/home | 将宿主机nginx.tar文件拷贝到容器web4-1的/home目录中 |
docker exec -it web4-1 ls /home | 在容器web4-1中执行 “ls /home” 命令 |
容器常用查询命令 |
docker logs web4-1 | 查看web4-1中控制台日志 |
docker port 55f870061ed9 | 查看指定容器端口映射 |
docker top 00f7ddc96622 | 查看容器中有哪些进程 |
docker stats 00f7ddc96622 | 查看容器资源使用情况 |
启动、停止、删除 容器 |
docker ps -a | 列出素有容器(包括 未运行的) |
docker start web | 启动容器web |
docker stop web | 停止容器web |
docker rm web | 删除容器 |