1,关于RAP2

昨天研究了下 rap 发现是个和swagger的类似的api 管理工具。

界面感觉上很老,使用的是java开发的,还是使用Struts2 +hibernate 开发的。

https://blog.csdn.net/freewebsys/article/details/80271649

今天研究了下 rap2 ,并且最近也在研究 nodejs,发现这个使用的全是 node开发的。

再加上docker是非常的方便。决定使用docker进行基础的镜像构建。

rap2 是两个部分开发的,前后端分离:

rap2-delos: 后端数据API服务器,基于Koa + MySQL + Redis

rap2-dolores: 前端静态资源,基于React

需要编译两个镜像,一起启动才行。使用node写了一个后端,和一个前段。

rap2 没有官方的镜像。还需要自己打个镜像。

2,基础服务mariadb和redis

docker run -itd --name mariadb -v `pwd`/mysql:/var/lib/mysql \

-e MYSQL_ROOT_PASSWORD=mariadb -p 3306:3306 mariadb:latest

docker run -itd --name redis -p 6379:6379 redis:latest

数据使用mariadb,然后把数据放在当前位置创建个 mysql 文件夹里面。

重新命名了下,一个叫mariadb ,一个叫 redis

然后创建数据:

docker exec mariadb mysql -uroot -pmariadb -e 'CREATE DATABASE IF NOT EXISTS RAP2_DELOS_APP DEFAULT CHARSET utf8 COLLATE utf8_general_ci' #查看是否创建了库。 docker exec mariadb mysql -uroot -pmariadb -e 'show databases' Database RAP2_DELOS_APP information_schema mysql performance_schema

3,编译rap2-delos服务端

Dockerfile-delos:

FROM node:alpine

RUN echo -e "http://mirrors.aliyun.com/alpine/latest-stable/main\n\ http://mirrors.aliyun.com/alpine/latest-stable/community" > /etc/apk/repositories

#set timezone

RUN apk update && apk add tzdata && \

ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \

echo "Asia/Shanghai" > /etc/timezone && \

rm -rf /root/.cache

RUN npm install -g cnpm --registry=https://registry.npm.taobao.org && \

apk update && apk add curl git

RUN mkdir /app && cd /app && \

git clone https://github.com/thx/rap2-delos.git && cd /app/rap2-delos && \

cnpm install && sed -i "s/localhost/mariadb/g" src/config/config.dev.ts && \

sed -i "s/password: ''/password: 'mariadb'/g" src/config/config.dev.ts && \

sed -i "s/redis: {/redis: {host: 'redis'/g" src/config/config.dev.ts && \

cnpm run build

WORKDIR /app/rap2-delos

ENTRYPOINT ["cnpm","run","dev"]

最后在用 cnpm 启动。

编译&启动,使用 –link 链接了,mariadb数据库,redis。rap2-delos

这个服务需要这两个。

docker build -f ./Dockerfile-delos -t rap2-delos:node-alpine .

docker run --rm -itd --name delos --link mariadb:mariadb \

--link redis:redis -p 8080:8080 rap2-delos:node-alpine

#创建数据库,之后初始化数据,再修改admin密码:

docker exec delos cnpm run create-db

docker exec -it mariadb mysql -uroot -pmariadb --databases RAP2_DELOS_APP

然后执行更新 admin密码:

MariaDB [RAP2_DELOS_APP]> UPDATE `RAP2_DELOS_APP`.`Users` SET `password`='14e1b600b1fd579f47433b88e8d85291' WHERE `id`='100000000';

4,编译rap2-dolores服务端

再编译前端界面,使用 react 做的。

Dockerfile-dolores:

FROM node:alpine

RUN echo -e "http://mirrors.aliyun.com/alpine/latest-stable/main\n\ http://mirrors.aliyun.com/alpine/latest-stable/community" > /etc/apk/repositories

#set timezone

RUN apk update && apk add tzdata && \

ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \

echo "Asia/Shanghai" > /etc/timezone && \

rm -rf /root/.cache

RUN npm install -g cnpm --registry=https://registry.npm.taobao.org && \

apk update && apk add curl git python make g++

RUN mkdir /app && cd /app && \

git clone https://github.com/thx/rap2-dolores && cd /app/rap2-dolores && \

sed -i "s/rap2api\.taobao\.org/localhost:8080/g" src/config/config.prod.js && \

cnpm install && cnpm rebuild node-sass && cnpm run build && \

cnpm install -g serve

WORKDIR /app/rap2-dolores

ENTRYPOINT ["serve","-s","build"]

进行编译和启动:

docker build -f ./Dockerfile-dolores -t rap2-dolores:node-alpine .

docker run --rm -itd -p 5000:5000 rap2-dolores:node-alpine

一共需要 4 个镜像才可以启动:

5,登录系统

登录系统之后,还是好看的,使用react还是很好看的。

比之前的java版本好看的不是一点点,而且界面可以操作,修改功能还很多。

很好用,很方便。界面也很好看。

http://localhost:5000/

邮箱: admin@rap2.com

密码:123456

必须修改mysql数据库,之后才能登录。

6,总结

rap2 界面功能和 rap1 差不多,可以直接使用2了。无非就是node安装大家不熟悉。

现在使用docker 大大的简化了这个构建流程。可以启动了。

