zoukankan      html  css  js  c++  java
  • 构建电商系统API镜像

    电商系统的API为什么要构建docker镜像

    因为传统部署电商系统存在不足之处,如果多处使用,就需要进行多次部署.

    所以我们考虑优化这一现象,决定采用docker轻量级容器虚拟化技术部署电商系统

     

    优点

    docker镜像可以将软件以及它运行安装所需的一切文件(代码、运行时、系统工具、系统库)打包到一起,成为一个软件开发的标准化单元。

    docker镜像可以做到"一次构建,到处运行",这就保证了不管是在什么样的运行环境,总是能以相同的方式运行。

     

    对于运维工程师而言,使用docker可以让你在秒级创建一个期望的目标软件或者集群.

    对于开发者而言,docker镜像机制可以帮你快速创建一个可用的开发环境,有docker镜像后,任何开发者都可以秒级创建开发环境.

     

    Javashop电商系统就提供了这一便利.

    Javashop的基础设施是基于docker运行的,API和UI也用到了docker镜像进行k8s集群部署.

     

    下面主要介绍一下Javashop电商系统API镜像制作

     

    配置私服

    一、首先要准备好您的docker私服

    我们使用阿里云的容器镜像服务(优点:速度快,免费)。

    1.进入阿里云控制台

    https://cr.console.aliyun.com

    2.设置仓库密码 点击右上角“设置Registry密码”

    3.创建镜像仓库 点击右上角“创建镜像仓库”

    创建命名空间,命名空间在全阿里云应该为唯一标识,建议格式为公司名称+仓库类型

    创建仓库,仓库名称一般为业务命名。比如buyer-pc、manager-seller

    选择代码源【一般选本地仓库】

    这样,我们的阿里云容器镜像服务仓库就创建好了。我们可以点击“管理”查看详细内容,里边也有一些基础的操作指南可供查阅。

    二、配置docker私服账号密码

    修改.m2/settings.xml文件,在servers节点加入一个server节点:

    <server>
          <!--随便起一个名字,pom中可以根据这个id找到这个server节点的配置-->  
          <id>docker-aliyun</id>
          <!--这里是在阿里云注册的账号-->
          <username>xxx@aliyun.com</username>
          <!--这里是在阿里云Registry密码,注意:不是阿里云控制台登录密码!!!-->
          <password>xxxxx</password>
          <configuration>
                <!--这是在阿里云注册时填写的邮箱-->
                <email>xxxx@aliyun.com</email>
          </configuration>
    </server>

    三、配置docke私服地址

    修改工程的/b2b2c/pom.xml文件

    <properties>
            <docker-registry>请填写您docker私服地址</docker-registry>
            <docker-server-id>docker-aliyun</docker-server-id>
    </properties>

    1、其中docker-registry填写您的docker私服地址

    注意请以"/"结尾,如果您使用的是阿里云的私服,格式示例如下:

    registry.cn-beijing.aliyuncs.com/javashop7-1/

    其中 javashop7-1 为阿里云中的命名空间

    2、其中 docker-aliyun 要和第二步的id保持一致

     

    build and push

    在构建镜像之前您需要对/config-server/src/main/resources/application.properties做出调整:

    server.port=8888
    spring.cloud.config.server.git.uri=https://git-url
    spring.cloud.config.server.git.username=your username
    spring.cloud.config.server.git.password=your password

    请修改为您相应的git信息

    其它工程/src/main/resources/bootstrap.yml 文件约定了配置中心的分支,默认为k8s,请根据您的实际情况调整他们:

    spring:
      application:
        name: xxxxx
      cloud:
        config:
          uri: http://config-service:8888
          profile: prod #请调整为您实际的运营环境
          label: k8s #请调整为您实际的分支

    其中的profile: prod默认约定了使用生产环境配置,也请根据您的实际情况调整他们

    注意,您如果需要调整bootstrap.yml,所有模块都需要对应修改.

     

    一切就绪,请在项目的根目录下执行下面的命令:

    mvn clean install docker:build  -DskipTests  -DpushImage

     

    待push完成,在您的docker私服中可以看到相应的镜像

  • 相关阅读:
    day 5
    Python学习(十三)—— 面向对象程序设计
    Python学习(十二)—— 常见模块
    Python学习(十一)—— 程序解耦、模块、包
    Python学习(十)—— 装饰器和函数闭包
    Python学习(八)——文件操作:读、写
    Python学习(七)——匿名函数、map函数、filter函数、reduce函数与其他内置函数
    Python学习(六)—— 函数、全局变量与局部变量
    Python学习(五)—— 集合和字符格式化
    Python学习(四)—— 列表和元组的类中方法
  • 原文地址:https://www.cnblogs.com/javashop-docs/p/13468131.html
Copyright © 2011-2022 走看看