admin管理员组

文章数量:1530061

一、有幸结缘

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

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

为了防止版本的变化带来的安装步骤的改变,我这里直接fork了作者的项目到自己的github中,地址为https://github/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/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"

#然后修改一下启动文件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;
        rewrite ^(.*) https://$server_name$1 permanent;
    }  


    server {
        listen       443;
        server_name  appledown.xxxxxx;
        ssl on; 
        ssl_certificate   cert/appledown.xxxxxx.pem;
        ssl_certificate_key  cert/appledown.xxxxxx.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、创建用户

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

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

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

本文标签: 管理平台appHost