• 14-12 猫眼后台Docker内容讲解


    下面就来构建环境,为了给大家节省时间,我这里这里已经把之前准备的内容都复制到这个目录下了。

    至于是怎么复制进来的呢?需要安装这个软件。这样你就可以往服务器做一些拷贝了。

    输入rz就可以选择本地的文件了。

    sz是拷贝一些东西到本地。

    只需要打个压缩包,然后在服务器解压缩就可以了。为了给大家节约时间,就不带着大家一点点去做了。




    简单的看一下dockerfile

    首先From centos,表示我们底层是centos

    这是作者信息

    紧接着使用的用户是我们的root

    紧接着创建了几个目录,env(环境需要的东西)、workspace(工作空间)、sbin(待执行的文件)

    通过命令把jdk的压缩包加压到我们创建的env/jdk目录下

    复制film_console下的文件都复制到workspace里面。



    把java_home加到path中

    最后执行sbin目录下的 entrypoint.sh

    所有的构建过程

    其实就是我把我所有的工程都拷贝到workspace目录下,

    然后安装了一个jdk


    启动都是entrypoint里。我们来看下entrypoint



    首先我们申明了一个变量

    因为我们这次jar包的名字都相对比较复杂。所以这里我们声明了6个变量。这6个变量就是我们jar包的名字。


    然后就是分别进入相应的目录下,把jar包跑起来。

    jar包跑起来。

    最后有个for循环作为我们的主进程,防止我们的docker退出

    构建镜像

    打一个1.0的版本,最后一个空格+点。让它在当前目录下去选择我们的dockerfile

    当然这个镜像很大,只要包含了jdk。包含了centos,基本上就是600M起步了。我们这个镜像大概有900M左右。

    提前已经执行过一次了。它已经提前把我们的centos下载好了。因为贷款只有1m。网路差的时候下载centos差不多就7个小时。
    如果失败就不断重试,一般早上和中午的网速会好一点。


    这是我们之前就下载好的centos

    这是我们构建的film-console

    在我们的工程里是有一些环境变量的

    所以我们这次的dokcer启动和往常的docker启动有一点点差异
    为了方便大家记忆,这里给大家写了一个start.sh



    mysql的host、port、username、password还有数据库的名称,把这几项定义为我们的环境变量。因为我们两套工程用的是同一个库。所以这里它只需要声明一次就可以 了。 

    这个是我们控制台镜像的名字

    版本号统一用1.0


    重点是这块的启动命令

    暴露出来的名字就是上面定义的CONSOLE_NAME

    --net=host就想单于我们之前写的 -p不过它相当于给我们写了多个,如果我们有多个export的话,它就会一起给我们映射出来。当然我们这里只有8080.所以这里它也值映射出8080.

    --restart=always就是当容器如果挂掉了怎么办,它这里就是重启。

    -e的参数代表我要在dokcer镜像里面,去输出我们的环境变量。

    这个环境变量前面就是名字,后面就是值

    这里的环境变量其实就是我们上面声明的

    最终我们要启动CONSOLE_NAME VERSION 替换出来就是film-console:1.0 就是要启动这样一个镜像。这个start目前就写了一个就是要给大家好好讲一下。后面在部署其他三个的时候,就把剩下是3个的启动命令放在这。到时候大家基本就能看懂我这里在做什么事情了。 

    执行start


    这样我们的镜像就启动成功了




    6个服务就都启动了。

    退出

    测试业务

    把之前用户登陆的信息复制了一份

    改成阿里云的服务器地址

    这是延迟初始化的时候,超过了hystrix的超时时间。往往第一次懒加载的时候就会这样。

    我们再执行一次就好了


    链接数据库

    之前写过一个测试方法,用来初始化用户

    改一下我们的数据库配置文件。代码链接远程的数据库

    执行测试方法



    再次访问






    结束

  • 相关阅读:
    许家骏
    平均得分 【杭州电-HDOJ-2023】 附加题+详细说明
    百度之星的第二个问题
    kendo ui 单击取消编辑数据grid减少的原因和治疗方法的数据
    2013年第36周准备考下半年的项目管理师
    2013年第36周三杂记
    2013第36周二小结
    2013第36周星期一
    2013年9月1日下午
    2013年8月最后一天晚上
  • 原文地址:https://www.cnblogs.com/wangjunwei/p/12892263.html
Copyright © 2020-2023  润新知