一个app管理平台-app-host的搭建

一、有幸结缘

最近IOS的同事遇到一个烦恼:之前他们的测试包都是上传到蒲公英等开放平台进行下载的,但是现在好像要手拿身份证拍照进行身份的验证,于是IOS同事们就不乐意了,开始疯狂的diss:这要是拿着我的照片去网贷,那我不是惨了啊,…

于是就开始在github上查找开源的,用于发布测试版本的app的管理平台。在看了几个星星比较多的项目之后,觉得app-host这个项目很合我意。于是就克隆下来项目进行安装,原项目的地址为https://github.com/pluosi/app-host

为了防止版本的变化带来的安装步骤的改变,我这里直接fork了作者的项目到自己的github中,地址为https://github.com/wangchaoforever/app-host.git,我这里安装的时间为2020年3月10号。

二、安装步骤

其实安装的步骤,在作者的README中已经写的很详细了,安装有两种方法:
1)通过docker运行
2)通过源码运行

像我这样追求高大上(装B)的,当然是通过docker运行了。但是在安装运行的过程中,发现和作者README中的方法有些许的出入,所以在这里做一下记录。

1、安装docker

这个不多说了,详见Docker学习–安装Docker

2、克隆、修改配置文件、运行

在这里先做一下介绍,因为IOS安装需要的时候必须是https协议的,所以我就在我们的阿里云的测试环境中搭建这个平台,在安装好这个平台之后,前面再用一个nginx作为代理来实现ssl,很完美。

[root@test-1 ~]# cd /usr/local/src
[root@test-1 src]# git clone https://github.com/pluosi/app-host.git
[root@test-1 src]# cd app-host
[root@test-1 app-host]# cp config/settings.local.example.yml config/settings.local.yml

#修改 config/settings.local.yml 中 `PROTOCOL` 和 `HOST` ,因为是正式使用,所以这里设置成https协议的
PROTOCOL: "https://"
HOST: "appledown.xxxxxx.com"

#然后修改一下启动文件docker/launcher
local_port=13000   #我这里3000端口已经被占用了,所以改成13000
把第135行的docker run启动命令中-h $container_name去掉,不然启动会有问题

#根据模板进行引导容器,这个步骤依赖网络,需要花费点时间进行镜像的拉取,如果网络不稳定报错了,可以重试
[root@test-1 app-host]# ./docker/launcher bootstrap -v 
当最后出现`[2020-03-10 17:49:19] Image built.`说明安装成功了。

#启动
[root@test-1 app-host]# ./docker/launcher start

#用docker ps查看下
[root@test-1 app-host]# docker ps 
CONTAINER ID        IMAGE                         COMMAND                  CREATED             STATUS              PORTS                     NAMES
ad9580ae4a1f        local_pluosi/app_host:0.1.1   "/bin/sh -c '/bin/ba…"   11 seconds ago      Up 9 seconds        0.0.0.0:13000->8686/tcp   app_host
3、配置nginx

因为测试环境本来就有一个nginx在的,所以直接加一个vhost就行了

   server{
        listen 80; 
        server_name appledown.xxxxxx.com;
        rewrite ^(.*) https://$server_name$1 permanent;
    }  


    server {
        listen       443;
        server_name  appledown.xxxxxx.com;
        ssl on; 
        ssl_certificate   cert/appledown.xxxxxx.com.pem;
        ssl_certificate_key  cert/appledown.xxxxxx.com.key;
        ssl_session_timeout 5m; 
        ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4:!DH:!DHE;
        ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
        ssl_prefer_server_ciphers on; 

        client_max_body_size 100m;
        client_body_buffer_size 128k;
        proxy_connect_timeout 75;
        proxy_send_timeout 75;
        proxy_read_timeout 75;
        proxy_buffer_size 4k;
        proxy_buffers 4 32k;

        add_header 'Access-Control-Allow-Origin' '*';
        add_header 'Access-Control-Allow-Credentials' 'true';
        add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
        add_header 'Access-Control-Allow-Headers' 'DNT,X-CustomHeader,Keep-Alive,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type';


        location / {
            proxy_redirect    off;
            proxy_set_header  Host             $http_host;
            proxy_set_header  X-Real-IP        $remote_addr;
            proxy_set_header  X-Forwarded-For  $proxy_add_x_forwarded_for;
            proxy_set_header  X-Forwarded-Proto $scheme;
            proxy_set_header  X-Forwarded-Ssl on; # Optional
            proxy_set_header  X-Forwarded-Port $server_port;

            if (!-f $request_filename) {
                proxy_pass http://192.168.0.158:13000;
            }
        }

    }

