返回顶部
首页 > 资讯 > 前端开发 > VUE >怎么使用docker部署rap2服务
  • 682
分享到

怎么使用docker部署rap2服务

2024-04-02 19:04:59 682人浏览 薄情痞子
摘要

本篇内容介绍了“怎么使用Docker部署rap2服务”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!什么是r

本篇内容介绍了“怎么使用Docker部署rap2服务”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

什么是rap2

先来说说起因,在上一个星期的分享会上,谈到前后端联调上,有同事提到了rap2,特意去了解了一下,觉得使用这个东西来进行前后端的接口联调来真是太方便了,对比我们之前公司内部开发api cloud来说,我更偏向使用rap2

rap通过gui工具帮助WEB工程师更高效的管理接口文档,同时通过分析接口结构自动生成mock数据、校验真实接口的正确性,使接口文档成为开发流程中的强依赖。有了结构化的api数据,rap可以做的更多,而我们可以避免更多重复劳动。

怎么使用docker部署rap2服务

上面是摘自https://GitHub.com/thx/rap淘宝阿里妈妈对rap1的描述,看了图一下子就能明白,后端制定api返回数据格式,前端通过接口地址在线mock,避免了前后端因为进度不一致而出现单方面等待的现象。

使用rap2

可以直接使用来生成在线的接口地址,通过申请一个账号后,即可在里面进行接口的编写、测试等等...这里不再赘述。

怎么使用docker部署rap2服务

部署自己的rap2服务

因为rap2在github上面已经开源,而且也提供了部署方案,这里讲一下自己是如何使用docker来进行部署的。

前提

  1. 安装docker

  2. 安装docker-compose

涉及到的两个开源仓库:

rap2-delos: 后端数据api服务器,基于koa + Mysql

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

或者使用本人的github仓库 rynxiao/rap2-docker,已经包含了这两个仓库,并加入了配置。

后端部署

在后端部署方面,在github上已经给出了使用docker的部署方面,因此,just follow就好。

> mkdir rap2
> cd rap2
> git clone Https://github.com/thx/rap2-delos.git
> cd rap2-delos
> docker-compose up -d

怎么使用docker部署rap2服务

运行成功后,需要手动初始化数据库,我们进入对象的容器来操作:

> docker exec -it rap2-delos sh
> node scripts/init
> exit

重新启动服务:

> docker-compose down
> docker-compose up -d

怎么使用docker部署rap2服务

可以看到暴露出来的端口是38080,我们使用curl命令来测试一下是否成功,如果放回hello rap!,就说明后端已经部署好了。

> curl localhost:38080

怎么使用docker部署rap2服务

前端部署

前端由于没有提供对应的docker部署方法,因此只有我自己来尝试部署了。前端使用的是node进行webpack打包,因此需要一个node的环境,所以我在制作容器的时候需要拉去一个node镜像。

因为部署前端之前没有看后端的部署,所以我前端拉取了一个比较新的版本[10.1.0],如果想和后端公用一个node镜像,可以使用这个node:8.11.1-alpine镜像。

通过npm run build之后,生成的build文件夹中的只是静态资源文件,因此我还需要起一个服务器,这里我通过全局安装http-server来启动一个服务。

下面是具体的过程:

1. git仓库拉取

> cd rap2
> git clone https://github.com/thx/rap2-dolores.git
> cd rap2-dolores

2. 创建一个dockerfile来构建一个新的node版本镜像

> touch dockerfile
> vim dockerfile

dockerfile中的内容为:

# 拉取10.1.0版本的node镜像
from node:10.1.0

# 维护人
maintainer ryn

# 创建工作目录
run mkdir -p /home/rap2-dolores
workdir /home/rap2-dolores

# 将代码拷贝至工作目录
copy . /home/rap2-dolores

# 全局安装http-server服务器
run npm install -g http-server

# 全局安装node-sass(一定要带--unsafe-perm,否则会报错)
run npm install --unsafe-perm -g node-sass

# 安装依赖
run npm install

# 打包
run npm run build

3. 使用docker-compose来启动服务

> touch docker-compose.yml
> vim docker-compose.yml

docker-compose.yml中的内容为:

version: '2.2'

services:
 delores:
  # 容器名称
  container_name: rap2-dolores
  
  # 通过dockerfile来构建本地镜像
  build: .
  
  # 通过images来构建,这里的地址暂不适用,因为src/config中的配置需要根据自己的服务器来动态构建
  # image rynxiao/rap2-dolores-nodejs
  
  # 指定工作目录
  working_dir: /home/rap2-dolores
  
  # 指定生产环境
  environment:
   - node_env=production
   
  # 启动http-server,并映射端口到容器内部8081上
  command: /bin/sh -c 'http-server ./build -s -p 8081'
  privileged: true
  
  # expose port 38081
  ports:
   - "38081:8081"

更改src/config/config.prod.js中的配置,将接口请求地址指向你的后端服务器,以下是我的配置,各位按需更改。

module.exports = {
 serve: 'http://xxx.xxx.xxx.xx:38080',
 keys: ['some secret hurr'],
 session: {
  key: 'koa:sess'
 }
}

注意上面的xxx.xxx.xxx.xxx是你公网的ip地址,如果你通过端口映射做了二级域名的配置,也可以去掉端口号,直接写你的二级域名就可以了,比如你的二级域名为:http://rap2.xxx.com,那么serve就可以配置为http://rap2.xxx.com

启动服务

> docker-compose up -d

这一步会执行镜像的构建,使用docker ps可以查看最新的构建镜像,使用docker-compose ps可以查看运行的容器

怎么使用docker部署rap2服务

至此,我们就可以使用http://{youdomain}:38081来访问rap2了。

怎么使用docker部署rap2服务

nginx做二级域名转换

你可能希望上使用http://rap2.{youdomain}.com来访问刚刚我们创建的rap2服务,这里我使用Nginx做地址转换,步骤如下:

腾讯云/万网中加一条a类记录

我使用的是腾讯云,阿里云的添加方法也大致类似,这里请大家自行谷歌。

怎么使用docker部署rap2服务

在nginx中增加一个server配置

> cd /usr/local/nginx-1.13.9/conf
> mkdir sites-enabled
> cd sites-enabled
> vim rap2.{youdomain}.com.conf

rap2.{youdomain}.com.conf中的内容如下:

server {
  listen 80;
  server_name rap2.{youdomain}.cn;
  access_log logs/rap2-site.log;

  location / {
   proxy_redirect off;
   proxy_set_header host $host;
   proxy_set_header x-real-ip $remote_addr;
   proxy_set_header x-forwarded-for $remote_addr;
   proxy_pass http://127.0.0.1:38081/;
  }
}

其实就是做了一个端口转换。接下来在nginx.conf中进行引入

