PasteSpider中,构建,部署等都是通过命令执行的,为了更加的灵活,引入了不同的变量,以便适合不同的需求使用。有人习惯叫宏,我习惯叫他占位符,因为他占着一个位置!
注!!!,占位符的格式为{{对象.属性}},他们之间没有空格,没有空格!大小写需要和说明的保持一致!
在PasteSpider的服务的配置中,如下地方都可以使用占位符:
在GIT/SVN中也支持占位符
支持的对象有:App(容器信息),Service(服务),Model(环境),Linux(执行服务器),Store(私有仓库)。
容器中的占位符
占位符 说明 示例 备注
{{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.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.Code}} 环境代码,比如prod,default等,支持自定义 api
{{Model.Id}} 这个服务中的这个环境的Id,系统中唯一 11 int
服务器的占位符
占位符 说明 示例 备注
{{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.Address}} 仓库地址 store.abc.com 域名
{{Store.Id}} 私有仓库ID 15 int
{{Store.Protect}} 访问协议 https
{{Store.Port}} 访问端口 5010
PasteSpider的路由采用的是Nginx执行的,也就是我们常说的代理,他的占位符和上面的有些不一样,在下图中的 “模板格式” 点击后在下方的预览可以查看到详细的说明:
不过上面的这个路由的宏,的点击模板数据,查看具体的!其实就是模板的对象的属性!