微服务----一次构建,到处运行

同时利用gitlab,Nexus,registry

思路:

windows:

  首先克隆一个gitlab仓库                                 git clone xxx

  将自己写好的代码(源码)push到仓库中                   git push xx

linux

  部署数据库:

    新的服务器

    利用docker-compose 部署独立的数据库

      一般会用独立的服务器专门装数据库。测试的话,可以直接重新启动一个docker容器也是可以的

  打包项目镜像到registry:

    新的服务器

    克隆gitlab代码

    打包代码  mvn  clean  package            (需要下载maven java(maven依赖java)) ,此时Nexus 和 本地的厂库同时下载了项目依赖的jar包

      如果后来代码有修改的地方,重新pull 在重新打包

    打包镜像,上传到 registry  

      利用Dockerfile创建镜像(myshop.tar.gz 就是将target中项目文件中META-INF,static,WEB-INF)

FROM tomcat
WORKDIR /usr/local/tomcat/webapps/ROOT
RUN rm -rf *
ADD myshop.tar.gz /usr/local/tomcat/webapps/ROOT
RUN rm -rf myshop.tar.gz
WORKDIR /usr/local/tomcat

    构建镜像:docker build -t  ip:端口/myshop     (私服的ip和端口,这就在push的时候不需要在tag标签了)

    docker push ip:端口/myshop                            (注意:ip:端口/myshop 是一起的,他们就是一个镜像名字)

  下载registry中项目镜像运行

    新的服务器

    注意如果没有配置registry客户端,先配置一下

    直接用docker-compose部署项目

version: '3'
services:
  myshop:
    restart: always
    image: ip:端口/myshop
    container_name: myshop
    ports:
      - 8080:8080

  

猜你喜欢

转载自www.cnblogs.com/yanxiaoge/p/11029603.html
今日推荐