注意:根据自己的app包的大小在nginx中设置client_max_body_size的大小,不设置的话,上传会报错!!!
别忘了reload一下nginx。

4、创建用户

搭建好之后,在浏览器中输入域名,就可以直接来到添加用户的页面。

在这里插入图片描述

输入邮箱和密码,就可以创建管理员了。

然后点击右上角的"管理"进行登录,登录之后,就是我们想要的管理页面了,开始放飞自我吧!

在这里插入图片描述

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
1 硬件需求 1.1 基本配置 配件 数量 CPU 2核 内存 4G 硬盘 100G 1.2 最低配置 配件 数量 CPU 2核 内存 2G 硬盘 10G 2 软件需求 名称 分类 版本 Windows 操作系统 2003及以上 jdk Java虚拟机 1.5.x及以上 Tomcat Web服务器 5.x及以上 Easy do it (轻松互联网开发平台,简称轻开平台,原名WebEasy) 应用开发服务器 2014及以上 Access 数据库 97及以上 EditPlus 开发工具 2.x及以上 3 软件安装 4 发布 4.1 下载 Easy do it,轻松互联网开发平台(简称轻开平台,原名WebEasy)下载地址: CSDN下载频道:http://download.csdn.net/detail/tx18/8711175 百度云盘:http://pan.baidu.com/s/1eQElpom 官网:http://edoit.htok.net/ 最新更新的下载包:http://download.csdn.net/user/tx18 4.2 发布 复制webeasy目录到D:\下,然后进入%TOMCAT_HOME%\conf目录,用文本编辑器(如:EditPlus)打开server.xml文件,在“Host”标签下添加一“Context”标签: 保存退出并启动tomcat 5 编辑工具 轻开平台可以用任何网页或文本编辑器进行开发,我本人一直在使用EditPlus,以下推荐常用的编辑软件: • EditPlus EditPlus 是一款功能强大的文字处理软件。它可以充分的替换记事本,它也提供网页作家及程序设计师许多强悍的功能。支持 HTML、CSS、PHP、ASP、Perl、C/C++、Java、JavaScript、VBScript 等多种语法的着色显示。程序内嵌网页浏览器,其它功能还包含 FTP 功能、HTML 编辑、URL 突显、自动完成、剪贴文本、行列选择、强大的搜索与替换、多重撤销/重做、拼写检查、自定义快捷键,等等... EditPlus中文版包含在下载包中 6 开发 6.1 第一个json 新建一个扩展名json的文件,如one.json(下图) 然后录入如下内容 {"item":{ 土豆 1.24 KG T恤 68 件 可乐 2.20 瓶 书 51.24 本 @{item:name} @{item:price} @{item:unit} },"sort":@{int:@{item:getSuffix}+1} } 6.2 针对移动App(json格式)的规则及开发例子 除了基本开发标签语言及表达式(参见同一下载包中的开发手册)外,轻开平台特别针对移动App最常用的json文本格式开发的对应规则:  文件扩展名须为json(如:one.json)或用JspEasy扩展  文件内容须为闭合的json格式,静态内容则可直接书写json格式,如: {“item”: { … … },”other”:”other value” }  value属性参数表示输出不带引号的值,如: @{item:price} 输出:"pri

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值