PasteSpider中,构建,部署等都是通过命令执行的,为了更加的灵活,引入了不同的变量,以便适合不同的需求使用。
命令占位符
注!!!,占位符的格式为{{对象.属性}},他们之间没有空格,没有空格!大小写需要和说明的保持一致!
在PasteSpider的服务的配置中,如下地方都可以使用占位符:
在GIT/SVN中也支持占位符
支持的对象有:App(容器信息),Service(服务),Model(环境),Linux(执行服务器),Store(私有仓库)。
App
容器中的占位符
占位符 | 说明 | 示例 | 备注 |
{{App.Address}} | 容器的IP地址 | 172.16.0.11 | string |
{{App.AppID}} | 容器的12位ID | 4bb827e78cd9 | string |
{{App.Name}} | 容器名称 | default_4_bfbf693eb2584935aa65b | string |
{{App.Id}} | 容器在PasteSpider内的ID | 11 | int32类型 |
{{App.Port[x]}} | 容器监听的端口(宿主中的端口) | 如果有多个则用x表示,比如已知容器映射1080,11443端口,则{{App.Port[1]}}表示11443 | 表示外部 |
Service
服务中的占位符
占位符 | 说明 | 示例 | 备注 |
{{Service.Code}} | 服务代码 | api | string |
{{Service.OtherArgs}} | 服务中的其他参数 | string | |
{{Service.Id}} | 服务在PasteSpider中的ID | int | |
{{Service.DirectPath}} | 服务中配置的直接目录,一般用于静态文件模式 | string | |
{{Service.NeedMapping}} | 是否端口映射 | True/False | string |
{{Service.FileModel}} | 服务的文件模式 0静态 1源码 2发布 3镜像模式 | 1 | int |
{{Service.Args1}} | 服务中的其他参数1 | ||
{{Service.Args2}} | 服务中的其他参数2 | ||
{{Service.Args3}} | 服务中的其他参数3 | ||
{{Service.Port[x]}} | 服务监听的端口,一般是80/80,443,用法同{{App.Port[x]}} | 表示内部端口 | |
Model
项目中的环境占位符
占位符 | 说明 | 示例 | 备注 |
{{Model.Code}} | 环境代码,比如prod,default等,支持自定义 | api | |
{{Model.Id}} | 这个服务中的这个环境的Id,系统中唯一 | 11 | int |
Linux
服务器的占位符
占位符 | 说明 | 示例 | 备注 |
{{Linux.RemoteIP}} | 远程IP,这里表示外部IP | 111.111.111.111 | |
{{Linux.Id}} | 服务器的ID | 11 | |
{{Linux.OpenPorts}} | 映射端口组 | 15000-16000 | 需要端口映射的时候需要使用 |
{{Linux.BuildHost}} | 所在PasteSpider专用地址 | https://spider.abc.com/ | |
{{Linux.WorkDir}} | PasteSpider的工作目录 | /spider/ | |
{{Linux.NginxDir}} | nginx的目录 | /etc/nginx/conf.d/ | |
{{Linux.Unix}} | 宿主系统 centos/unbntu | centos | |
{{Linux.Tool}} | 容器类型docker/podman | docker |
Store
私有仓库中的占位符
占位符 | 说明 | 示例 | 备注 |
{{Store.Address}} | 仓库地址 | store.abc.com | 域名 |
{{Store.Id}} | 私有仓库ID | 15 | int |
{{Store.Protect}} | 访问协议 | https | |
{{Store.Port}} | 访问端口 | 5010 |
路由占位符
PasteSpider的路由采用的是Nginx执行的,也就是我们常说的代理,他的占位符和上面的有些不一样,在下图中的 “模板格式” 点击后在下方的预览可以查看到详细的说明: