ipa-server 已经更新到 v2, 使用 golang 重构, 老版本 v1
使用浏览器上传和部署 苹果 .ipa 和 安卓 .apk 文件
https://ipasd.herokuapp.com/
- 自动识别包内信息
- 自动读取图标
- 支持解析
ipa文件Assets.car内图标 - 开箱即用
- 可完全免费一键部署,使用
Heroku作为 runtime,阿里OSS做存储器,他们都提供免费的 HTTPS 访问 - 支持生成文件完全存储在外部存储,目前支持
S3七牛对象存储阿里云OSS - 单二进制文件包含所有运行所需
| Home | Detail |
|---|---|
![]() |
![]() |
# clone
git clone https://github.com/iineva/ipa-server
# build and start
cd ipa-server
docker-compose up -d
# 启动后在浏览器打开 http://localhost:9008- PUBLIC_URL: 本服务的公网 URL, 如果为空试用 Heroku 默认的
$DOMAIN - REMOTE: option, 远程存储配置,
s3://ENDPOINT:AK:SK:BUCKETalioss://ENDPOINT:AK:SK:BUCKETqiniu://[ZONE]:AK:SK:BUCKET - REMOTE_URL: option, 远程存储访问 URL, 注意需要开启 HTTPS 支持 iOS 才能正常安装!例子:https://cdn.example.com
- DELETE_ENABLED: 是否开启删除 APP 功能
truefalse
-
本仓库代码不包含 SSL 证书部分,由于苹果在线安装必须具备 HTTPS,所以本程序必须运行在 HTTPS 反向代理后端。
-
部署后,你可以使用浏览器访问 https://<YOUR_DOMAIN>
-
最简单的办法开启完整服务,使用下面的配置替换
docker-compose.yml文件:
# ***** 更换所有 <YOUR_DOMAIN> 成你的真实域名 *****
version: "3"
services:
web:
image: ineva/ipa-server:latest
container_name: ipa-server
restart: unless-stopped
environment:
# 本服务公网IP
- PUBLIC_URL=https://<YOUR_DOMAIN>
# option, 远程存储配置, s3://ENDPOINT:AK:SK:BUCKET, alioss://ENDPOINT:AK:SK:BUCKET, qiniu://[ZONE]:AK:SK:BUCKET
- REMOTE=
# option, 远程存储访问URL, https://cdn.example.com
- REMOTE_URL=
# option, 元数据存储路径, 使用一个随机路径来保护元数据,因为在使用远程存储的时候,没有更好的方法防止外部直接访问元数据文件
- META_PATH=appList.json
# 是否开启删除APP功能, true/false
- DELETE_ENABLED="false"
# 是否关闭APP上传功能, true/false
- UPLOAD_DISABLED="true"
# meta data 过滤显示, string list, 使用逗号分隔
- META_DATA_FILTER="key1,key2"
# 如果设置了,使用此用户名密码来上传和删除App
- LOGIN_USER=
- LOGIN_PASS=
volumes:
- "/docker/data/ipa-server:/app/upload"
caddy:
image: ineva/caddy:2.4.1
restart: unless-stopped
ports:
- 80:80
- 443:443
entrypoint: |
sh -c 'echo "$$CADDY_CONFIG" > /srv/Caddyfile && /usr/bin/caddy run --config /srv/Caddyfile'
environment:
CADDY_CONFIG: |
<YOUR_DOMAIN> {
reverse_proxy web:8080
}
# install golang v1.16 first
git clone https://github.com/iineva/ipa-server
# build and start
cd ipa-server
# build binary
make build
# run local server
make- 设计全新的鉴权方式,初步考虑试用 GitHub 登录鉴权
- 支持七牛存储
- 支持阿里云 OSS 存储
- 支持 S3 存储
- 兼容 v1 产生数据,无缝升级
- 支持命令行生成静态文件部署

