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

原文地址:https://www.cnblogs.com/xl999/p/10290328.html

时间: 2024-10-08 21:03:20

docker学习-常用命令1的相关文章

docker学习-常用命令2

三.容器管理命令3.1 Docker commit 命令,从容器创建一个新的镜像.OPTIONS说明: -a :提交的镜像作者: -c :使用Dockerfile指令来创建镜像: -m :提交时的说明文字: -p :在commit时,将容器暂停. 实例:将容器6h04c6c178u7 保存为新的镜像,并添加提交人信息和说明信息.# docker commit -a "xliang" -m "web_db" 6h04c6c178u7 sql:v1 # docker i

开发者必备丨Docker客户端常用命令分享

学习Docker,首先需要了解Docker基本概念,我们在以前的文章中介绍过docker的基本原理和部署操作系统. 今天讲下嵌入式开发中docker客户端常用的命令,开始进入“动手”阶段(也就是敲Docker命令).Docker命令较多,这里笔者总结下常用的Docker命令,方便小伙伴们查阅. 客户端常用命令列表 以下为Docker 客户端常用命令列表,可以通过docker COMMAND --help来查看这些命令的具体用法. attach:依附到一个正在运行的容器中: build :从一个D

CentOS 7安装Docker及常用命令

CentOS 7安装Docker及常用命令   yum install docker #安装docker systemctl start docker.service #启动docker systemctl enable docker.service #docker开机启动 docker -v #查看docker版本 docker info #查看docker具体信息 docker pull centos #下载centos image docker images #显示已有image dock

Docker之常用命令(二)

这篇博客就不扯皮了,简单粗暴地贴上自己整理的一份Docker常用命令. docker search ** // 查找镜像 docker pull nginx // 载入镜像 # -a 拉取所有tagged镜像 # --disable-content-trust 忽略镜像的校验,默认开启 docker create // 创建一个容器但不启动它 run docker run -d -P -it --name mynginx nginx # -t 在新容器内指定一个伪终端 # -i 允许对容器内的标

docker入门-常用命令和网络

一.常用命令 容器生命周期管理 run     运行一个容器 start/stop/restart  启动/停止/重启 kill   杀死一个容器 rm  删除一个容器 pause/unpause create exec  运行一个命令 容器操作 ps   查看当前容器 inspect  描述容器 top  查看容器进程 attach events logs  查看日志 wait export port  查看端口 容器rootfs命令 commit  修改一个镜像 cp  拷贝一个外部文件到容

docker 容器常用命令

1 启动容器 启动容器有两种方式,一种是基于镜像新建一个容器并启动,另外一个是将在终止状态(stopped)的容器重新启动. 因为 Docker 的容器实在太轻量级了,很多时候用户都是随时删除和新创建容器. 新建并启动 所需要的命令主要为 docker run 例如,下面的命令输出一个 "Hello World",之后终止容器. [[email protected] ~]# docker run docker.io/centos:v1 /bin/echo "hello wor

docker 的常用命令

本文章仅简单介绍下docker下各个命令,至于各个命令的使用方法和参数后续进行详细描述.首先docker主要有几个组件:仓库,镜像,网络及容器及dockfile文件.一.仓库docker默认的仓库指向是 Docker Hub,当然用户也可以登陆到自己的其他仓库,仓库的主要作于是存放镜像,用户可以将自己的镜像上传到仓库中也可以从仓库中下载镜像.仓库类命令主要有:1.login:登陆指定的仓库2.logout:退出指定的仓库二.镜像docker中的镜像主要只运维服务的模板,或者框架,正常来说通过运行

Docker入门-常用命令

Docker镜像操作 Docker运行容器前需要本地存在对应的镜像,如果本地不存在该镜像,Docker会从镜像仓库下载该镜像. 获取镜像 从Docker镜像仓库获取镜像的命令是docker pull.其命令格式为: docker pull [选项][Docker Registry地址[:端口号]/]仓库名[:标签] 具体的选项可以通过docker pull --help命令看到,这里我们说一下镜像名称的格式.Docker镜像仓库地址:地址的格式一般是<域名/IP>[:端口号].默认地址是Doc

Docker 村常用命令 (持续更新)

最近 用docker 搭建了项目环境.记录一下常用的docker命令 1. 搜索镜像:docker search redis redis :镜像名称  在docker 镜像库中搜索镜像 2. 拉取镜像:docker pull redis redis :镜像名称  拉去docker镜像 3.创建容器: docker run -p 6377:6379  --name myredis -v /root/redis/data:/data -d reids -p  宿主机端口:容器端口   将容器端口映射