一个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

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

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;

            }

        }


    }

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

注意:根据自己的app包的大小在nginx中设置client_max_body_size的大小,不设置的话,上传会报错!!!

别忘了reload一下nginx。


4、创建用户

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




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


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



————————————————

版权声明:本文为CSDN博主「wc1695040842」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。

原文链接:https://blog.csdn.net/wc1695040842/article/details/104798837

留言

這個網誌中的熱門文章

DeepNude 2.0 – Deepnude AI算法一键脱衣,绿色破解版,免费下载

用数字货币洗钱,警察蜀黍就没招了吗?| 浅黑笔记

最简单的Trojan一键脚本,效率高/速度快/延迟低,支持tls1.3,系统要求>=Centos7