Docker 常用命令速查手册
记录一下docker的日常使用命令,本文主要针对linux + mac操作系统而言,window是否适用不太确定,谨慎使用
1. docker进程
docker进程启动、停止、重启,常见的三种case
# 启动docker
service docker start
# 关机docker
service docker stop
# 重启docker
service docker restart
2. 镜像操作
镜像作为容器执行的前提条件,一般需要掌握的几个命令无非是搜索,下载,删除,创建
# 镜像列表
docker images
# 检索镜像, 从镜像仓库中检索
docker search xxx
# 下载镜像
docker pull xxx
# 删除镜像
docker rmi xxx
关于创建镜像,有必要稍微详细一点点
# 通过容器创建镜像
docker commit -m="首次提交" -a="一灰灰Blog" dd85eb055fe8 yh/centos:v0.1
# 镜像历史查询
docker history yh/centos
上面的几个参数进行说明
-m和git的提交一样,后面跟上描述信息-a版权声明,这个东西是我创建的,有啥问题,找我dd85eb055fe8容器idyhh/quick-os:0.1创建的镜像名
3. 容器操作
接下来就是正菜了,容器的各种操作,启动,关闭,重启,日志查询以及各种进入容器内部搞事情
a. run
万事开头第一步,加载镜像,创建容器
docker run 镜像名:版本
run后面可以跟很多的参数,比如容器暴露端口指定,存储映射,权限等等,由于参数过多,下面只给出几个不同的例子,来具体的演示参数可以怎么加
case1: 创建并后台执行
docker run -i -t -d centos:latest
- 其中关键参数为
-d,指定容器运行与前台或者后台,不加上时前台 -i: 打开STDIN,用于控制台交互-t: 支持终端登录
case2: 运行一个带命令在后台不断执行的容器
docker run -d centos:latest ping www.baidu.com
case3: 运行一个在后台不断执行的容器,同时带有命令,程序被终止后还能重启继续跑
docker run -d --restart=always centos:latest ping www.baidu.com
case4: 指定容器名
docker run -d --name=yhh_centos centos:latest
case5: 暴露容器端口80,并与宿主机端口8080绑定
docker run -d --name=yhh_centos -p 8080:80 centos:latest
case6: 指定容器与宿主机目录(/home/yihui/html/www)共享
docker run -d --name=yhh_centos -v /home/yihui/html/www:/var/www centos:latest
b. 基操
容器创建完毕之后,就是一些基本操作了,启动、停止、重启、删除
# 查看容器列表, 列出所有的容器
docker ps -a
# 启动容器,start后面可以跟上容器名,或者容器id
docker start xxx # (这里的xxx可以是容器名:yhh_centos 也可以是容器id:f57398ab22c5)
# 关闭容器
docker stop xxx
# 重启
docker restart xxx
# 删除
docker rm xxx
在查看容器列表时,如果某个容器的启动参数特别长,直接使用docker ps -a会发现看不到完整的启动命令,这个时候可以带上参数--no-trunc来显示完整命令
docker ps -a --no-trunc
c. 进阶
接下来进入一些容器的高级操作技巧(实际上也并没有特别酷炫)
为了演示一些进阶的内容,这里创建一个容器作为测试
docker run -it -d --name=yhhos centos
容器日志查询
日志,定位问题的神器
# 查询xxx容器的日志
docker logs yhhos
基本上不太会直接使用上面的命令,因为上面把所有的日志都打印出来了,可以直接晃瞎我们的钛合金x眼
一般日志可以加两个参数 -f, -t
docker logs -f -t --since="2019-05-11" --tail=10 yhhos
--since: 此参数指定了输出日志开始日期,即只输出指定日期之后的日志。-f: 查看实时日志-t: 查看日志产生的日期--tail=10: 查看最后的10条日志。
文件拷贝
将容器的某个文件捞出来;或者强塞,一个cp即可
# 将当前目录的test.md文件拷贝到容器的 /tmp 目录下
docker cp test.md yhhos:/tmp
# 将容器的/tmp/test.md目录拷贝到当前目录下
docker cp yhhos:/tmp/test.md ./out.md
进入容器
进入容器内部,然后就可以为所欲为了...
docker exec -it yhhos /bin/bash
获取容器所有信息
docker inspect yhhos
II. 其他
1. 一灰灰Blog: https://liuyueyi.github.io/hexblog
一灰灰的个人博客,记录所有学习和工作中的博文,欢迎大家前去逛逛
2. 声明
尽信书则不如,已上内容,纯属一家之言,因个人能力有限,难免有疏漏和错误之处,如发现bug或者有更好的建议,欢迎批评指正,不吝感激
- 微博地址: 小灰灰Blog
- QQ: 一灰灰/3302797840
3. 扫描关注
一灰灰blog

