美文网首页软件工程师成长日记springboot
我是这样使用SpringBoot(安装docker)

我是这样使用SpringBoot(安装docker)

作者: 碧波之心 | 来源:发表于2019-02-26 18:21 被阅读271次

    目录

    安装docker

    这里是windows8.1的操作系统,相对与window10、Linux等系统中安装会稍复杂些。

    docker是什么

    docker是什么,专业的回答在百科上有,我就不复制了。我的理解是,docker是一个工具或者称为服务,它可以管理多个的系统镜像,还有一个称为容器的东东,把镜像取过来放到容器中运行。这里的系统镜像实际上linux系统的简化版,把系统体积压缩到很小。后续根据需求,在这个系统中安装上需要的程序,做成一个新的镜像,可以在新的镜像中安装程序打成新的镜像。这样一层层的镜像打包,保存,就会有很多的镜像。放到仓库里,按需获取安装使用。
    spring boot的系列中为什么用到docker呢?spring boot开发完成,打包后是一个.jar文件(还有其它的使用方法,我基本上都是打jar文件,运行这个jar文件启动项目)。本身就可以是一个可执行文件,运行也是很方便的。如果配合docker后,就可以更容易组建微服务。用java为基础镜像做镜像。把一个个服务打包成一个个镜像。测试、发布都可以用同一个镜像去执行,这样使环境统一,也方便发布。再配合其它docker工具,使得多个服务组成的系统更容易维护。

    下载docker

    windows中安装docker,是下载安装Docker Toolbox。如果是windows10,可以到docker官网下载。这里是windows8.1,下载地址http://mirrors.aliyun.com/docker-toolbox/windows/docker-toolbox/

    下载列表

    安装docker

    下载后双击安装,我的系统中已经安装过docker-toolbox,可能安装界面上有些小区别。


    开始安装
    安装目录
    选择安装程序

    其实windows中使用docker,是安装VirtualBox虚拟机,在虚拟机安装一个linux系统,在linux中运行docker服务,windows中的磁盘映射到虚拟机中。实际上docker还是安装在linux中。


    下一步
    创建桌面图标与环境变量
    安装配置
    点击“install”开始安装。
    安装中
    安装完成

    注意,安装完成后最好重启下系统。否则可能会因为环境变量没生效使得有些命令无效。

    使用

    图标

    安装完成后,桌面上有三个图标。
    查看下环境变量


    系统界面
    高级系统配置
    环境变量
    PATH
    PATH值

    可以看到,安装包配置了一些环境变量。
    现在来看下虚拟机的情况


    图标
    双击打开VirtualBox
    虚拟机
    一个没有系统的虚拟机
    图标
    运行DockerQuickstart
    运行中
    首次运行时间会比较长,需要下载boot2docker.iso。
    下载boot2docker.iso完成后,会在虚拟机中安装一个名为default的Linux系统。
    安装虚拟机后
    启动完成

    启动完成后进入docker界面。从这里可以看到default系统的ip为192.168.99.100
    这里留意一点,192.168.99.100这台机子是可以访问本机(virtualBox的宿主机)的局域网的。比如,本机IP为192.168.1.101,局域网中有台机子是192.168.1.102 在102机子中安装一个数据库,101能访问这个数据库,那么192.168.99.100也是可以访问102的数据库的。
    这里,windows8.1中的docker已经安装完成了。可以验证一下


    验证docker

    SSH远程192.168.99.100

    既然default是一台Linux系统机子,那么就应该可以用SSH远程访问。是可以的,我这里用的XShell


    属性配置

    添加一个连接,端口号是22 用户名:docker,密码:tcuser


    成功连接
    成功连接到default主机。

    体验镜像

    我们安装一个tomcat镜像试试看。
    用search命令看看有没有tomcat镜像


    查找镜像

    发现有tomcat镜像,用pull命令将tomcat镜像拉取下来。


    拉取中
    完成后用docker images命令查看本地镜像
    查看
    使用tomcat镜像创建容器并运行。
    docker run -idt -p 8080:8080 --name tomcat tomcat
    
    运行容器

    查看运行中的容器


    查看容器

    查看页面,注意,这里要用192.168.99.100访问,而不是本机地址。


    tomcat界面
    访问到界面,说明tomcat启动成功
    由于tomcat运行在容器中,那么页面文件怎么处理呢?这里为了讲文件挂载,所以这里采用本地文件挂载到容器的方法。
    首先挂载一个本地文件夹到default虚拟机中的一个目录。

    打开VirtualBox管理器,default右键->设置


    添加一个共享文件夹
    属性
    重启default系统,本地F:\ebertemp\demo文件夹的更改就会反映到虚拟机/Demo目录中
    查看运行中的容器
    docker ps
    
    查看运行中的容器

    如果tomcat容器正在执行(列表中看到容器),先停止容器

    docker stop tomcat
    

    删除前面创建的tomcat容器

    docker rm tomcat
    

    在F:\ebertemp\demo\tomcat\test中创建一个html文件


    html文件

    内容如下

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <HTML>
    <HEAD>
        <TITLE>test</TITLE>
        <META http-equiv=Content-Type content="text/html">
    </HEAD>
    <BODY>
        <P>test docker</P>
    </BODY>
    </HTML>
    

    将/Demo/tomcat/test目录挂载到容器/usr/local/tomcat/webapps/test目录中,即将本地F:\ebertemp\demo\tomcat\test目录挂载到容器tomcat界面目录/usr/local/tomcat/webapps/test中。运行如下命令

    docker run -idt -p 8080:8080 -v /Demo/tomcat/test:/usr/local/tomcat/webapps/test --name tomcat tomcat
    

    访问test项目,结果是本地文件。


    访问目录

    注册国内仓库

    拉取docker官方的库有点慢,可以注册一个国内仓库来增加拉取镜像速度。这里以阿里云的加速地址为例
    https://brelgdhp.mirror.aliyuncs.com
    用SSH连接到default

    远程连接
    cd /var/lib/boot2docker
    sudo vi profile
    修改代码如下
    EXTRA_ARGS='
    --registry-mirror=https://brelgdhp.mirror.aliyuncs.com #这里是注册国内仓库
    --label provider=virtualbox
    
    '
    CACERT=/var/lib/boot2docker/ca.pem
    DOCKER_HOST='-H tcp://0.0.0.0:2376'
    DOCKER_STORAGE=overlay2
    DOCKER_TLS=auto
    SERVERKEY=/var/lib/boot2docker/server-key.pem
    SERVERCERT=/var/lib/boot2docker/server.pem
    
    配置

    --insecure-registry docker.biboheart.com 这个后面会讲到
    保存后,重启default主机生效。可以到VirtualBox界面重启,也可以用docker-machine重启

    docker-machine restart default
    

    执行这个命令的时候,也可以看看VirtualBox变化。


    重启

    这样就已经完成国内仓库的注册

    相关文章

      网友评论

        本文标题:我是这样使用SpringBoot(安装docker)

        本文链接:https://www.haomeiwen.com/subject/wrsayqtx.html