操作演示:

1、查看一个容器的版本

[root@ELK-chaofeng08 ~]# docker version
Client:
Version: 18.09.
API version: 1.39
Go version: go1.10.8
Git commit: 774a1f4
Built: Thu Feb ::
OS/Arch: linux/amd64
Experimental: false Server: Docker Engine - Community
Engine:
Version: 18.09.
API version: 1.39 (minimum version 1.12)
Go version: go1.10.8
Git commit: 774a1f4
Built: Thu Feb ::
OS/Arch: linux/amd64
Experimental: false
[root@ELK-chaofeng08 ~]# docker -v
Docker version 18.09., build 774a1f4

2、查找指定的镜像

3、查看已安装的镜像

[root@ELK-chaofeng08 ~]# docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
redis 4.0-alpine 83944736833a weeks ago .5MB
busybox latest d8233ab899d4 weeks ago .2MB
nginx 1.14-alpine 66952fd0a8ef weeks ago 16MB

4、从hub.docker.com网站拉取镜像

[root@ELK-chaofeng08 ~]# docker image pull nginx:1.14-alpine

5、拉取busybox

[root@ELK-chaofeng08 ~]# docker image pull busybox
Using default tag: latest
latest: Pulling from library/busybox
Digest: sha256:061ca9704a714ee3e8b80523ec720c64f6209ad3f97c0ff7cb9ec7d19f15149f
Status: Image is up to date for busybox:latest

6、删除一个镜像

[root@ELK-chaofeng08 ~]# docker rmi busybox
Untagged: busybox:latest
Untagged: busybox@sha256:061ca9704a714ee3e8b80523ec720c64f6209ad3f97c0ff7cb9ec7d19f15149f
Deleted: sha256:d8233ab899d419c58cf3634c0df54ff5d8acc28f8173f09c21df4a07229e1205
Deleted: sha256:adab5d09ba79ecf30d3a5af58394b23a447eda7ffffe16c500ddc5ccb4c0222f

7、查看已安装镜像的完整的IMAGE ID

[root@ELK-chaofeng08 ~]# docker image ls --no-trunc
REPOSITORY TAG IMAGE ID CREATED SIZE
redis 4.0-alpine sha256:83944736833a71a490d842a93ec192d78fbe61063ca8b38d5a2b786f477f20ca weeks ago .5MB
nginx 1.14-alpine sha256:66952fd0a8efa0598626fad89d3a0827bc24fc92c3adb576adbc9fd58606e1af weeks ago 16MB

8、查看容器中运行了哪些服务(包含启动和停止的)

[root@ELK-chaofeng08 ~]# docker container ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
fdbb9c2cc7c8 redis:4.0-alpine "docker-entrypoint.s…" minutes ago Up minutes /tcp redis1
77f4d1bb8da9 nginx:1.14-alpine "nginx -g 'daemon of…" minutes ago Up minutes /tcp web1

还要关注STATUS的这个值,这个值显示为Up,表示服务处于启动状态。默认情况下不能看到停止状态的容器,所以需要加上-a参数,即“docker ps -a”来查看STATUS这个值为Exit,表示为关闭状态。

9、启动一个容器

一个容器中只能运行一个镜像,但是可以运行多个容器。

[root@ELK-chaofeng08 ~]# docker container run --name redis2 -d redis:4.0-alpine
68d5b4f366afe5e731112dfb809c8669dd186dbbd6259b59056811345ab1cc4c

在docker run这个过程中,首先是去拉去本地的redis:4.0-alpine这个镜像image,我们刚刚是已经从互联网上拉取过并放在了本地,因此可以直接启动。但是如果docker没有找到本地的镜像image,则会去互联网上下载,然后再运行。其中--name是指定容器的名字,-d是指定运行的镜像,在运行容器之前还有创建容器这个过程。这就是他们启动的过程

10、查看此时运行的容器

[root@ELK-chaofeng08 ~]# docker container ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
68d5b4f366af redis:4.0-alpine "docker-entrypoint.s…" minutes ago Up minutes /tcp redis2
77f4d1bb8da9 nginx:1.14-alpine "nginx -g 'daemon of…" minutes ago Up minutes /tcp web1