再修改下数据库,admin密码就可以登录了。

使用还是非常方便的。接下来研究上面的使用方法。

docke 安装rap_RAP2:使用docker镜像进行构建,启动部署相关推荐

  1. 基于领域知识的Docker镜像自动构建方法

    点击上方蓝字关注我们 基于领域知识的Docker镜像自动构建方法 陈伟1,2, 叶宏杰1,2, 周家宏1,2, 魏峻1,2 1 中国科学院大学,北京 100190 2 中国科学院软件研究所,北京 10 ...

  2. docker镜像的构建及Dockerfile的详解应用,镜像加速器,镜像优化

    docker镜像的构建及dockerfile的祥解应用 1.镜像的构建 1.1创建一个Dockerfile 1.2构建镜像 1.3查看镜像的分层结构 1.4镜像的缓存特性 2.Dockerfile详解 ...

  3. jar构建docker镜像_dockerfile构建docker镜像详细说明,主要是springboot的jar包构建镜像样例...

    dockerfile构建docker镜像详细说明,主要是springboot的jar包构建镜像样例 1.镜像构建命令:docker build 图解 启动命令:(注意最后面有一个点,不要忘记) doc ...

  4. Windows7上安装TensorFlow——基于Docker镜像

    Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化.当你通过 Docker 安装和运行 Ten ...

  5. linux docker安装svn,使用docker镜像搭建svn+Apache环境

    环境准备 虚拟机装好之后,按照官网步骤检查虚拟机内核版本,必须在3.10以上版本,故此处安装redhat_7.2 # uname -r 3.10.0-327.el7.x86_64 安装docker: ...

  6. docker 的安装以及简单centos镜像制作、启动

    1.安装docker [root@iZ2ze82p1dogve7neb5tuoZ ~]# yum install docker 2.查看 docker 是否成功 [root@iZ2ze82p1dogv ...

  7. 2022树莓派安装网心云docker镜像

    网心云docker镜像来自官方 docker run -d --name=wxedge --restart=always --privileged=true --net=host --tmpfs /r ...

  8. 【cuckoo】Ubuntu安装布谷鸟沙箱docker镜像

    0. 布谷鸟沙箱介绍 布谷鸟沙箱是一款自动化恶意软件分析工具.可以分析许多恶意文件,包括可执行文件.pdf文档.邮件.恶意网站等. 1.安装过程 1.1 下载cuckoo2.0 docker镜像 do ...

  9. 分布式事务seate-server的docker镜像的制作与部署

    Seata 是一款开源的分布式事务解决方案,致力于提供高性能与简单易用的分布式事务服务,为用户提供了 AT.TCC.SAGA 和 XA 几种不同的事务模式.在 Seata 中主要有以下三种角色,其中 ...

  10. docker镜像编译与docker-compose部署与编排

    概念理解 虚拟机与docker.虚拟机用的是虚拟化的cpu,效率只有50%~60%.docker用的是物理cpu,效率趋近90% ~ 100%.docker进程隔离. docker的命令很多,都记住不 ...

最新文章

  1. qt vs 不出来dos窗口_VS嵌入QT后,建立QT工程后printf和cout无效,无法产生控制台应用程序窗口,需设置工程属性...
  2. centos 安装 erlang
  3. 看完就能知道渗透测试的技术结构
  4. 腾讯 tars java_腾讯 Tars 基础框架手动搭建——填掉官方 Guide 的坑
  5. Nginx的rewrite之break指令
  6. php: eclipse 编辑 php
  7. cocos2dx中使用iconv转码(win32,iOS,Android)
  8. 24小时删!看完这17个超牛逼大数据视频让你妥妥进大厂!(限时领)
  9. php是什么电荷,科学网—蛋白质的表面静电势、ζ-电位和表面电荷 - 朱俊向的博文...
  10. 回帖整理和其他一些想法
  11. PHP在Linux上上传文件的注意事项
  12. Xcode常用技巧(1)-使用Xcode进行代码分析及GDB调试
  13. 步进电机的正反向旋转c语言编程,实现步进电机自动正反转程序怎么写
  14. imdisk虚拟光驱安装linux,imdisk使用教程_Imdisk工具使用方法介绍_imdisk_imdisk虚拟光驱...
  15. 台达plc接线图实物_台达PLC dvp-14es 外部电路怎么接线
  16. 打印没反应/打印耗时长/not accessible
  17. ubuntu 替换清华源遇到的问题-不能更新,无法拉取 https 源解决
  18. 洛谷 P1378 油滴扩展
  19. 2022CPA财务与成本管理-管理会计专题【完结】
  20. 一篇文章带你发中文核心期刊《计算机科学》

热门文章

  1. 【DBSDFZOJ 4370】小宁的机器人(模拟)
  2. bvlc_googlenet.caffemodel模型及描述文件地址
  3. web项目js调用斑马打印机打印二维码
  4. 《数据库与信息管理课程设计》
  5. 不懂这些法律问题,你的创业融资很危险
  6. I. 知识图谱 应用案例
  7. InvalidArgumentError (see above for traceback): Number of ways to split should evenly divide the spl
  8. python误差修正模型_误差修正模型ECM_eviews误差修正模型
  9. VirtualBox:在linux宿主机和windows虚机间设置共享目录
  10. k均值的损失函数_常用的损失函数