Docker基本命令入门
本文介绍Docker基本的操作命令,包括对镜像容器的获取,查看,保存,启停等操作。
1.
检查docker的版本:
docker version
docker -v
2.
搜索名字叫做tutorial的镜像:
docker search tutorial
3.
下载tutorial镜像:
docker pull learn/tutorial
4.
在docker容器中运行hello world:
docker run learn/tutorial echo "hello word"
在learn/tutorial镜像里面安装ping程序:
docker run learn/tutorial apt-get install -y ping
在新的镜像中运行ping www.google.com命令
docker run lean/ping ping www.google.com
5.
查看所有正在运行中的容器列表:
docker ps -a
获得上一个执行完命令之后容器的id:
docker ps -l
列出镜像的基本信息
docker images
docker images [NAME]/[CONTAINER ID]
查看容器的详细信息
docker inspect efe
6.
使用指定镜像ubuntu:16.04来启动一个容器:
docker run -t -i ubuntu:16.04 /bin/bash
如果不指定具体的标记,则默认使用latest标记信息。
交互模式运行:
docker run -it chug/ubuntu14.04x64 /bin/bash
-it表示运行在交互模式,i表示打开并保持stdout,t表示分配一个终端(pseudo-tty)。
一般这个模式就是可以启动bash,然后和容器有命令行的交互。
后台启动一个容器:
docker run -d mysql
如果想进入到后台运行的容器,首先获取其id,使用attach命令进入:
docker attach aa97ba3292ce
使用rm在退出容器时删除容器,不然docker中临时容器会越来越多:
docker run --rm -it chug/ubuntu14.04x64 /bin/bash
如果使用exit,命令退出,则容器的状态处于停止状态,而不是后台运行。
如果想让容器一直后台运行,而不是停止,可以使用快捷键 ctrl+p ctrl+q 退出,此时容器的状态为Up。
启动、停止、重启容器aa97ba3292ce的命令:
docker start aa97ba3292ce
docker stop aa97ba3292ce
docker restart aa97ba3292ce
7.
保存镜像,需要在退出镜像前记住容器的id:
root@aa97ba3292ce
或者获得上一个执行完命令之后容器的id:
docker ps -l
然后保存镜像如下,提交作者,描述,需要保存的镜像id,保存的镜像名称:
docker commit -a "yuwen 10208438" -m "ranger admin install with mysql5.5 v1" ba9ca696127d org.apache.ranger/mysql:v1
查看所有的镜像,查看保存结果
docker images | grep mysql
使用tag命令添加镜像标签,为了方便在后续工作中使用特定的镜像:
docker tag docker.io/hello-world:latest hello-world:mytag
保存镜像到文件,将org.apache.ranger/mysql:v1保存为mysql5.5v1.tar:
docker save -o mysql5.5v1.tar org.apache.ranger/mysql:v1
加载本地镜像:
docker load -i mysql5.5v1.tar
8.
删除容器或者镜像,注意:删除镜像前必须先删除以此镜像为基础的容器:
docker rm container_id
使用ID删除:
docker rmi image_id
使用标签删除(如果存在别名,只会删除该别名)
docker rmi TAG
强制删除:
docker rmi -f centos-test:vim
9.
递归地输出指定镜像的历史镜像
docker history <image-id>
不截断输出结果:
docker history --no-trunc <image-id>
Docker基本命令入门的更多相关文章
- 15个Docker基本命令及用法
Docker入门教程:15个Docker基本命令及用法 本文中,我们将学习15个Docker命令以及命令的用法和功能,并通过实践学习它是如何工作的. AD:51CTO 网+ 第十二期沙龙:大话数据 ...
- 赞一个 kindle电子书有最新的计算机图书可买了【Docker技术入门与实战】
最近对docker这个比较感兴趣,找一个比较完整的书籍看看,在z.cn上找到了电子书,jd dangdang看来要加油啊 Docker技术入门与实战 [Kindle电子书] ~ 杨保华 戴王剑 曹亚仑 ...
- docker-9 supervisord 参考docker从入门到实战
参考docker从入门到实战 使用 Supervisor 来管理进程 Docker 容器在启动的时候开启单个进程,比如,一个 ssh 或者 apache 的 daemon 服务.但我们经常需要在一个机 ...
- Docker 简单入门
Docker 简单入门 http://blog.csdn.net/samxx8/article/details/38946737
- Docker快速入门
Docker已经火了很长一段时间,最近打算在阿里云上好好熟悉一下Docker的相关应用,为今后的工作做准备. 基本概念 Docker是基于Go语言实现的云开源项目,诞生于2013年初,最初发起者是do ...
- Docker安装入门 -- 应用镜像
Docker安装入门 -- 应用镜像 WordPress 1.docker build -t csphere/wordpress:4.2 . 2.docker run -d -p 80:80 -- ...
- Docker安装入门 -- 中间件镜像
Docker安装入门 -- 中间件镜像 php-fpm 1.docker build -t csphere/php-fpm:5.4 . //在当前目录下创建镜像 2.docker run -d - ...
- Docker新手入门:基本用法
Docker新手入门:基本用法 1.Docker简介 1.1 第一本Docker书 工作中不断碰到Docker,今天终于算是正式开始学习了.在挑选系统学习Docker以及虚拟化技术的书籍时还碰到了不少 ...
- Docker快速入门(二)
上篇文章<Docker快速入门(一)>介绍了docker的基本概念和image的相关操作,本篇将进一步介绍image,容器和Dockerfile. 1 image文件 (1)Docker ...
随机推荐
- 统计网卡流量的两段shell脚本(使用ifconfig)
一个很小巧的shell脚本,使用ifconfig的不间断输出来统计网卡的流量,有需要的朋友可以参考下 使用shell脚本计算Linux网卡流量,方法中最关键点: ifconfig $eth_name ...
- DMA(Data Migration Assistant)迁移SQLServer数据库
DMA适用于 本地SQLServer向Azure SQL Database迁移 两台不同的数据库服务器之间迁移 高版本->低版本 或 低版本->高版本 本文以两台不同服务器的低版本(SQL ...
- java多线程4:volatile关键字
上文说到了 synchronized,那么就不得不说下 volatile关键字了,它们两者经常协同处理多线程的安全问题. volatile保证可见性 那么volatile的作用是什么呢? 在jvm运行 ...
- SWPUCTF_2019_p1KkHeap(tcache_entry)
花了半天的时间去理解吃透这道题目,也参考了大佬的wp (1条消息) [pwn]SWPUCTF_2019_p1KkHeap_Nothing-CSDN博客. (1条消息) swpuctf2019 p1Kk ...
- java JDK8 时间处理
目录 时间格式化 LocalDate:年月日 LocalTime:时分秒毫秒 LocalDateTime:年月日时分秒 Instant:纳秒时间戳 Duration:两时间间隔 Duration:处理 ...
- 设置项目的日程排定方式(Project)
<Project2016 企业项目管理实践>张会斌 董方好 编著 [项目]>[属性]>[项目信息]>[日程排定方法]>选取: 默认项是[项目开始日期]. 这两位是干 ...
- Jaeger的客户端采样配置(Java版)
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- org.apache.jasper.runtime.ELContextImpl cannot be cast to org.apache.jasper.el.ELContextImpl
org.apache.jasper.runtime.ELContextImpl cannot be cast to org.apache.jasper.el.ELContextImpl错误怎么解决: ...
- 【C语言】Socket发送HTTP-TCP请求,数据有字符串插入
问题描述: 场景:编写Socket接口,向LOKI发送POST请求查询数据 BUG发现位置:通过cJSON读取时间戳,发现被截断. 现象:通过read()去读取返回的数据,数据行中被插入字符:如下 c ...
- ACwing1208. 翻硬币
题目: 小明正在玩一个"翻硬币"的游戏. 桌上放着排成一排的若干硬币.我们用 * 表示正面,用 o 表示反面(是小写字母,不是零). 比如,可能情形是:**oo***oooo 如果 ...