开发者社区> 最美的回忆> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

运行第一个Docker容器-Docker for Web Developers(1)

简介:
+关注继续查看

1. Docker介绍

  1. Docker由dotCloud公司发起的一个内部项目,后来Docker火了,dotCloud公司改名为Docker了;
  2. Docker使用了Go语言开发,基于 Linux 内核的 cgroup,namespace,以及 AUFS 类的 Union FS 等技术,对进程进行封装隔离,属于操作系统层面的虚拟化技术;
  3. Docker vs VM如下图所示:
    Docker VS VM

2. Docker的安装

Docker现在区分Community Edition,简称:CE版本;Enterprise Edition,简称:EE。两个版本,一个免费,一个付费。所以我们安装的是的CE版本。安装步骤在官方完成有详细的的说明,这里略过。

我在DO上的服务器操作系统版本是:Ubuntu 14.04 LTS。安装官方文档,能顺利安装成功。

Docker CE for Ubuntu

3. Docker架构

Docker架构图

4. 运行第一个容器

运行容器可以通过两种方式:

4.1 通过Dockerfile构建一个镜像,上传到Docker Hub上,然后在host主机上pull这个镜像,运行一个容器

4.2 通过docker pull从Docker Registry上获取一个镜像,然后通过这个镜像运行容易。

本文主要说明第一种情况,流程如下图所示:
Run Docker Workflow

步骤1

本地机器上新建一个文件夹,创建一个Dockefile文件,创建一个dist目录。dist放置了一个简单的hml页面,页面加载了2个图片,也就是我们前端的代码。

Dockefile文件内容如下:

FROM nginx:1.11.5
ADD dist/ /usr/share/nginx/html

告诉Docker引擎下载Nginx 1.11.5版本的镜像,然后复制dist文件夹内容到
/usr/share/nginx/html目录中。

执行生成镜像命令:

docker build -t bage88/docker-demo:0.0.1 -f Dockerfile .

bage88/docker-demo:我再Docker Hub创建的repository的名称,必须一致,才能保证后面能正确将本地的镜像推动的Docker Hub仓库中。

Docker Hub仓库名称

0.0.1:镜像的版本号。

步骤2

将生成好的镜像推送到Docker Hub仓库中。命令如下:

docker push bage88/docker-demo:0.0.1

步骤3

需要从Dock Hub获取镜像,默认未修改仓库地址,默认都是从Docker Hub上获取镜像。现在我们来获取刚推送到Docker Hub上的镜像。命令如下:

docker pull bage88/docker-demo:0.0.1

步骤4

最后一步也是最简单的一步,根据镜像运行容易。

docker run -d -p 80:80  bage88/docker-demo:0.0.1

在浏览器中访问地址:http://138.68.40.38/,可以看到下面的界面,表面当前的容器运行成功了。

第一个容器运行结果

参考资料

  1. Docker —— 从入门到实践
  2. Docker架构详解
  3. Docker官网
本文转自快乐八哥博客园博客,原文链接http://www.cnblogs.com/liminjun88/p/run-first-docker-container.html如需转载请自行联系原作者

快乐八哥

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
Web 应用程序,python判断文件是否存在,不存在则创建,如何将飞桨中的代码在pycharm中运行
Web 应用程序,python判断文件是否存在,不存在则创建,如何将飞桨中的代码在pycharm中运行
0 0
数据预处理-系统监控web界面-系统运行情况数据来源|学习笔记
快速学习数据预处理-系统监控web界面-系统运行情况数据来源
0 0
web运行原理与操作系统 | 学习笔记1
web运行原理与操作系统理论的讲解
0 0
.NET Web应用配置本地IIS(实现Visual Studio离线运行与调试
.NET Web应用配置本地IIS(实现Visual Studio离线运行与调试
0 0
Web入门开发【七】- 运行原理
欢迎来到霍大侠的小院,我们来学习Web入门开发的系列课程。首先我们来了解下这个课程能学到什么? 1、你将可以掌握Web网站的开发全过程。 2、了解基础的HTML,CSS,JavaScript语言。 3、开发自己的第一个网站。 4、认识很多对编程感兴趣的朋友,一起学习交流。
0 0
【云原生 | 23】Docker运行Web服务实战之Tomcat
Tomcat是由Apache软件基金会下属的Jakarta项目开发的一个Servlet容器,按照Sun Microsystems提供的技术规范,实现了对Servlet和Java Server Page(JSP)的支持。同时,它提供了作为Web服务器的一些特有功能,如Tomcat管理和控制平台、安全域管理和Tomcat阀等。由于Tomcat本身也内含了一个HTTP服务器,也可以当作一个单独的Web服务器来使用
0 0
【云原生 | 22】Docker运行Web服务实战之Nginx
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是内存利用率高,并发能力强。
0 0
【云原生 | 21】Docker运行Web服务实战之Apache
Apache是一个高稳定性的、商业级别的开源Web服务器。目前Apache已经是世界使用排名第一的Web服务器软件。由于其良好的跨平台和安全性,Apache被广泛应用在多种平台和操作系统上。作为Apache软件基金会支持的项目,它的开发者社区完善而高效。自1995年发布至今,一直以高标准进行维护与开发。Apache名称源自美国的西南部一个印第安人部落:阿帕奇族,它支持类UNIX和Windows系统.........
0 0
【零基础学Python】后端开发篇 第二十一节--Python Web开发二:Django的安装和运行
【零基础学Python】后端开发篇 第二十一节--Python Web开发二:Django的安装和运行
0 0
VsCode 运行Java Web 项目(Tomcat)
使用VsCode 运行Java Web 项目(Tomcat)
0 0
文章
问答
文章排行榜
最热
最新
相关电子书
更多
边缘安全,让Web加速有保障
立即下载
使用CNFS搭建弹性Web服务
立即下载
WEB框架0day漏洞的发掘及分析经验分享
立即下载