`
javashop
  • 浏览: 49904 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

构建电商系统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私服中可以看到相应的镜像

在这里插入图片描述

易族智汇(javashop)原创文章

 

分享到:
评论

相关推荐

    shopTNT电商系统-前端(PC端 商家PC端 管理端)-c语言

    shopTNT电商系统是一个采用Java Spring Boot框架构建的电商平台,支持B2B2C模式,即企业对企业,企业对消费者,消费者对消费者。该系统涵盖多个端口,包括PC端、移动端(H5、APP),并且特别强调了前端界面和商家...

    lilishop 商城 java商城-Java资源

    此外,了解各种电商模式并能够根据实际业务需求选择合适的模式,也是成功构建电商系统的关键。 lilishop商城作为一个Java商城资源项目,不仅提供了一个可供参考的电商系统实现框架,也展示了如何利用现代技术栈来...

    VueDjango_REST_framework生鲜电商项目_VfyQLyB1

    标题中的“VueDjango_REST_framework生鲜电商项目”指的是一个结合Vue.js、Django以及Django REST framework技术构建的在线生鲜电商平台。Vue.js是前端的JavaScript框架,用于构建用户界面;Django是Python的一个Web...

    移动电商弹性云架构设计V1.pptx

    移动电商架构设计主要关注如何构建一个能够应对高并发、快速扩展和高效运行的电商平台。该架构设计涵盖了APP端、服务端以及弹性云架构等多个层面。 首先,APP端采用了混合架构,这种架构允许开发者同时利用原生应用...

    lilishop 商城 java商城-C语言资源

    lilishop商城是一个覆盖多种电商模式的综合电子商务平台,它利用java和SpringBoot框架构建后端服务,并通过API接口与前端交互。系统使用了自动化部署和容器化技术以提升开发和运维的效率,同时包含了丰富的商城功能...

    前后端分离的微服务、高并发、高可用客户端秒杀系统和后台管理系统

    这类系统广泛应用于需要处理大量瞬时请求的场景,如电商平台上流行的限时抢购活动。项目的目标用户群体是大学生和自学者,同时也可以作为毕业设计或个人技术提升的实践项目。 具体的技术要点涵盖了Java编程语言、...

    poseidon项目是基于Java的商城项目,包括前台商城(),后台管理系统。系统采用SpringCloud+Spr.zip

    5. **Dockerfile**:如果项目使用Docker进行部署,那么可能会有Dockerfile,用于构建镜像和定义运行环境。 6. **构建脚本**:如Maven的pom.xml或Gradle的build.gradle,用于构建和打包项目。 通过这个项目,开发者...

    lilishop 商城 java商城-C++资源

    “pushGithub.sh”和“docker-image.sh”是脚本文件,分别用于自动化推送代码到Github和构建Docker镜像,表明开发者可能使用了版本控制系统和容器化技术来管理项目;“readme.txt”文件是标准的项目说明文件,通常...

    基于PHP与JavaScript的图片多点存储及可用性保障系统设计源码

    它可能实现了如负载均衡、数据镜像、故障自动转移等功能,这些功能都是为了确保系统在面对高并发请求时仍能保持稳定运行。同时,系统可能还具备了对存储节点的监控、故障检测以及自动修复机制,这些都是保障系统长期...

    gpmall商城 资源+一键部署脚本

    【gpmall商城资源+一键部署脚本】是针对电商领域的解决方案,主要涵盖了商城系统的基础构建、管理和运营所需的关键组件。这个压缩包包含了完整的gpmall商城系统资源以及一个便捷的一键部署脚本,旨在帮助用户快速...

    springboot项目本庄村果园预售系统的设计与实现boot.zip

    该系统通过Spring Boot构建,是一个典型的电商应用,面向的是销售水果等农产品的预售。系统的核心功能主要围绕商品展示、订单处理、库存管理以及用户交互等方面。它不仅需要保证交易过程的便捷与安全,还要确保数据...

    基于SpringCloudalibaba的oauth2分布式项目使用nacosgatewayspring securiE.zip

    最后,Dockerfile作为构建Docker镜像的配置文件,它的存在表明本项目还支持容器化部署。容器化技术可以帮助开发者打包应用及其运行环境为一个轻量级、可移植的容器,通过Docker可以快速地部署到不同的环境中,极大...

    lilishop 商城 java商城-c语言

    .gitignore文件用于指定git版本控制系统中应忽略的文件和目录,LICENSE文件包含项目的许可证信息,pushGithub.sh是一个shell脚本文件,可能用于自动化将代码推送到GitHub的操作,docker-image.sh同样是shell脚本,...

    阿里云Ecs入门使用

    为了确保用户能够顺利入门使用阿里云ECS,本文将详细介绍其使用方法,包括实例配置、操作系统更换、快照与镜像使用、磁盘扩容、配置升降、安全组操作等核心知识点。 首先,了解阿里云ECS的基本概念至关重要。ECS...

Global site tag (gtag.js) - Google Analytics