Docker 之 docker命令介绍

1  概述

容器状态转换相关的命令列表关系,docker的状态转换和管理的命令,即docker的生命周期管理的命令,如下截图

圆形图标表示docker的状态

方框表示命令执行命令后触发的事件

箭头的命令,为docker的相关命令,命令执行后,会触发相关事件,事件在方框内表示

菱形里的表示判断,取决于策略设定,如一旦某个容器被意外终止,如OOM,是否被restart

容器处于created或者stopped状态,可以被删除

2  命令介绍

docker pull 拉取相关镜像

每个镜像文件都有其id,即其校验码,如只拖下来1.27.2这个版本,-a则把所有版本都拖下来,如

docker pull busybox:1.27.2

获取最新的centos镜像,默认获取latest版本

docker image pull centos

显示本地镜像信息

docker image ls

或者

docker images

查找镜像

如查找centos镜像,official 显示ok表示官方的,一般采用官方的

 docker search centos

创建和启动

create:仅创建容器不启动

run:既创建容器又启动容器

可以通过命令查看相关的参数选项

 docker run --help

如下

指定容器的名字  --name

-i是指登录到终端后进入交互式,

-t和-i一起使用,即-it

--detach 表示不附加终端

但是--rm表示容器停止后就删除,一般和--detach一起运行

运行如下的命令,运行容器

 docker run -it --name sunnybox busybox:1.27.2

启动docker的时候会自动创建docker0的桥,ip 为 172.17.0.1,默认不指定网络的话,容器会被默认指定到这个桥上,ip从172.17.0.2这个ip开始分配

启动容器,执行命令后,将容器删除

如执行ifconfig -a后删除容器,这个命令的意义在于可以用来探查相关容器的信息

 docker run --name sunnybox03 --rm busybox:1.27.2 ifconfig -a

查看运行中的容器的进程信息

docker top

top后跟上容器名称,如下查看新建的sunnybox

docker top sunnybox

查看运行中的容器

docker ps

查看所有的容器,包括没有运行的容器,加-a选项

docker ps -a

停止容器

命令有stop和kill,其中,stop命令比较安全,kill强制停止,可能导致数据丢失

docker stop sunnybox

或者

docker kill sunnybox

重启运行中的容器

docker restart sunnybox

暂停容器运行

容器暂停后,相当于状态冻结在内存中,不会响应请求

docker pause sunnybox

解除暂停容器,重新运行

docker unpause sunnybox

附加终端

镜像在后台运行,通过attach进入运行中容器

docker attach sunnybox

要剥离终端,可以同时按照ctrl+p,然后再快速按ctrl+q进行剥离

删除容器

容器停止默认不会被删除的,用以下命令删除

docker rm sunnybox

注意,docker有可能会因为宿主机内存耗尽而终止,内核会随机选择docker内存占用大的容器,将其强制停止。

查看镜像或者容器的详细信息

docker inspect sunnybox

容器的信息用json格式的字典进行详细

docker inspect busybox:1.27.2

在docker容器中,命令不能运行为守护进程,原因是运行为守护进程,就会脱离当前终端,脱离当前终端,就相当于当前容器没有进程,那么当前容器生命周期就结束了,如下,启动一个命令,设定busybox启动httpd服务,但是添加选项-f,表示httpd不启动为守护进程,

如果执行以下命令,那么就会卡住,这是正确的,因为httpd此时运行起来,没有进入交互式模式,所以卡住,如果把选项-f换成-d选项就可以运行为守护模式,不建议使用-d选项

 docker run --name sunnyweb busybox:1.27.2 httpd -f /

在已经运行的容器中运行其他命令,使用选项 exec

如下命令,在已经运行的容器sunnyweb执行命令netstat -tnl,查看容器内部监听端口信息

docker exec sunnyweb netstat -tnl

原文地址:http://blog.51cto.com/ghbsunny/2155017

时间: 2024-10-11 12:24:59

Docker 之 docker命令介绍的相关文章

Docker学习总结之Run命令介绍

在使用Docker时,执行最多的命令某过于run了.这个命令可以说是所有docker操作的入口.在Docker官方Reference中单独列出了一个章节来介绍Run的各种参数使用,也足以看出Docker run的重要性.有感于此,我感觉有必要好好学习一下Run命令,因此特意看了一下Run命令介绍,结合日常中的使用心得,分享一下.以下文档大部分翻译于Docker 官方Reference,肯定会存在不少错误之处,希望能抛砖引玉,大家共同讨论. Docker在执行时会将相关进程封装到相互隔离的容器(c

Docker实用命令介绍

Docker实用命令介绍 1. docker启动.关闭.停止 ╭─wil-xz in ~ 12:15:44 ╰─?(?﹏?.)? service docker restart Redirecting to /bin/systemctl restart docker.service ╭─wil-xz in ~ 12:15:44 ╰─?(?﹏?.)? service docker stop Redirecting to /bin/systemctl stop docker.service ╭─wil

Docker存储驱动devicemapper介绍和配置

devicemapper介绍 Device Mapper是Linux系统中基于内核的高级卷管理技术框架.Docker的devicemapper存储驱动就是基于该框架的精简置备和快照功能来实现镜像和容器的管理. 注:Device Mapper是Linux的一种技术框架,而devicemapper是Docker Engine基于Device Mapper提供的一种存储驱动. 早期的Docker运行在Ubuntu和Debian Linux上并使用AUFS作为后端存储.Docker流行之后,越来越多的的

docker 的常用命令

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

Docker容器日志管理介绍

Docker容器日志分为2类: Docker引擎日志(Docker本身运行的日志). 容器日志,各个容器内产生的日志. Docker引擎日志Centos系统下Docker引擎log一般给systemd管理,可通过 journalctl -u docker.service 命令查看. 容器日志一.查看日志命令docker logs 容器ID 显示当前运行容器的log,输出Linux下的STDOUT(标准输出).STDERR(标准错误输出),docker logs 显示的内容包含STDOUT和STD

DOCKER学习_017:Docker-Compose介绍

dockers三驾马车 Docker Machine Docker Swarm Docker Compose 一 Docker Compose介绍 Docker Compose是一个定义和运行多容器应用的单机编排工具.通过Docker Compose你可以使用一个单一的YAML文件来配置多个应用服务,通过一条命令,就可以将所有配置的服务全部启动起来. 1.1 使用Docker Compose的三个步骤 使用Dockerfile定义环境,这样可以确保其在任意地方运行 使用docker-compos

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

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

docker 容器常用命令

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

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