docker 入门 (二)基本操作
这一篇讲docker的基本操作。
请自行安装docker到自己的电脑上。
镜像的获取
要获取镜像,最简单的当然是从仓库去获取,docker的官方网站很不好练,其他的可选项有docker中国官网,阿里镜像源等。
比如搜索一下ubuntu的镜像
$ sudo docker search ubuntu
NAME DESCRIPTION STARS OFFICIAL AUTOMATED
ubuntu Ubuntu is a Debian-based Linux operating sys… 9395 [OK]
dorowu/ubuntu-desktop-lxde-vnc Docker image to provide HTML5 VNC interface … 289 [OK]
rastasheep/ubuntu-sshd Dockerized SSH service, built on top of offi… 211 [OK]
consol/ubuntu-xfce-vnc Ubuntu container with "headless" VNC session… 169 [OK]
docker search这个命令是从远程仓库里面搜索包含关键字 ubuntu 的镜像。
结果中的NAME就是镜像的名字,DESCRIPTION是简单介绍,STARS是点赞的数量,OFFICIAL表明是否官方发布。
好了,接下来下载镜像
$ sudo docker pull ubuntu
Using default tag: latest
latest: Pulling from ubuntu
012a7829fd3f: Pull complete
41158247dd50: Pull complete
916b974d99af: Pull complete
a3ed95caeb02: Pull complete
4690e5728418: Pull complete
a2053833ec7f: Pull complete
1b700a1dac9a: Pull complete
77a6d79569f7: Waiting
9ed1cec5982d: Download complete
38b435f68399: Download complete
这里我们拉取consol/ubuntu-xfce-vnc这个镜像,这个名字就是刚才search搜索出来的。pull 这个命令有没有非常熟悉?
使用命令查看镜像
$ sudo docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu latest 94e814e2efa8 5 weeks ago 88.9MB
你会看到类似的界面,这就是所有你本地的镜像。
创建容器
接下来就开始创建容器吧,仅仅一个镜像是没什么用的,还记得之前说的,镜像只是一个只读文件吗?
$ sudo docker run -it -name test ubuntu /bin/bash
root@9bd0ee41adba:/#
这个命令用于创建容器
docker run 是创建容器的命令,-it是创建交互的通道,就是第二行显示的,可以对容器里面的bash进行操作,/bin/bash 是启动容器之后,容器运行的命令,命令运行完,容器就会退出,但bash是一直在运行的,所以除非显式关闭,容器,不然这个容器是不会自己退出的。
当然,你也可以试试这个
$ sudo docker run -it ubuntu echo "hello word"
hello word
这个就只打印一个输出,容器就退出了。
查看运行中的容器
$ sudo docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8f413e6bf249 ubuntu "/bin/bash" 57 seconds ago Up 54 seconds priceless_bell
这个就是刚才我们创建的容器了。
退出后的容器可以用这个命令查看
$ sudo docker container ls -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
8f413e6bf249 ubuntu "/bin/bash" 21 minutes ago Exited (0) 15 seconds ago priceless_bell
后记
至此,已经算是会用docker了,后续如果要继续钻研,那就老老要实实买本书去深入看看了。
docker 入门 (二)基本操作的更多相关文章
- docker入门(二)容器与镜像的理解
10张图带你深入理解Docker容器和镜像 申明:此篇文章是转载的(原文地址http://dockone.io/article/783),今天意外发现已经有人转载了(复制了),希望大家关注原创 原本打 ...
- docker入门(二)容器与镜像的关系
[编者的话]本文用图文并茂的方式介绍了容器.镜像的区别和Docker每个命令后面的技术细节,能够很好的帮助读者深入理解Docker. 这篇文章希望能够帮助读者深入理解Docker的命令,还有容器(co ...
- Docker入门二
容器管理 1.docker create创建一个容器,但容器并没启动,就和我们创建虚拟机一样,创建了虚拟机后没启动 [root@centos-02 ~]# docker create -it cent ...
- 【实战】Docker入门实践二:Docker服务基本操作 和 测试Hello World
操作环境 操作系统:CentOS7.2 内存:1GB CPU:2核 Docker服务常用命令 docker服务操作命令如下 service docker start #启动服务 service doc ...
- Docker入门教程(二)命令
Docker入门教程(二)命令 [编者的话]DockerOne组织翻译了Flux7的Docker入门教程,本文是系列入门教程的第二篇,介绍了Docker的基本命令以及命令的用法和功能. 在Docker ...
- 【转载】大白话Docker入门(二)
原文:https://yq.aliyun.com/articles/63517?spm=a2c4e.11153940.blogcont63035.15.12011c3fddklk0 上篇的大白话Doc ...
- 二、docker入门
docker入门 使用场景: 面向产品.面向开发.面向测试.面向运维.面向自动化.面向微服务.面向大规模的分布式架构(微信红包) 虚拟化解决方案: 商业解决方案: VMware vSphere,VMw ...
- Docker入门(二):安装/卸载
这个<Docker入门系列>文档,是根据Docker官网(https://docs.docker.com)的帮助文档大致翻译而成.主要是作为个人学习记录.有错误的地方,Robin欢迎大家指 ...
- 【实战】Docker 入门实战一:ubuntu 和 centos 安装Docker
Docker是什么 Docker 是一个开源的应用容器引擎,基于 Go 语言 并遵从Apache2.0协议开源.Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级.可移植的容器中,然后发布 ...
- 【Docker入门】
目录 Linux容器 Docker的优势 Docker三大概念 安装使用Docker 补充知识 [Docker入门] 发布文章 "qq_41964425" @ *** 所谓Dock ...
随机推荐
- 一、ionic 图片轮播问题
使用ion-slide可以实现图片轮播,但是如果在html中仅仅增加ion-slide是远远不够的,会出现两个问题:图片加载不出来和图片轮播至最后一个不轮播的问题 1.如何解决图片加载不出来的问题 i ...
- c#微信开发,使用JS-SDK自定义分享功能,分享朋友圈,分享给朋友等
如果一个后端开发掌握了微信开发,甚至有微信开发上线项目,这在换工作的时候 还是有竞争力的. 微信开发的资料很多,但是用asp.net c#进行微信开发好像比较少,或者资料不够完整. 使用JS-SDK自 ...
- Python学习---django知识补充之CBV
Django知识补充之CBV Django: url --> def函数 FBV[function based view] 用函数和URL进行匹配 url --> ...
- HAProxy负载均衡保持客户端和服务器Session亲缘性的3种方式
1 用户IP 识别 haroxy 将用户IP经过hash计算后 指定到固定的真实服务器上(类似于nginx 的IP hash 指令) 配置指令: balance source 配置实例: backe ...
- 89C51单片机的学习
好久都没来写一些东西了 最近老是忙着玩了,都忘记认真学习了. 大概从明天开始就要开始忙了. 1,英语四级 2,单片机课程 3,安卓课程 4,PS 感觉事情好多. 但是我还是心不在焉.好奇怪. 反正就是 ...
- Union Find
并查集 前言 来自知乎,Coursera 上普林斯顿大学的算法公开课,稍微来博客上写写记记. 课程资源:1. Algorithms, Part I 2. Algorithms, Part II 3. ...
- scala当中的文件操作和网络请求
1.读取文件当中每一行的数据 def main(args: Array[String]): Unit = { //注意文件的编码格式,如果编码格式不对,那么读取报错 val file: Buffere ...
- java二维数组定义初始化-杨辉三角
public class Array2Demo2_3 { public static void main(String[] args) { //定义初始化 int[][] arr = new int[ ...
- java基础易混点
1.进制转换由低到高:byte<short(char)<int<long<float<double 2.java八种基本数据类型(存在栈里): 整数类型 byte,s ...
- mac使用指南--软件安装部分
最近因为开发需要,换了个mac,发现和Windows下面的操作和习惯真是千差万别啊,在这里记录一下,有需要的也可以参考一下. 安装前强烈建议根据个人习惯设置好触控板!!!什么单击双击选中拖拽的统统设好 ...