标签:nginx name 别名 并且 log ps命令 cti 过滤器 停止
摘要:介绍Docker容器相关的操作命令。
知识点:
run ps start attach exec top stop kill
inspect rm logs images rmi pull push
commit build
注:可以使用docker COMMAND --help
来查看COMMAND的详细用法,本文只介绍常用的子集。
docker run [-d] [-i] [-t] IMAGE [Command] [Arguments]
· -d:daemon,启动守护式容器
· -i:interactive,启动交互式容器
· -t:tty,允许标准输入输出
还有一些其他的选项
· --name=NAME:给容器指定一个别名。否则寻找容器要用ID或系统自带名字,很不友好。
docker run ubuntu echo "hello world"
这样的容器执行一次命令就停止了。
docker run -i -t ubuntu /bin/bash
接下来就进入了容器的bash中,可以执行各种命令,好像虚拟机一样。
此时想要退出容器,可以使用exit退出并停止容器,或【Ctrl+P】+【Ctrl+Q】的escape组合,退出而不停止容器。
这样的容器能够长期运行,没有会话,适合运行各种服务。下面是启动守护式容器的几种方法:
docker attach 容器名
命令,附加到运行的容器中。docker run -d 镜像名 [command] [args]
docker run --name=test -d ubuntu "while true ;do echo hello world; sleep 1; done"
docker start [-i] 容器名
· -i:以交互的方式重新启动。
docker start -i NAME
docker ps [-a] [-l]
· -a:列出所有的容器(包括停止的)
· -l:列出新创建的容器
· 默认:只列出未停止的容器
执行此命令后,docker将列出容器列表的信息。其中那一串很长的无规律串就是容器的ID,而name一列就是你指定或系统指定的容器别名。
docker inspect ID或者别名
执行此命令后,docker以json格式列出指定容器很多信息。包括操作系统版本,名称,命令,网络配置等。
docker rm 容器名
只能删除已经停止的容器,不能删除运行中的容器。
删除后,ps命令会找不到那个容器。
docker logs [-f] [-t] [--tail]
举例:docker logs --tail=5 -tf test
查看test容器最后五条命令,带时间戳并且随时更新。
docker top 容器名
docker exec [-d] [-i] [-t] 容器名 [command] [args]
举例:docker exec -i -t test /bin/bash
启动一个新的bash进程
docker stop 容器名
docker kill 容器名
镜像存放在仓库(repository)中,而这个仓库存放在仓库(registory)中。
镜像由Repository和Tag唯一指定,比如ubuntu:14.04,ubuntu:latest,这里14.04和latest就是Tag,ubuntu就是Repository。如果没有指定Tag,则会使用默认的latest。
docker images [-a] [-f] [-q] [--no-trunc]
docker inspect 镜像仓库名+Tag名,或者镜像ID
docker rmi [-f] [--no-prune=false] 镜像仓库名+Tag名,或者镜像ID
如果一个镜像ID对应了多个镜像标签,那么使用Image ID才可以删除镜像,如果使用仓库名+标签,只能删除对应的标签。
如果想要删除镜像仓库下的多个镜像,可以用如下语法:
docker rmi $(docker images -q ubuntu)
docker search [options] 镜像仓库名
注意:search命令最多只能显示25个结果。搜索结果后,将返回镜像的信息(星级,是否官方,ID,标签...)
docker pull [options] NAME [:TAG]
docker push NAME
需要提供用户名,密码和邮箱。
Docker不会上传整个镜像,而只会上传修改的部分。
镜像默认是公共的,可以在Docker Hub转为私有。
镜像的构建非常重要。我们可以自定义一个容器,安装好自己需要的一些文件,然后构建成镜像以方便复用。
docker commit [options] 容器名 [Repository[:TAG]]
首先要创建dockerfile文件,它是一种包含一系列命令的文本文件。
举例:
#First Dockerfile
FROM ubuntu:14.04
MAINTAINER RaidriarB "raidriarb@foxmail.com"
RUN apt-get update
RUN apt-get install nginx
EXPOSE 80
然后执行build的命令来构建镜像。
docker build [options] path|url
docker会在build的过程中,每一步都生成一个ID,这就是构建时的中间层镜像。如果使用ps命令查看,会发现他们的标签和仓库名都是none。如果想要取消构建中间层镜像,只需要使用--quiet或者-q选项。
dockerfile类似批处理文件,是一种非常强大的构建镜像方式。后面会详细介绍dockerfile的功能。
标签:nginx name 别名 并且 log ps命令 cti 过滤器 停止
原文地址:https://www.cnblogs.com/RaidriarB/p/11616907.html