应用内网发布 - App-Host 安装与使用指南
项目概述
App-Host 是一个轻量级的应用包托管网站,专门服务于企业内部的 iOS 和 Android 应用发布与测试。本项目类似 Fir.im,但允许用户自由地在内网部署,加强了项目安全性并支持自定义扩展。项目基于 MIT 许可证开源,提供了一个方便管理和分发应用包的解决方案。
1. 目录结构及介绍
以下是 App-Host 开源项目的目录概览及其简介:
- app: 应用的主要业务逻辑代码存放处。
- bin: 启动脚本和其他命令行工具。
- config: 配置文件所在位置,包括 Rails 的配置、路由设置等。
- db: 数据库迁移文件和相关数据库配置。
- docker: Docker 相关配置和脚本,用于容器化部署。
- lib: 自定义库和辅助函数。
- log: 运行日志存储目录。
- public: 静态资源文件,如图片、CSS 和 JavaScript 文件。
- screenshots: 可能包含的项目截图或示例图。
- test: 测试代码和数据。
- tmp: 临时文件存储。
- vendor: 第三方库或依赖。
- dockerignore, gitignore: 版本控制忽略文件。
- Gemfile, Gemfile.lock: Ruby 依赖声明及锁定文件。
- LICENSE: 许可证文件,说明项目遵循 MIT 协议。
- README.md: 项目介绍和快速入门指南。
- Rakefile: Rake任务定义文件,便于执行项目维护任务。
2. 项目的启动文件介绍
Docker方式启动
若采用 Docker 方式部署,核心的启动文件并不是直接可见的,而是通过 Dockerfile 和相关的启动脚本来完成。主要涉及到的启动流程由 /docker/launcher
下的脚本负责,特别是 bootstrap
和 start
命令。用户只需执行对应的 Docker 命令即可启动服务,例如:
docker run --name app_host -v ~/shared:/app/shared -p 3000:8686 -d tinyc/app-host:lastest
源码启动
对于源码部署,最重要的启动脚本是通过 Rails 服务器,通常使用 rails s
命令。首先确保已经正确设置了配置文件,并且 Ruby 环境以及必要的依赖已经安装完成。
3. 项目的配置文件介绍
-
config/secrets.yml: 包含了应用的关键秘密信息,如生产环境中的
secret_key_base
。在部署前需确保此文件被适当填充并保护好秘钥。 -
config/application.rb: 应用的基本配置,包括应用程序的名称、环境配置基础设置等。
-
config/environment.rb: 环境初始化文件,加载 Rails 环境和所有应用程序的配置。
-
config/environments/production.rb: 生产环境特定的配置,如缓存、数据库连接等。
在开始使用 App-Host 之前,请务必详细阅读 README.md
文件,它提供了从克隆源代码到运行项目的全面指导,包括数据库设置、权限管理、API使用等关键操作步骤。此外,对于内网部署,应特别关注 SSL 配置以支持 iOS 的 OTA 安装要求。