zoukankan      html  css  js  c++  java
  • 基于Docker服务的java Web服务搭建

    导读最近想我们的应用需要更新维护,Android、IOS、还有服务器端都要更新,都在忙于写代码没有写文章了。我们的服务器是用java ssh架构的,到时也打算切换成Spring MVC+oauth2,今天有空,就把之前搞的搭建服务器环境的给大家看看,研究一下了。

    docker-java-web-00

    1、Docker是一个基于是基于应用层的一个服务软件,目前它是用于搭建服务器开发用的,学习androidIOS开发的用不上,当然不排除以后可以用在手机上,所以你要学习一下也没有问题。

    2、docker是一个软件,透过Docker,我们可以运行不同的容器环境,就是类似平时的虚拟机一样,如vmware、virtual box,这些虚拟机软件,可以在操作系统上安装,然后可以让我们搭建出不同的操作系统,那既然有了虚拟机软件,为什么要用docker呢?有很多原因,对于开发者而言,我们的答案基本是统一的,我可以在服务器快速搭建出生产环境,并且快速的复制到其他的服务器。下图是我把Docker的原理画了出来。

    3、Docker 是扩展了 Linux 容器(Linux Containers),而LXC提供了一套统一的API和工具来建立和管理container,这样Docker可以利用这些高级API提供了一个轻量级的虚拟环境。一个 Docker 容器并不是像虚拟机那样独立占用一个单独的操作系统,而是基于已有的基础设施中操作系统提供的功能来运行的,比如有100个容器,它们彼此之间是利用同一个操作系统的内核的;下面我们来介绍如何安装环境。
    001

    安装Docker

    根据我刚才分析的,其实就是安装软件。由于不同的操作系统可能会有点不一样,这个大家可以自行找一下资料,我这个是Ubuntu系统的,对了,还有注意是Linux操作系统要64位的而且还有要注意的是Docker需要在Linux Kernel 3.8及以上

    $ sudo apt-get update
    $ sudo apt-get install docker.io
    $ sudo ln -sf /usr/bin/docker.io /usr/local/bin/docker
    $ sudo sed -i '
    $acomplete -F _docker docker' /etc/bash_completion.d/docker.io
    Docker的一些指令
    查看版本信息
    docker version
    获取镜像
    docker pull ubuntu:latest
    查看本地镜像
    docker images
    查看镜像运行情况
    docker images ubuntu
    在容器下运行 shell bash
    docker run -i -t ubuntu /bin/bash
    停止容器
    docker stop
    下载镜像

    镜像我们可以到官网看看有哪些镜像

    https://hub.docker.com/explore/
    我这里以ubuntu为例:
    • pull代表下载,
    • ubuntu表示镜像,
    • ":latest"表示最后一个版本,其实就是最新的版本。
    docker pull ubuntu:latest

    不得不说,下载超级慢,有时可能也下载不了的,我也是折腾了一个下午才搞定的,解决办法可以通过建立私有库,docker registry具体网址:

    https://github.com/docker/docker-registry

    这里暂时就不作介绍了,大家可以自行研究;安装好后,输入:

    docker images

    就知道有没有下载到本地了,如下图
    002

    启动容器

    加入shell,输入如下命令

    docker run -i -t ubuntu:latest /bin/bash

    003
    这时看到控制台的已经换成容器的命令行了。这样我们就可以安装我们的环境了。

    docker ps –a               #列出所有的容器,包括已经退出的
    退出容器

    进入容器后,里面的操作都是新的操作,我们要退出直接输入 exit

    免费提供最新Linux技术教程书籍,为开源技术爱好者努力做得更多更好:https://www.linuxprobe.com/

  • 相关阅读:
    Python处理海量手机号码
    javascript面向对象
    NET实现的DDD、CQRS与微服务架构
    增加打赏功能
    开发测试时给 Kafka 发消息的 UI 发送器――Mikasa
    Computational Network Toolkit (CNTK) 是微软出品的开源深度学习工具包
    线程同步和多线程优先级
    linux sed命令详解(转)
    linux sort,uniq,cut,wc命令详解 (转)
    linux awk命令详解(转)
  • 原文地址:https://www.cnblogs.com/linuxprobe/p/5664160.html
Copyright © 2011-2022 走看看