Docker 的使用场景

2022-05-02
2514

Docker

一、Docker的应用场景

1、Web 应用的自动化打包和发布。

2、自动化测试和持续集成、发布。

3、在服务型环境中部署和调整数据库或其他的后台应用。

4、从头编译或者扩展现有的 OpenShift 或 Cloud Foundry 平台来搭建自己的 PaaS 环境。

二、Docker 的优点

Docker 是一个用于开发,交付和运行应用程序的开放平台。Docker 使您能够将应用程序与基础架构分开,从而可以快速交付软件。借助 Docker,您可以与管理应用程序相同的方式来管理基础架构。通过利用 Docker 的方法来快速交付,测试和部署代码,您可以大大减少编写代码和在生产环境中运行代码之间的延迟。

三、Docker 架构

1、镜像(Image)和容器(Container)的关系,就像是面向对象程序设计中的类和实例一样,镜像是静态的定义,容器是镜像运行时的实体。容器可以被创建、启动、停止、删除、暂停等。

2、Docker 容器通过 Docker 镜像来创建。

3、容器与镜像的关系类似于面向对象编程中的对象与类。


四、CentOS Docker 安装

curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun


也可以使用国内 daocloud 一键安装命令:

curl -sSL https://get.daocloud.io/docker | sh


五、Docker 镜像加速

1、阿里云镜像获取地址:https://cr.console.aliyun.com/cn-hangzhou/instances/mirrors,登陆后,左侧菜单选中镜像加速器就可以看到你的专属地址了

2、配置

在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件):

{"registry-mirrors":["https://reg-mirror.qiniu.com/"]}


3、重新启动服务

sudo systemctl daemon-reload
sudo systemctl restart docker

六、测试打印


docker run ubuntu:15.10 /bin/echo "Hello world"


七、参数
1、运行交互式的容器
通过 docker 的两个参数 -i -t,让 docker 运行的容器实现"对话"的能力:

runoob@runoob:~$ docker run -i -t ubuntu:15.10 /bin/bash
root@0123ce188bd8:/#


参数解析:

-t: 在新容器内指定一个伪终端或终端。

-i: 允许你对容器内的标准输入 (STDIN) 进行交互。

注意:
第二行 root@0123ce188bd8:/#,此时我们已进入一个 ubuntu15.10 系统的容器

可以通过运行 exit 命令或者使用 CTRL+D 来退出容器

2、启动容器(后台模式)

runoob@runoob:~$ docker run -d ubuntu:15.10 /bin/sh -c "while true; do echo hello world; sleep 1; done"
2b1b7a428627c51ab8810d541d759f072b4fc75487eed05812646b8534a2fe63



八、docker的状态
状态有7种:

created(已创建)
restarting(重启中)
running 或 Up(运行中)
removing(迁移中)
paused(暂停)
exited(停止)
dead(死亡)