docker学习-常用命令1
一、容器管理
1.1 Docker start/stop/restart/rm 命令
实例:启动|停止|重启|删除 容器mydb01
# docker start|stop|restart|rm mydb01
1.2 Docker kill 命令,杀掉一个运行中的容器。
OPTIONS说明:
-s :向容器发送一个信号
例:杀掉运行中的容器mydb01
# docker kill -s KILL mydb01
1.3 Docker rm 命令,删除一个或多少容器
OPTIONS说明:
-f :通过SIGKILL信号强制删除一个运行中的容器
-l :移除容器间的网络连接,而非容器本身
-v :-v 删除与容器关联的卷
实例:强制删除容器db01、db02
# docker rm -f db01 db02
移除容器nginx01对容器db01的连接,连接名db_web
# docker rm -l db_web
删除容器nginx,并删除容器挂载的数据卷
# docker rm -v nginx
1.4 Docker pause/unpause 命令,暂停容器中所有的进程/恢复容器中所有的进程。
实例:暂停数据库容器db提供服务。
# docker pause db
恢复数据库容器db提供服务。
# docker unpause db
1.5 Docker create 命令,创建一个新的容器但不启动它
实例:使用docker镜像nginx:latest创建一个容器,并将容器命名为nginx_test
# docker create --name nginx_test nginx:latest
1.6 Docker exec 命令,在运行的容器中执行命令
PTIONS说明:
-d :分离模式: 在后台运行
-i :即使没有附加也保持STDIN 打开
-t :分配一个伪终端
例:在容器nginx中以交互模式执行容器内/root/test.sh脚本
# docker exec -it nginx /bin/sh /root/test.sh
在容器nginx中开启一个交互模式的终端
# docker exec -it nginx /bin/bash
二、容器操作
2.1 Docker ps 命令,列出容器
OPTIONS说明:
-a :显示所有的容器,包括未运行的。
-f :根据条件过滤显示的内容。
--format :指定返回值的模板文件。
-l :显示最近创建的容器。
-n :列出最近创建的n个容器。
--no-trunc :不截断输出。
-q :静默模式,只显示容器编号。
-s :显示总的文件大小。
实例:列出所有在运行的容器信息。
# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
022a9bc6d31f redis:3.2 "docker-entrypoint.s…" 2 hours ago Up About an hour 0.0.0.0:6379->6379/tcp dnmp_redis
列出最近创建的5个容器信息
# docker ps -n 5
列出所有创建的容器ID。
# docker ps -aq
2.2 Docker inspect 命令,获取容器/镜像的元数据。
OPTIONS说明:
-f :指定返回值的模板文件。
-s :显示总的文件大小。
--type :为指定类型返回JSON。
实例:获取镜像mysql:5.7的元信息。
# docker inspect mysql:5.7
获取正在运行的容器mymysql的 IP
# docker inspect --format='{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' mymysql
192.168.0.210
2.3 Docker top 命令,查看容器中运行的进程信息,支持 ps 命令参数
容器运行时不一定有/bin/bash终端来交互执行top命令,而且容器还不一定有top命令,可以使用docker top来实现查看容器中正在运行的进程。
实例:查看容器mysql的进程信息。
# docker top mysql
UID PID PPID C STIME TTY TIME CMD
999 40347 40331 18 00:58 ? 00:00:02 mysqld
查看所有运行容器的进程信息。
# for i in `docker ps |grep Up|awk '{print $1}'`;do echo \ &&docker top $i; done
2.4 Docker attach 命令,连接到正在运行中的容器。
要attach上去的容器必须正在运行,可以同时连接上同一个container来共享屏幕(与screen命令的attach类似)。
如输出nginx的access.log日志,CTRL-C不仅会导致退出容器,而且还stop了。这不是我们想要的,detach的意思按理应该是脱离容器终端,但容器依然运行。好在attach是可以带上--sig-proxy=false来确保CTRL-D或CTRL-C不会关闭容器。
实例:容器nginx将访问日志指到标准输出,连接到容器查看访问信息。
# docker attach --sig-proxy=false nginx
112.58.201.12 - - [18/Jul/2018:06:14:06 +0000] "GET / HTTP/1.1" 304 0 "-" "Mozilla/7.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2454.93 Safari/537.36" "-"
2.5 Docker events 命令,从服务器获取实时事件
OPTIONS说明:
-f :根据条件过滤事件;
--since :从指定的时间戳后显示所有事件;
--until :流水时间显示到指定的时间为止;
实例:显示docker 镜像为mysql:5.7 2019年1月02日后的相关事件。如果指定的时间是到秒级的,需要将时间转成时间戳。
# docker events -f "image"="mysql:5.7" --since="2019-01-02"
2.6 Docker logs 命令,获取容器的日志
OPTIONS说明:
-f : 跟踪日志输出
--since :显示某个开始时间的所有日志
-t : 显示时间戳
--tail :仅列出最新N条容器日志
实例:跟踪查看容器nginx的日志输出。
# docker logs -f nginx
112.58.201.12 - - [18/Jul/2018:06:14:06 +0000] "GET / HTTP/1.1" 304 0 "-" "Mozilla/7.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2454.93 Safari/537.36" "-"
查看容器nginx从2019年1月2日后的最新10条日志。
# docker logs --since="2019-01-02" --tail=10 nginx
2.7 Docker wait 命令,阻塞运行直到容器停止,然后打印出它的退出代码。
实例
# docker wait CONTAINER
2.8 Docker export 命令,将文件系统作为一个tar归档文件导出到STDOUT。
OPTIONS说明:
-o :将输入内容写到文件。
实例
将id为022a9bc6d31f的容器按日期保存为tar文件。
# docker export -o redis-`date +%Y%m%d`.tar 022a9bc6d31f
2.9 Docker port 命令,列出指定的容器的端口映射,或者查找将PRIVATE_PORT NAT到面向公众的端口。
实例:查看容器nginx的端口映射情况。
# docker port nginx
3306/tcp -> 0.0.0.0:80
docker学习-常用命令1的更多相关文章
- docker学习-常用命令2
三.容器管理命令3.1 Docker commit 命令,从容器创建一个新的镜像.OPTIONS说明: -a :提交的镜像作者: -c :使用Dockerfile指令来创建镜像: -m :提交时的说明 ...
- Docker学习(三)认识Docker和常用命令
Docker学习(三)认识Docker和常用命令 Docker体系结构 docker服务端,作为服务的提供方,核心进程 docker daemon,所有docker命令都是通过这个进程完成的 REST ...
- 【Docker入门】Docker的常用命令
了解和安装完docker之后,我们学习一下docker的常用命令就和当初学linux命令一样,放心命令其实大致相同只不过细节不同. 一.Docker启动类命令 1.启动docker:syste ...
- Docker Kubernetes 常用命令
Docker Kubernetes 常用命令 增 # 通过文件名或标准输入创建资源. kubectl create # 读取指定文件内容,进行创建.(配置文件可指定json,yaml文件). kube ...
- Docker(二十二)-Docker Swarm常用命令
#查看集群节点 docker node ls #创建nginx服务 #docker pull hub.test.com:5000/almi/nginx:0.1 #下载私有仓库镜像 docker ser ...
- Dockerfile指令及docker的常用命令
DockerfileFROM: FROM <image> FROM <image>:<tag> MAINTAINER: MAINTAINER <name> ...
- Docker Swarm常用命令
#查看集群节点 docker node ls #创建nginx服务 #docker pull hub.test.com:5000/almi/nginx:0.1 #下载私有仓库镜像 docker ser ...
- Docker 学习之命令篇
Docker 学习之命令篇 1. docker images //镜像列表 2. docker ps –a //所有运行过的容器 3. docker ps –l 最后运行的容器 4. docker ...
- Docker之常用命令(二)
这篇博客就不扯皮了,简单粗暴地贴上自己整理的一份Docker常用命令. docker search ** // 查找镜像 docker pull nginx // 载入镜像 # -a 拉取所有tagg ...
随机推荐
- 【译】Optaplanner开发手册本地化: (0) - 前言及概念
在此之前,针对APS写了一些理论性的文章:而对于Optaplanner也写了一些介绍性质,几少量入门级的帮助初学者走近Optaplanner.在此以后,老农将会按照Optaplanner官方的用户手册 ...
- linux启动脚本,暂停脚本
启动脚本: #!/bin/sh net_server_id="nw-server-001" net_server_name="cictec-network-bus-ser ...
- oracle数据库命令行查看存储过程
之前有用过这种写法,转换大小写在赋给字段,但是没成功,偶然间发现别人有这么写,今天试了下确实可以
- C#和.Net的关系
1..net(dot net) .net是一个平台,抽象的平台概念. 实现形式是库:①定义了基本的类型(通用类型系统CTS,common type system). ②包含.net公共语言运行库( ...
- [练习-1] android studio 从Activity 进入 Fragment
从activity 进入到 fragment,使用系统自带的ListFragment 1,新建empty activity 2,新建Fragment(List) 3,activity_main.xml ...
- springboot项目如何打包成war包
一.修改打包形式 在pom.xml里设置 <packaging>war</packaging> 二.移除嵌入式tomcat插件 在pom.xml里找到spring-boot-s ...
- chrome的console功能
Console的常用用法: 1:显示信息 常用的有 console.log(),console.info(),console.warn(),console.error() 2:占位符 3:查看对象的信 ...
- my first note
please do not laugh It is very glad to be here, I will study hard.
- Target JRE version (1.7.0_79) does not match project JDK version (java version "1.8.0_171"), will use sources from JDK: 1.7
IDEA不会自动匹配系统的JDK环境.如果在IDEA里面没有配置JDK,那么运行程序时就会报错 之前碰到这个问题卡了一下 顺手记录一下 出现此错误说明IDE中配置的jdk版本和你使用的jdk版本不一致 ...
- 2018-2019-2 20165205 Exp2 后门原理与实践
20165205 Exp2 后门原理与实践 实验内容 一.基础问题回答 列举你能想到的一个后门进入到你系统中的可能方式 下载盗版软件.操作系统 当然正版软件里可能也有编写者安装的后门 不在官方更新软件 ...