Docker 常用命令速查手册的更多相关文章
- Docker常用命令速查手册(华贵铂金版)
原创声明:作者:Arnold.zhao 博客园地址:https://www.cnblogs.com/zh94 Docker常用命令速查手册 搜索仓库镜像 docker search nginx 获取 ...
- Ubuntu常用命令速查手册-珍藏版-完整版
sudo apt-get install 软件名 安装软件命令 sudo nautilus 打开文件(有root权限) su root 切换到“root” ls 列出当前目录文件(不包括隐含文件) l ...
- Linux系统常用命令速查手册
点击上方"开源Linux",选择"设为星标" 回复"学习"获取独家整理的学习资料! 系统信息 arch #显示机器的处理器架构(1 ...
- Git常用命令速查手册
Git组成 1.初始化仓库 git init 2.将文件添加到仓库 git add 文件名 # 将工作区的某个文件添加到暂存区 git add -u # 添加所有被tracked文件中被修改或删除的文 ...
- Git 常用命令速查手册
来源:https://www.jianshu.com/p/5ee9897b6b65 1.初始化仓库 git init 2.将文件添加到仓库 git add 文件名 # 将工作区的某个文件添加到暂存区 ...
- Docker常用命令速查
docker pull ${CONTAINER NAME} #拉取镜像 docker images #查看本地所有镜像 docker ps #查看所有正在运行的容器,加-q返回id docker ps ...
- [Git]Git常用命令速查手册
看的别人的文章,来源:https://mp.weixin.qq.com/s/SGRcE9EPOu4Tph65tzPzQw
- Linux常用命令速查备忘
Linux常用命令速查备忘 PS:备忘而已,详细的命令参数说明自己man 一. 启动,关机,登入,登出相关命令 [login] 登录 [logout] 登出 [exit] 登出 [shutdown ...
- Git 常用命令速查表(图文+表格)【转】
转自:http://www.jb51.net/article/55442.htm 一. Git 常用命令速查 git branch 查看本地所有分支git status 查看当前状态 git comm ...
随机推荐
- .Net Core 给WebApi接口返回值添加全局的日期格式化
public void ConfigureServices(IServiceCollection services) { services.AddMvc().AddJsonOptions(option ...
- 【python爬虫】每天统计一遍up主粉丝数!
目录 每天统计一遍up主粉丝数! 第一步,爬取up主的粉丝信息 1.首先导入需要的包 2.为了方便,把它写成一个函数 3.那么就调用一下这个函数吧! 4.运行一下,成功啦! 第二,说好的每天统计一遍呢 ...
- 移动前端viewPort的那些事
1.viewport简单说 一般来说,移动上的viewport都是大于浏览器窗口的,不同的设备有自己默认的viewport值(980px或1024px). 2.三个viewport的理解(layout ...
- html书写行内元素时-tab和换行会在行内元素间引入间距
目录 html文本中的控制字符会被解析为文本节点 书写行内元素时,换行符LF与水平制表符HT会引入莫名的元素间间隔 其他控制字符是否会引入间距的验证 html文本中的控制字符会被解析为文本节点 举例: ...
- SQLMAP源码阅读(一)
- 【转】Git使用教程之基础篇
Git使用教程 一:Git是什么? Git是目前世界上最先进的分布式版本控制系统. 二:SVN与Git的最主要的区别? SVN是集中式版本控制系统,版本库是集中放在中央服务器的,而干活的时候,用的都是 ...
- eclipse activiti 不能自动生成png图片解决方案
1. Windows-->Preferences 2. Activiti-->Save Actions-->勾选 Create process definition ... --&g ...
- centos7利用acme.sh获取Let's Encrypt的永久免费ssl证书并配置网站域名https访问
acme.sh介绍:https://github.com/Neilpang/acme.sh/wiki/%E8%AF%B4%E6%98%8E github:https://github.com/Neil ...
- Nginx 高级配置-实现多域名HTTPS
Nginx 高级配置-实现多域名HTTPS 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.Nginx支持基于单个IP实现多域名的功能 Nginx支持基于单个IP实现多域名的功能 ...
- 复制excel表中的数据
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...