Docker极速入门

docker简述

  • 历史
    2010年源自一家做PAAS平台的公司dotCloud,后来在2013年该公司将其核心技术开源,也就是docker。

  • docker是什么?
    打开docker官网你就会看到关于docker的介绍:

    Docker is the software containerization platform.(Docker是软件容器化平台)

    它的愿景是 build、ship、 run anywhere。这里你可以把docker理解成集装箱的概念:

    • 镜像—》集装箱;仓库—》超级码头;容器—》运行程序的地方
    • 运输方式:任何一个程序先由docker运送到超级码头,然后再由超级码头送到目标系统运行。
      存储方式:不需要关心你的应用存储的位置,运行程序的时候你只需要运行docker命令。
      API接口:docker提供一系列的Restful接口
      隔离: 使用namespace 和 Cgroup技术进行隔离进程
  • docker能解决的问题

    • 环境依赖、版本不一致导致程序运行不了。
    • 资源隔离
    • 可复制、易扩展
  • 镜像
    采用Linux联合文件系统的存储技术可以把不同目录的文件挂载到同一个系统下。采用分层的技术,每一层的文件都是只读的。

  • 仓库
    public:

    • hub.docker.com
    • 国内镜像:
      c.163.com

    private:
    也可以自己搭建仓库

  • 容器
    容器的本质就是一个进程。

docker 和 VM 区别

在这里插入图片描述

安装

运行一个Hello-World

sudo vim /etc/docker/daemon.json
在这里插入图片描述
service docker restart
在这里插入图片描述
在这里插入图片描述

  • dockers images:查看本机的镜像
  • docker pull: 拉取镜像
  • docker run: 运行镜像

运行Nginx

  • 网易镜像仓库查看ngnix镜像,选择带有docker logo标志的官网镜像。在这里插入图片描述

    docker pull hub.c.163.com/library/nginx:latest 拉取镜像到本地
    docker images 发现在这里插入图片描述

  • 前台启动nginx,新开一个窗口docker ps下

在这里插入图片描述
在这里插入图片描述

  • 后台启动nginx -d,返回值为image ID
    在这里插入图片描述

进入容器内部

在这里插入图片描述
其中-t是让终端分配一个tty界面,我们一般使用-it命令进入docker内部。在这里插入图片描述

Docker运行Nginx

  • Docker的网络类型
    • Bridge:创建一个网桥veth,进行端口映射
    • Host :和主机共享同一个网卡
    • 在这里插入图片描述
  • 采用桥接模式运行docker
    • 先停止原来的运行的nginx:docker stop
      在这里插入图片描述
    • docker run运行参数
      在这里插入图片描述
      • -p: 发布容器端口和主机端口映射
      • -P:开发所有的端口到随机端口
    • 运行镜像: -p
      在这里插入图片描述
    • 查看结果:发现物理机的8080端口已经处于listen状态
      在这里插入图片描述
      • 在web页面查看在这里插入图片描述
      • 运行镜像: -P
        在这里插入图片描述
        - 如图,程序的80端口映射到主机的32768端口
        在这里插入图片描述

制作一个Java Web的镜像

  • 前期准备
    • Dockerfile

      Dockerfile就是告诉Docker制作镜像的具体步骤

    • docker build命令

      执行dockerfile里面描述的每个命令

    • 开源的javaweb应用:wordpress

      Jpress: http://jpress.io/ 进入github源码下载:https://github.com/JPressProjects/jpress/tree/0.3.0
      下载war包

  • 步骤
    • 下载tomcat到本地,作为基础镜像

      docker pull hub.c.163.com/library/tomcat:latestdocker
      在这里插入图片描述

    • 编写dockersfile
      在这里插入图片描述
    • docker build
      在这里插入图片描述
    • 查看镜像在这里插入图片描述
    • 运行容器
      在这里插入图片描述
    • 检查端口
      在这里插入图片描述
    • web查看服务
      在这里插入图片描述
      在这里插入图片描述
      提示我们还需要安装数据库,于是去docker官网下载mysql并运行起来在这里插入图片描述
      在这里插入图片描述
  • WEB配置查看结果
    在这里插入图片描述
    在这里插入图片描述
  • 重启web容器
    在这里插入图片描述
    在这里插入图片描述

问题收集

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
信息数据从传统到当代,是一直在变革当中,突如其来的互联网让传统的信息管理看到了革命性的曙光,因为传统信息管理从时效性,还是安全性,还是可操作性等各个方面来讲,遇到了互联网时代才发现能补上自古以来的短板,有效的提升管理的效率和业务水平。传统的管理模式,时间越久管理的内容越多,也需要更多的人来对数据进行整理,并且数据的汇总查询方面效率也是极其的低下,并且数据安全方面永远不会保证安全性能。结合数据内容管理的种种缺点,在互联网时代都可以得到有效的补充。结合先进的互联网技术,开发符合需求的软件,让数据内容管理不管是从录入的及时性,查看的及时性还是汇总分析的及时性,都能让正确率达到最高,管理更加的科学和便捷。本次开发的医院后台管理系统实现了病房管理、病例管理、处方管理、字典管理、公告信息管理、患者管理、药品管理、医生管理、预约医生管理、住院管理、管理员管理等功能。系统用到了关系型数据库中王者MySql作为系统的数据库,有效的对数据进行安全的存储,有效的备份,对数据可靠性方面得到了保证。并且程序也具备程序需求的所有功能,使得操作性还是安全性都大大提高,让医院后台管理系统更能从理念走到现实,确确实实的让人们提升信息处理效率。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值