云计算学习路线图素材课件:Docker容器应用场景分析

Docker容器是一个开源的应用容器引擎,它能够自动执行重复性任务,例如搭建和配置开发环境,用户可以方便地创建和使用容器,还可以进行版本管理、复制、分享、修改。有很多初学云计算的同学不清楚Docker容器的使用方法以及应用场景,接下来就给大家简单分享一下云计算学习路线图素材课件:Docker容器应用场景分析。

Docker是一个使用 Go 语言开发的,并且开源的应用容器引擎,基于LXC(Linux Container)内核虚拟化技术实现,提供一系列更强的功能,比如镜像、Dockerfile等;

Docker理念是将应用及依赖包打包到一个可移植的容器中,可发布到任意Linux发行版的Docker引擎上,使用沙箱机制运行程序,程序之间相互隔离;

Docker采用C/S架构,Dcoker daemon作为服务端接受来自客户端请求,并处理这些请求,比如创建、运行容器等;客户端为用户提供一系列指令与Docker Daemon交互;

Docker使用Google公司推出的Go语言进行开发实现,基于Linux内核的cgroup、namespace以及AUFS类的UnionFS等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术。目前Docker容器的应用场景包括以下几种:

Docker部署Mongodb环境

1、远程获取Mongodb镜像

docker pull mongo

2、创建一个docker容器

docker run -p 27017:27017 -v /data/db --name docker_mongodb -d mongo

在上面的命令中,几个命令参数的详细解释如下:

-p 指定容器的端口映射(特殊说明:前面的是本机端口,后面的是容器的端口,添加-p参数主动将容器内部端口给暴漏出来,将服务器的27017端口映射到容器的27017端口,这样在外网就可通过 服务器的27017端口访问到我们的服务,Mongodb默认端口为27017。

-v 为设置容器的挂载目录,这里是将即本机中的目录挂载到容器中的/data/db中,作为Mongodb的存储目录

--name 为设置该容器的名称

-d 设置容器以守护进程方式运行

3、测试连接容器中的Mongodb

Docker部署Node项目完整流程(DockerFile实践)

1、使用Koa2初始化一个Node项目,通过Mongose中间件连接Mogodb数据库,实现一个基础接口Mogodb插入数据。

2、在项目根目录下创建.dockerignore文件,把不需要打包进Docker Image里的文件进行过滤:

/usr/src/nodejs/dockerstudy/.dockerignore

.git

node_modules

3、在项目的根目录中创建Dockerfile文件,部署Node项目的时候,会有一个Dockerfile 文件配置。

/usr/src/nodejs/hello-docker/Dockerfile

FROM node:10.0

在容器中创建一个目录

RUN mkdir -p /usr/src/nodejs/

定位到容器的工作目录

WORKDIR /usr/src/nodejs/

RUN/COPY 是分层的,package.json 提前,只要没修改,就不会重新安装包

COPY package.json /usr/src/app/package.json

RUN cd /usr/src/app/

RUN npm i

把当前目录下的所有文件拷贝到 Image 的 /usr/src/nodejs/ 目录下

COPY . /usr/src/nodejs/

EXPOSE 3000

CMD npm start

4、代码环节暂且告一段落,将带有Dockerfile提交到github或gitlab等。

5、首先检出代码,把项目克隆到指定目录。

6、进入目录构建。

7、通过镜像dockerstudy创建一个容器并运行。

8、进入容器。

9、日志检查查看运行日志。

优雅部署方式 DockerCompose

Compose是Docker官方开源的一个项目,可以管理多个Docker容器组成一个应用,例如Web服务,除了服务本身还有数据库、Redis、Nginx等一系列相关联服务需要安装。有个Compose的支持,我们只需要定义一个YAML格式的配置文件(docker-compose.yml),来编写一个项目所需要的多个容器配置及调用关系,通过简单的命令即可同时开始或者关闭这些容器。Compose定位是定义和运行多个Docker容器的应用。

原文地址:https://blog.51cto.com/14679712/2469319

时间: 2024-10-06 23:17:51

云计算学习路线图素材课件:Docker容器应用场景分析的相关文章

云计算学习路线图素材课件,Linux中软件安装的方式

很多初学者感觉云计算就是一个听起来比较高大上的名词,每次想要了解它的时候都像是雾里看花,迷迷糊糊看不真切,至于它是干什么的就更不了解了,其实云计算学起来在IT行业中还是比较容易上手的,接下来我给大家分享Linux中软件安装的方式: 一.源代码形式 绝大多数开源软件都是直接以原码形式发布的,源代码一般会被打包成.tar.gz的归档压缩文件,需要编译成为二进制形式之后才能够运行使用. 源代码基本编译流程: 1).configure 检查编译环境,这里可以通过--prefix等命令配置安装路径(好像)

云计算学习路线图素材课件:DevOps和云计算之间的关系

