[置顶] docker1.12--docker命令行帮助文档
镜像操作
build
使用dockerfile方式创建镜像
使用dockerfile文件docker build dockerflle/,dockerfile文件默认位于dockerflle/Dockerfile
可以在这里设置cgroup
commit
通过容器创建本地镜像。注意:如果要push到docker hub中,注意生成镜像的命名。
docker commit 容器id 镜像名
docker commit 536f0efeeef3 centostttt
export
将容器的文件系统打包成tar文件
有两种方式:
docker export -o mysqldb1.tarmysqldb
docker export mysqldb >mysqldb.tar
history
显示镜像制作的过程,相当于dockfile
docker history centostttt IMAGE CREATED CREATED BY SIZE COMMENT f2bb8fe139f0 46 minutes ago /bin/bash 1.671MB 8da04c5a9351 56 minutes ago /bin/sh -c #(nop) ENV PWD=/root/ 0 B 77d730816eed 56 minutes ago /bin/sh -c #(nop) ENV PATH=/usr/local/sbin:/ 0 B 3bee3060bfc8 13 days ago /bin/sh -c #(nop) CMD ["/bin/bash"] 0 B <missing> 13 days ago /bin/sh -c #(nop) LABEL name=CentOS Base Ima 0 B <missing> 13 days ago /bin/sh -c #(nop) ADDfile:d22a9c627d1d1f32a8 192.5 MB
images
列出本机的所有镜像
import
根据tar文件的内容新建一个镜像,与之前的export命令相对应
docker import mysqldb.tar mysql:v1
eb81de183cd94fd6f0231de4ff29969db822afd3a25841d2dc9cf3562d135a10
load
与save命令相对应,将sava命令打包的镜像通过load命令导入
pull
从docker hub中下载镜像
push
将本地的镜像上传到docker hub中
前提是要先用docker login登录上,不然会报错误
rmi
删除镜像
save
将镜像打包,与上面的load命令相对应
docker save -o nginx.tar nginx
search
从Docker Hub中搜索镜像
tag
对镜像进行重命名
容器生命周期
attach
将终端依附到容器上
docker attachb7a7c4bef5a5
create
创建一个容器。注意,此时,容器的status只是Created
可以在这里设置cgroup【CPU、内存、IO等等】、Capability、namespace、volume等等
docker create -c 2(最少2) --cpuset-cpus 0,2 -m 32m --memory-swap 0-w /root/(更换目录) --blkio-weight 10 --dns 114.114.114.114--name nginx8(容器名称) -p 宿主机端口:容器端口 -v 宿主机目录:容器目录--cpu-period 1000 --expose 22 --shm-size 32m -ti centos6:nginx
exec
用于容器启动后,执行其它的任务。
通过exec命令可以创建两种任务:后台型任务和交互型任务
后台型任务:
docker exec -d cc touch 123 其中cc是容器名
交互型任务:
docker exec -i -t cc /bin/bash
ls
123 bin boot dev etc home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
inspect
用于查看容器的配置信息,包含容器名、环境变量、运行命令、主机配置、网络配置和数据卷配置等。
docker inspect 容器ID或者容器ID列表
返回一个列表(包含字典)
kill
强制终止容器。
参数-s或--signal string:Signal to send to thecontainer (default "KILL")
logs
用于查看容器的日志,它将输出到标准输出的数据作为日志输出到docker logs命令的终端上。常用于后台型容器
pause
暂停容器内的所有进程,此时,通过dockerstats可以观察到此时的资源使用情况是固定不变的,通过docker logs -f也观察不到日志的进一步输出。
port
查看容器端口与宿主机端口的映射情况
docker port blog
80/tcp -> 0.0.0.0:80
容器blog的内部端口80映射到宿主机的80端口,这样可通过宿主机的80端口查看容器blog提供的服务
ps
列出所有容器,其中dockerps用于查看正在运行的容器,ps -a则用于查看所有容器。
rename
更改容器的名字
restart
重启容器
rm
删除容器,注意,删除一个运行中的容器,必须加-f参数
如果要一次性删除所有容器,可使用docker rm -f `docker ps -a -q`,其中,-q指的是只列出容器的ID
run
让创建的容器立刻进入运行状态,该命令等同于docker create创建容器后再使用docker start启动容器
可以在这里设置cgroup【CPU、内存、IO等等】、Capability、namespace、volume等等
start
启动容器
stats
动态显示容器的资源消耗情况,包括:CPU、内存、网络I/O
stop
停止一个运行的容器
top
查看容器中正在运行的进程
unpause
恢复容器内暂停的进程,与pause参数相对应
wait
捕捉容器停止时的退出码
执行此命令后,该命令会“hang”在当前终端,直到容器停止,此时,会打印出容器的退出码。
update
Updateconfiguration of one or more containers
升级一个或者多个容器配置,主要是cgroup
容器文件系统
cp
在容器和本地文件系统上拷贝文件【夹】
docker cp [OPTIONS]CONTAINER:SRC_PATH DEST_PATH|-
dockercp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH
docker cp tta49d7ca21839:/root/
docker cpa49d7ca21839:/root/test/ ./
diff
对比容器的文件变化情况
dockerdiff a49d7ca21839
volume
Manage Dockervolumes
其他
events
实时或者指定时间戳输出Docker服务器端的事件,包括容器的创建,启动,关闭等。
info
查看docker的系统信息
login
登录到自己的Dockerregister,需有Docker Hub的注册账号
docker login
Username: ivictor
Password:
Email: xxxx@foxmail.com
WARNING: login credentials saved in /root/.docker/config.json
Login Succeeded
logout
退出登录
docker logout
Remove logincredentials for https://index.docker.io/v1/
version
查看docker的版本
network
Manage Dockernetworks
docker网络管理
node
Manage DockerSwarm nodes
service
Manage Docker services
swarm
Manage DockerSwarm
区别
stop和kill、wait
docker stop命令给容器中的进程发送SIGTERM信号,默认行为是会导致容器退出,当然,容器内程序可以捕获该信号并自行处理,例如可以选择忽略。
docker kill则是给容器的进程发送SIGKILL信号,该信号将会使容器必然退出。
docker wait捕捉容器停止时的退出码。执行此命令后,该命令会“hang”在当前终端,直到容器停止,此时,会打印出容器的退出码。
run和create、start
create只是创建容器,没有启动。可以配置cgroup
start是启动容器
run是创建并启动容器,run=create+start。可以配置cgroup
exec和attach
exec
在启动的容器上执行命令,可以分为后台和交互式。
交互式执行类似attach,但退出之后不会结束容器。
attach
在容器上附属一个终端,退出之后可能会结束容器(容器启动命令为/etc/bash)
[置顶] docker1.12--docker命令行帮助文档的更多相关文章
- 深入浅出Docker(二):Docker命令行探秘
1. Docker命令行 Docker官方为了让用户快速了解Docker,提供了一个交互式教程,旨在帮助用户掌握Docker命令行的使用方法.但是由于Docker技术的快速发展,此交互式教程已经无法满 ...
- docker命令行学习
docker命令行学习 docker run docker run --help:老实说这条最管用了 docker run -it:交互模式,允许控制台输出 docker run -d:detach, ...
- Docker命令行与守护进程如何交互?
译者按: Docker是典型的C/S架构,其守护进程(daemon)与命令行(CLI)是通过REST API进行交互的. 原文: Understanding how the Docker Daemon ...
- 第12章:MongoDB-CRUD操作--文档--查询--游标详解
①是什么游标 游标不是查询结果,可以理解为数据在遍历过程中的内部指针,其返回的是一个资源,或者说数据读取接口. 客户端通过对游标进行一些设置就能对查询结果进行有效地控制,如可以限制查询得到的结果数量. ...
- 如何用JavaDoc命令生成帮助文档
如何用JavaDoc命令生成帮助文档 文档注释 在代码中使用文档注释的方法 /** *@author *@version * */ 生成帮助文档 打开java文件所在位置,在路径前加入cmd (注意有 ...
- 每个Web开发者都该了解的12条命令行
转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者.原文出处:https://tutorialzine.com/2017/08/12-terminal-comma ...
- 一步一步从原理跟我学邮件收取及发送 12.telnet命令行收一封信pop3
本系列上一篇文章中我们就说到了,这一次我们要说 pop3 收信了.虽然我觉得应该先说完 mime 格式,不过估计大家已经不耐烦了 -- 怎么老在说发送啊?我们要看收取! 好吧,来啦,来啦!收取邮 ...
- [置顶] 推荐12款很棒的HTML5开发框架和开发工具
HTML5 在不同的领域让网页设计更强大的.快速,安全,响应式,互动和美丽,这些优点吸引更多的 Web 开发人员使用 HTML5.HTML5 有许多新的特性功能,允许开发人员和设计师创建应用程序和网站 ...
- linux上部署engineercms、docker和onlyoffice实现文档协作
等了好久,这次终于下决心在局域网部署了linux系统,并安装docker和load了onlyoffice,利用engineercms进行资料管理和文档协作. 我整理了完整文档,见我的网盘. engin ...
随机推荐
- js 图片自动循环切换setInterval();
stlye样式定义 <style type="text/css"> body{background-image: url(img/001.jpg ...
- PHP异常处理类(文件上传提示)
知识点: 大部分时候我们的代码总有各种各样的bug,新手程序员(比如我)最经常的工作就是不停的报错和echo变量,一个好的异常处理类可以帮我们更快+更容易理解报错代码的问题,同时,异常处理还可以避免一 ...
- Spring框架jar包分类(转)
转自:http://www.cnblogs.com/JSONBEAN/p/6364038.html 长期以来都在写SSM框架的项目,却未能深入理解框架的搭建原理,而只是浅薄的理解前辈的架构,然后不断套 ...
- GYM - 101147 K.Touristic Trip
题意: 一个人从城市0开始旅行.一共有N座城市,他每到一座城市都会寄一张明信片.给出从一座城市到另一座城市的概率和在每座城市寄出每张明信片的概率.给出长度为k的寄明信片的序列.问在该序列的条件下在第Z ...
- 洛谷 P4883 mzf的考验 解题报告
P4883 mzf的考验 题目背景 \(mzf\)立志要成为一个豪杰,当然,他也是一个\(OIer\). 他希望自己除了会\(OI\)之外还会各种东西,比如心理学.吉他.把妹等等. 为了让自己有更大的 ...
- 《c程序设计语言》读书笔记-递归实现快速排序算法
#include <stdio.h> void swap(int v[],int i,int j) { int temp; temp = v[i]; v[i] = v[j]; v[j] = ...
- Java基础语法实例(1)——实习第一天
来到广州实习的第一天,我选择的是JavaEE,因为以后的方向是Java,所以就选择了它.感觉有一段时间没有接触Java了.趁此机会好好努力,将基础巩固好. Java输入及循环,判断,字符转换,数组定义 ...
- C++ primer 学习笔记之容器insert
今天在做练习9.22时,始终出现segments fault.最后才发现原来是自己对“容器insert之后迭代器会失效”的理解不够透彻. 题目如下: 假定iv是一个int的vector,下面的程序存在 ...
- 百度AI开放平台 UNIT平台开发在线客服 借助百度的人工智能如何开发一个在线客服系统
这段时间在研究一些人工智能的产品,对比了国内几家做人工智能在线客服的,有些接口是要收费的,有些是免费的,但是做了很多限制,比如每天调用的接口次数限制是100次.后来就找到了百度的AI,大家也知道,目前 ...
- 废弃sqlite代码,备查
using System.Linq; using System.Text; using System.Threading.Tasks; using System.Reflection; using T ...