-
Notifications
You must be signed in to change notification settings - Fork 14
Home
fsword edited this page Mar 1, 2017
·
7 revisions
shelter系统使用docker相关技术进行组织,因此要求使用环境支持docker/compose 。在源码根目录下有一个 docker-compose.yml ,可以用来构建完整的系统。
使用 http 协议提供服务,不需要证书。
- 设定服务地址(通常是运行容器所在宿主机地址,需要可以被其他用户访问),在源码目录下执行:
./prepare.sh <your_host_ip>
- 构建并启动各个服务,在源码根目录下执行:
docker-compose up -d
使用 https 提供服务,需要使用证书,正式使用时推荐使用这种方式
这里的 docker-compose.yml 文件主要用于演示,与正式环境相比,主要有两方面需要用户进行定制:
- registry的部署优化:用户可以根据需要选择registry的存储方案,不应局限于缺省配置方式
- 数据库持久化信息外置:shelter使用 postgre 和 redis,建议这里直接使用外部数据源以保存系统状态
- 除非一定要在运行时进行的设定,否则不应将环境变量留给 docker-compose.yml ,可以根据习惯使用硬编码或者放入 Dockerfile
- 经过 Dockerfile 描述后交付的镜像就是不可变交付物,不区分所谓的“开发”、“测试”、“线上”等等的“环境”
- docker-compose.yml 使用的环境变量均可以根据实际需要进行改变,这种改变不应导致系统表现出不同的质量和性能
- 源码根目录下的 integration_test 用于进行验收测试,此时的测试是针对所有shelter和相关应用集成后的系统,对于feature合入,这个测试的通过是前置条件
如何进行开发,请参考开发指南