大多数公司都知道,想要在这个瞬息万变的时代提升自己的竞争力,就不得不面临企业转型的局面,DevOps和云计算是被公认的两种转型途径.这两者之间看似没什么联系,但并不排斥,DevOps涉及到的是流程和流程的改进,而云计算则是涉及技术和服务的改进. 了解云计算和DevOps如何协同工作,是帮助企业实现转型的关键.不同的企业定义DevOps的方式不同.本文的目的不是讲述哪个定义是正确的或是错误的,而是将两者都呈现出来,以便关注云计算对DevOps的好处. 云计算是当前市场上的热门技术,也是未来互联网发

云计算学习路线图素材课件:云计算常用的开源工具

随着互联网的高速发展以及国家政策扶持,我国云计算行业发展迅猛,云计算人才也成为稀缺高薪人才.众所周知,云计算和开源是相爱相生的关系,借助开源社区的力量,云计算技术迅速占领市场,不过2020年常用的云计算开源工具有哪些呢? 1.Kubernetes 过去两年Kuberentes已成为火爆的开源项目之一,相信在未来Kuberentes的势头会更劲,其拥有大量的扩展工具,其优势在于: 1)通过基于角色的访问控制可以更好地支持企业部署: 2)将Kuberentes从单一用户操作系统转移到Unix: 3)

云计算学习路线图素材、课件,什么是云计算的核心技术基础?

云计算是一种基于互联网的计算方式,要实现云计算则需要一整套的技术架构去实施,包括网络.服务器.存储.虚拟化等等.云计算目前分为公有云和私有云.两者的区别只是提供的服务的对象不同,一个是企业内部使用,一个则是面向公众.目前企业中的私有云都是通过虚拟化来实现的,建议你可以了解一下虚拟化行业的前景和发展. 虚拟化目前分为服务器虚拟化(以VMware为代表).桌面虚拟化(思杰要比vmware的优势要大).应用虚拟化(以思杰为代表).学习虚拟化需要的基础: 操作系统,懂得Windows操作系统(Windo

云计算学习路线图素材、课件,msyql中CASE WHEN语法

在本篇文章中将给大家讲解下msyql中CASE WHEN语法: MySQL中case when语句,用于计算条件列表并返回多个可能表达式之一. CASE具有两种格式:简单CASE函数将某个表达式与一组简单表达式进行比较以确定结果.CASE搜索函数计算一组布尔表达式以确定结果.两种都支持可选的ELSE函数. 1)简单CASE函数语法如下: CASE input_expression WHEN when_expression THEN result_expression [...n ] [ ELSE

云计算学习路线图素材、课件,mysql中函数的用法

在本篇文章中将给大家讲解下mysql中函数的用法: 今天在处理工单的时候,其中的一个需求是某商品的发货时效(即下单时间和发货时间的时间差),接触到了TIMESTAMPDIFF函数 TIMESTAMPDIFF TIMERSTAMPDIFF语法: TIMERSTAMPDIFF(interval,datetime_expr1,datetime_expr2) 说明: 该函数是返回datetime_expr1和datetime_expr2之间的整数差,其中单位有interval参数决定,interval的

云计算学习路线图素材、课件,CASE的其他用法讲解

在本篇文章中将给大家讲解下CASE的其他用法讲解: 使用带有简单CASE函数和CASE搜索函数的select语句在select语句中,CASE搜索函数允许根据比较值 select CASE WHEN good_type<2 THEN '<2' WHEN good_type>=2 AND good_type<3 THEN '>=2 && <3' ELSE '>=3' END AS good_now_type, good_type,user_id,us

云计算视频教程:2020年云计算学习路线图

据统计,越来越多的企业正在使用云服务,云计算独特的优势,为企业节约了硬件软件成本,因此,企业对云计算人才的需求也不断增加.随着云计算的普及,越来越多IDC上的网站与应用开始向云上,那么同时对于我们这些IT从业者来说,也面临着加快学习云计算,不被新技术淘汰的挑战.那么该怎样更快的学好云计算,把握住云计算这股风口! 零基础新手要从何开始学习云计算呢? 学习思路: 学习前建议先了解: 什么是云计算 云计算对当前的商业模式有什么影响 云计算所涉及到的技术 云计算的现状 第一阶段:云计算基础,包含Linu

Dockers 快速学习(四)Docker 容器的使用

Docker 容器的使用 1.容器间的链接: 运行一个容器,给它一个名称,例如: docker run -d -p 0.0.0.0:4455:22 -p 0.0.0.0:8080:80 --name one centos6-ssh 再运行另一个容器 docker run -d -p 0.0.0.0:4456:22 -p 0.0.0.0:8088:80 --link /one:two centos6-ssh2 env 说明: /one:two one是第一个容器的名称,two是第二个容器的名称,