# nginx.conf http模块
include /usr/local/nginx-1.13.9/conf/sites-enabled/*.conf;

# 重启nginx
nginx -s reload

然后我们就可以使用rap2.{youdomain}.com来访问rap2服务了

注:{youdomain}替换为自己的域名

“怎么使用docker部署rap2服务”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: 怎么使用docker部署rap2服务

本文链接: https://lsjlt.com/news/96389.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 怎么使用docker部署rap2服务
    本篇内容介绍了“怎么使用docker部署rap2服务”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!什么是r...
    99+
    2024-04-02
  • 怎么使用docker-compose来部署服务
    今天就跟大家聊聊有关怎么使用docker-compose来部署服务,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。使用docker-compose 大杀器来部署服务 先从 d...
    99+
    2023-06-19
  • 使用docker、docker-compose部署微服务
    使用docker、docker-compose部署微服务 一、使用docker部署1、准备2、上传jar包3、编写dockerfile文件3、构建镜像和容器 二、使用docker-compose部署1、准备服务的jar包和doc...
    99+
    2023-08-30
    docker 微服务 容器
  • 怎么使用docker部署hbase
    这篇文章将为大家详细讲解有关怎么使用docker部署hbase,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。安装docker先输入docker -v,装过就不用再装了。yum update&nb...
    99+
    2023-06-14
  • docker怎么部署微服务
    要部署微服务,可以使用Docker来创建和管理容器化的微服务。下面是一个基本的步骤: 编写Dockerfile:首先,你需要编写...
    99+
    2023-10-27
    docker 微服务
  • 怎么使用Docker-compose部署mysql
    这篇文章主要介绍了怎么使用Docker-compose部署mysql的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么使用Docker-compose部署mysql文章都会有所收获,下面我们一起来看看吧。一、D...
    99+
    2023-07-06
  • Docker中怎么部署并使用Go
    这篇文章主要讲解了“Docker中怎么部署并使用Go”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Docker中怎么部署并使用Go”吧!Go 是一个开源的编程语言,它能让构造简单、可靠且高效...
    99+
    2023-06-27
  • 怎么使用docker部署k8s项目
    要使用Docker部署Kubernetes项目,可以按照以下步骤进行操作:1. 安装Docker和Kubernetes:首先,确保已...
    99+
    2023-10-11
    docker k8s
  • 怎么使用docker部署react项目
    本教程操作环境:Windows10系统、react18.0.0版、Dell G3电脑。怎么使用docker部署react项目?手把手教你在docker部署react项目(docker中部署nginx)1、拉取nginx镜像docker pu...
    99+
    2023-05-14
    React Docker
  • 怎么使用docker部署前端应用
    这篇“怎么使用docker部署前端应用”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“怎么使...
    99+
    2024-04-02
  • docker部署java服务
    目的 在centos上安装mysql、jdk,之后完成java服务部署 2.通过docker进行部署,熟悉docker命令 3.打包发布到docker hub 系统安装 安装centos7系统,首先拉取镜像 docker pull ce...
    99+
    2023-08-21
    docker java 容器 mysql
  • docker怎么部署云服务器微服务
    要部署云服务器上的微服务,可以按照以下步骤进行:1. 安装Docker:首先,在云服务器上安装Docker,可以使用适合你的操作系统...
    99+
    2023-08-29
    云服务器 docker
  • 怎么使用Docker部署webssh工具sshwifty
    这篇文章主要讲解了“怎么使用Docker部署webssh工具sshwifty”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么使用Docker部署webssh工具sshwifty”吧!一、s...
    99+
    2023-07-05
  • Docker部署Minio (服务器上部署Minio)
    Minio简介: MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件...
    99+
    2023-08-18
    docker 服务器 容器 java
  • 使用Docker-compose部署mysql
    前言 虽然docker部署环境比自己下载安装包要方便不少,但是docker的命令还有挂载目录在每次启动容器的时候都去找命令对使用者是很不友好的,而且有时候要启动多个容器的时候显然一个个的启动是很麻烦的。所以如果可以事先将"启动脚本"写好的...
    99+
    2023-09-03
    docker mysql 容器 Powered by 金山文档
  • docker怎么部署nginx应用
    要部署Nginx应用,您可以使用Docker来进行部署。下面是一些步骤可以帮助您完成此过程:1. 首先,您需要安装Docker,可以...
    99+
    2023-10-20
    docker nginx
  • docker怎么部署django应用
    要部署Django应用程序,可以使用Docker进行容器化。下面是一些步骤:1. 创建Django项目:首先,在本地开发计算机上创建...
    99+
    2023-08-16
    docker django
  • docker怎么部署go应用
    要部署Go应用程序,您可以使用Docker来创建一个镜像并将其部署到容器中。下面是一个简单的步骤:1. 创建一个包含Go应用程序的目...
    99+
    2023-08-16
    docker go
  • docker怎么部署fastapi
    这篇文章主要介绍了docker怎么部署fastapi的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇docker怎么部署fastapi文章都会有所收获,下面我们一起来看看吧。项目结构:pycharm结构:拷贝到x...
    99+
    2023-07-05
  • golang怎么部署docker
    随着近年来容器化技术的火热,Docker也成为了越来越多开发者、运维人员、IT从业者等的必备工具。而Golang语言的高并发优势也让它成为了不少开发者使用的首选语言。那么,如何将Golang应用部署到Docker容器中呢?本文将为大家介绍g...
    99+
    2023-05-14
软考高级职称资格查询
推荐阅读
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作