11、查看已运行的容器的详细信息

[root@ELK-chaofeng08 ~]# docker inspect redis2

12、交互式向容器发送指令

[root@ELK-chaofeng08 ~]# docker exec -it redis2 /bin/ls /etc
TZ init.d network securetty
alpine-release inittab opt services
apk issue os-release shadow

-i表示交互式输入指令。

-t表示分配一个伪终端。

13、查看容器的日志

[root@ELK-chaofeng08 ~]# docker logs web1
172.17.0.1 - - [/Mar/::: +] "GET / HTTP/1.1" "-" "curl/7.29.0" "-"

此容器中运行了一个web服务器,我们可以查看日志

镜像的介绍:

也就是说一个镜像可以有多个tag,但是一个tag只能对应一个镜像。

14、删除镜像

如果要删除镜像,此镜像必须是停止状态,然后需要先删除容器,再删除镜像,如下所示:

[root@ELK-chaofeng08 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
db8c95fc5ba8 chen/busybox/httpd:v0. "httpd -f -h /data/h…" minutes ago Up minutes jolly_poitras
[root@ELK-chaofeng08 ~]# docker stop db8c95fc5ba8
db8c95fc5ba8

删除容器

[root@ELK-chaofeng08 ~]# docker container ls -a
CONTAINER ID IMAGE COMMAND CREATED STATUS
db8c95fc5ba8 chen/busybox/httpd:v0. "httpd -f -h /data/h…" minutes ago Exited () minutes ago
9fdca18c27b4 chen/busybox/httpd:v0. "httpd -f -h /data/h…" minutes ago Exited () minutes ago
68d5b4f366af redis:4.0-alpine "docker-entrypoint.s…" hours ago Exited () About an hour
fdbb9c2cc7c8 redis:4.0-alpine "docker-entrypoint.s…" hours ago Exited () hours ago
77f4d1bb8da9 nginx:1.14-alpine "nginx -g 'daemon of…" hours ago Exited () About an hour
[root@ELK-chaofeng08 ~]# docker container rm 9fdca18c27b4
9fdca18c27b4
[root@ELK-chaofeng08 ~]# docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
chen/busybox/httpd v0. 2a906703e3da minutes ago .2MB
chen/busybox/httpd v0. b17250b566ae minutes ago .2MB
redis 4.0-alpine 83944736833a weeks ago .5MB
busybox latest d8233ab899d4 weeks ago .2MB
nginx 1.14-alpine 66952fd0a8ef weeks ago 16MB
quay.io/coreos/flannel v0.10.0-amd64 f0fad859c909 months ago .6MB
[root@ELK-chaofeng08 ~]# docker image rm b17250b566ae
Untagged: chen/busybox/httpd:v0.
Deleted: sha256:b17250b566aeeaa99a1e0850717d56b018d846cf6f27253a72ced90eb60912c3
Deleted: sha256:2b0eba4397e6216f884be40579b35e0e950211bf8a751552f889a6a3200b5ed4
[root@ELK-chaofeng08 ~]# docker image ls
REPOSITORY TAG IMAGE ID CREATED SIZE
chen/busybox/httpd v0. 2a906703e3da minutes ago .2MB
redis 4.0-alpine 83944736833a weeks ago .5MB
busybox latest d8233ab899d4 weeks ago .2MB
nginx 1.14-alpine 66952fd0a8ef weeks ago 16MB
quay.io/coreos/flannel v0.10.0-amd64 f0fad859c909 months ago .6MB

删除镜像成功。

docker基础学习(一)的更多相关文章

  1. 【补充】docker基础学习

    docker 基础知识 之前写了一篇docker未授权访问的文章,现在来补充一下docker基础知识,以便更好的学习docker上的漏洞. docker是一款轻量级的虚拟化的产品,它属于层级化的架构. ...

  2. Docker 基础学习(一)

    Docker官网:https://docker.com/ 中文翻译非常好的学习地址:http://dockerpool.com/static/books/docker_practice/index.h ...

  3. [Docker] docker 基础学习笔记3(共6篇)

    首先我们安装好了ssh server之后, 我们需要将这个容器commit,然后启动这个被commit的image. 启动方式: docker run -d -p 2222:22 /usr/sbin/ ...

  4. [Docker] docker 基础学习笔记2(共6篇)

    febootstrap 是一个自制image的一个第三方的工具,好像他们现在都要用这个.   安装还是挺方便的. yum -y install febootstrap   febootstrap -i ...

  5. Docker基础学习相关网址

    中文学习地址:https://yeasy.gitbooks.io/docker_practice/content/ 官网介绍地址:https://www.docker.com 官网学习地址:https ...

  6. [Docker] docker 基础学习笔记6(共6篇)

    这个迁移指的是docker整个系统的迁移,而不是说images存储位置迁移 docker info 查看docker的各项配置   首先做文件的迁移 使用rsync软件将docker的文件夹整体迁移到 ...

  7. [Docker] docker 基础学习笔记5(共6篇)

    docker 配置文件的位置: centos : /etc/sysconfig/docker ubuntu: /etc/default/docker   现在比如我自己电脑上已经装好了docker,但 ...

  8. [Docker] docker 基础学习笔记1(共6篇)

    巩固一下yum: yum本身是centos自带的软件,可以删掉然后再重新安装. yum本身可以配置yum源,网络的,本地的都可以.之后安装docker需要配置一个扩展源.   从163的网址里边下载好 ...

  9. docker基础学习

    docker的定义: Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机 ...

随机推荐

  1. centos7安装遇到的坑

    1.安装中遇到what is the location of the gcc program on your machine 直接输入 no.意思就是跳过gcc的安装了.但是系统虽然安装了vmware ...

  2. python json模块出现Invalid control character这个异常的原因

    今天在查看日志的时候,发现一个问题,觉得很奇怪,跑了一个多月的代码突然报错了,还是个没见过的错误. 所以今晚抽空记录下. 一.重现错误 说好的传过来的数据是json格式的呢?怎么会突然报错了呢? 二. ...

  3. Nacos系列:Nacos的三种部署模式

    三种部署模式 Nacos支持三种部署模式 1.单机模式:可用于测试和单机使用,生产环境切忌使用单机模式(满足不了高可用) 2.集群模式:可用于生产环境,确保高可用 3.多集群模式:可用于多数据中心场景 ...

  4. python模块之xml

    xml模块 xml结构 xml是种实现不同语言或程序之间进行数据交换的协议,跟json差不多,但没json使用简单.但是因为历史遗留问题,至今很多行业依然使用xml这种数据格式. xml的格式如下,是 ...

  5. [PHP]算法-跳台阶问题的PHP实现

    一只青蛙一次可以跳上1级台阶,也可以跳上2级.求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果). 思路: 1.找规律 f(1)=1 f(2)=2 f(3)=3 f(4)=5 f( ...

  6. [android] listview入门

    Listview组件非常重要,4分之一的时间都是在搞这个,还是通过上一节的数据库,写个for循环,插入50条数据. 先使用笨方法显示数据,根布局LinearLayout 定义一个id,在activit ...

  7. 新浪IP库地址

    新浪IP库地址 http://int.dpool.sina.com.cn/iplookup/iplookup.php

  8. 51单片机定时器实现LED闪烁

    要启用一个定时器,先要开启定时器,然后产生中断 系统中断: 初始化程序应完成如下工作: 对TMOD赋值,以确定T0和T1的工作方式. 计算初值,并将其写入TH0.TL0或TH1.TL1. 中断方式时, ...

  9. Bootstrap 按钮颜色

    上述按钮CSS规则 .btn { display: inline-block; padding: 6px 12px; margin-bottom: 0; font-size: 14px; font-w ...

  10. 前端常见算法的JS实现

    1.冒泡排序 function bubbleSort(arr){ var i = 0, j = 0; for(i=1; i<arr.length; i++){ for(j=0; j<=ar ...