[备战RHCE] 初识容器docker

简介

docker是一种容器技术,解决软件跨环境问题

安装docker

[备战RHCE] 初识容器docker_第1张图片

我尝试了一下centos7可以不设置yum源直接安装docker

Docker架构

[备战RHCE] 初识容器docker_第2张图片

Daemon:Daemon是Docker的守护进程,Docker Client通过命令行与Docker Damon通信,完成Docker相关操作

Image 镜像  来源于软件仓库repository(docker官方提供/私有仓库)

Container 容器

Clients 客户端

Docker 镜像(Images)

Docker 镜像是用于创建 Docker 容器的模板,比如 Ubuntu 系统。

Docker 容器(Container)

容器是独立运行的一个或一组应用,是镜像运行时的实体。

Docker 客户端(Client)

Docker 客户端通过命令行或者其他工具使用 Docker SDK (Redirecting…) 与 Docker 的守护进程通信。

Docker 主机(Host)

一个物理或者虚拟的机器用于执行 Docker 守护进程和容器。

Docker Registry

Docker 仓库用来保存镜像,可以理解为代码控制中的代码仓库。

Docker Hub(https://hub.docker.com) 提供了庞大的镜像集合供使用。

一个 Docker Registry 中可以包含多个仓库(Repository);每个仓库可以包含多个标签(Tag);每个标签对应一个镜像。

通常,一个仓库会包含同一个软件不同版本的镜像,而标签就常用于对应该软件的各个版本。我们可以通过 <仓库名>:<标签> 的格式来指定具体是这个软件哪个版本的镜像。如果不给出标签,将以 latest 作为默认标签。

Docker Machine

Docker Machine是一个简化Docker安装的命令行工具,通过一个简单的命令行即可在相应的平台上安装Docker,比如VirtualBox、 Digital Ocean、Microsoft Azure。

 Docker容器初始化使用

 1.Linux 启动Docker服务相关命令

[备战RHCE] 初识容器docker_第3张图片

Docker镜像

镜像加速器

[备战RHCE] 初识容器docker_第4张图片

    docker的官方仓库:Docker Hub

[备战RHCE] 初识容器docker_第5张图片

Docker指令

[备战RHCE] 初识容器docker_第6张图片

[备战RHCE] 初识容器docker_第7张图片

创建自定义镜像

我们可以通过命令 docker commit 来创建

docker commit [选项] <容器ID或容器名> [<仓库名>[:<标签>]]

runoob@runoob:~$ docker commit -m="has update" -a="runoob" e218edb10161 runoob/ubuntu:v2
sha256:70bf1840fd7c0d2d8ef0a42a817eb29f854c1af8f7c59fc03ac7bdee9545aff8

各个参数说明:

  • -m: 提交的描述信息

  • -a: 指定镜像作者

  • e218edb10161:容器 ID

  • runoob/ubuntu:v2: 指定要创建的目标镜像名

数据卷

数据卷是宿主机中的一个目录或文件

当容器目录和数据卷目录绑定后,对方的修改会立即同步

[备战RHCE] 初识容器docker_第8张图片

[备战RHCE] 初识容器docker_第9张图片

容器中无法打开数据卷

1.在运行容器的时候,给容器加特权,及加上 --privileged=true 参数。使用该参数,容器内的root拥有真正的root权限.否则,容器内的root只是外部的一个普通用户权限

  $ docker run --name study_mysql --privileged=true -p 3306:3306  -v /data/mysql/datadir:/var/lib/mysql -v /data/mysql/conf.d:/etc/mysql/conf.d -e  MYSQL_ROOT_PASSWORD=123456 -d  mysql:latest

2.临时关闭SELinux:

setenforce 0

3.添加SELinux规则,改变要挂载的目录的安全性文本(这一个方法还未找到如何更改)

[备战RHCE] 初识容器docker_第10张图片

[备战RHCE] 初识容器docker_第11张图片

[备战RHCE] 初识容器docker_第12张图片

Docker应用部署

[备战RHCE] 初识容器docker_第13张图片

[备战RHCE] 初识容器docker_第14张图片

Tomcat

[备战RHCE] 初识容器docker_第15张图片

[备战RHCE] 初识容器docker_第16张图片

[备战RHCE] 初识容器docker_第17张图片

[备战RHCE] 初识容器docker_第18张图片

[备战RHCE] 初识容器docker_第19张图片

[备战RHCE] 初识容器docker_第20张图片

你可能感兴趣的:(docker,linux,运维)