docker基础学习(一)


操作演示:
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基础学习(一)的更多相关文章
- 【补充】docker基础学习
docker 基础知识 之前写了一篇docker未授权访问的文章,现在来补充一下docker基础知识,以便更好的学习docker上的漏洞. docker是一款轻量级的虚拟化的产品,它属于层级化的架构. ...
- Docker 基础学习(一)
Docker官网:https://docker.com/ 中文翻译非常好的学习地址:http://dockerpool.com/static/books/docker_practice/index.h ...
- [Docker] docker 基础学习笔记3(共6篇)
首先我们安装好了ssh server之后, 我们需要将这个容器commit,然后启动这个被commit的image. 启动方式: docker run -d -p 2222:22 /usr/sbin/ ...
- [Docker] docker 基础学习笔记2(共6篇)
febootstrap 是一个自制image的一个第三方的工具,好像他们现在都要用这个. 安装还是挺方便的. yum -y install febootstrap febootstrap -i ...
- Docker基础学习相关网址
中文学习地址:https://yeasy.gitbooks.io/docker_practice/content/ 官网介绍地址:https://www.docker.com 官网学习地址:https ...
- [Docker] docker 基础学习笔记6(共6篇)
这个迁移指的是docker整个系统的迁移,而不是说images存储位置迁移 docker info 查看docker的各项配置 首先做文件的迁移 使用rsync软件将docker的文件夹整体迁移到 ...
- [Docker] docker 基础学习笔记5(共6篇)
docker 配置文件的位置: centos : /etc/sysconfig/docker ubuntu: /etc/default/docker 现在比如我自己电脑上已经装好了docker,但 ...
- [Docker] docker 基础学习笔记1(共6篇)
巩固一下yum: yum本身是centos自带的软件,可以删掉然后再重新安装. yum本身可以配置yum源,网络的,本地的都可以.之后安装docker需要配置一个扩展源. 从163的网址里边下载好 ...
- docker基础学习
docker的定义: Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.容器是完全使用沙箱机 ...
随机推荐
- 解读经典《C#高级编程》第七版 Page45-50.核心C#.Chapter2
前言 本篇讲述枚举和名称空间. 01 枚举 首先需要明确枚举的概念:枚举是用户定义的整数类型.使用枚举的目标是,使用一组容易记忆的名称,来使得代码更容易编写和维护. 我们对比枚举的定义和类的定义,会发 ...
- tiny210 tslib 测试(基于 ft5x06 触摸屏),解决触摸无效问题
1. 拷贝至开发板 将上次实验中的 tmp 文件夹拷贝到开发板,可以通过 nfs 来传输,并将 tmp/lib 下的所有 .so 文件拷贝至 开发板的 /usr/lib 中,并且确保库的映射关系正确. ...
- R语言实战(二)——数据分析基础知识
一.R中数据结构 1.数据集 通常是由数据构成的一个矩形数组,行 表示 观测(记录.示例),列 表示 变量(字段.属性) 2.R中的数据结构 3.向量 c()可以用来创建向量 > a <- ...
- ife2018 零基础学院 day 3
ife2018 零基础学院 第三天:让简历有点色彩 什么是CSS,CSS是如何工作的! 摘自CSS如何工作 什么是CSS CSS是一种用于向用户指定文档如何呈现的语言 - 它们如何被指定样式.布局等. ...
- PHP开发中bcscale timezone charset的设定
关于php的开发,有几个细节设定,需要知悉下:在项目的init.php 或 index.php 或 api.php 1. bcscale(18); 表示bc函数,默认小数点位数. 没有设定的话,默认为 ...
- 8. 同步锁Lock
package com.gf.demo07; import java.util.concurrent.locks.Lock; import java.util.concurrent.locks.Ree ...
- JavaScript机器学习之KNN算法
译者按: 机器学习原来很简单啊,不妨动手试试! 原文: Machine Learning with JavaScript : Part 2 译者: Fundebug 为了保证可读性,本文采用意译而非直 ...
- Linux上Simplescalar/ARM的安装和运行文档
本文是基于ARM的simplescalar在ubuntu下的安装说明 1.1 软件下载 *********************文件下载地址:http://yunpan.cn/cw2n7dAyfG ...
- blfs(systemd版本)学习笔记-构建gnome桌面系统后的配置及安装的应用
我的邮箱地址:zytrenren@163.com欢迎大家交流学习纠错! 一.构建安装ibus-libpinyin的笔记地址:https://www.cnblogs.com/renren-study-n ...
- Openlayer3之C++接口在javaScript的封装使用
0.写在前面: 1)涉及的关键词定义: 传入:JavaScript向CAPI传值 传出:CAPI向JavaScript传值 2)关于类和结构体的封装,需要严格执行内存对齐,以防止读取越界,但是避免不了 ...