DNS Domain Names
Customize Pigsty Web Services Domain Names
Pigsty默认通过域名访问所有Web系统,尽管您可以使用 IP:Port的方式访问主要系统的Web界面,但这并不是推荐的行为。
因为有一些Web服务(例如Consul)监听的地址是 127.0.0.1
而非 0.0.0.0
,因此您只能通过本机上的Nginx代理访问,并使用域名来区分。
太长;不看
在MacOS与Linux中,执行以下命令 bin/dns,配置Pigsty所需的DNS记录
sudo make dns
实际上是将以下记录写入 /etc/hosts
中(需要输入sudo密码),在Windows中则自行添加至:C:\Windows\System32\drivers\etc\hosts
中。
# pigsty dns records
10.10.10.10 meta pigsty p.pigsty g.pigsty a.pigsty c.pigsty l.pigsty
10.10.10.10 api.pigsty adm.pigsty cli.pigsty ddl.pigsty lab.pigsty git.pigsty sss.pigsty
10.10.10.11 node-1 # sandbox node node-1
10.10.10.12 node-2 # sandbox node node-2
10.10.10.13 node-3 # sandbox node node-3
10.10.10.2 pg-meta # sandbox vip for pg-meta
10.10.10.3 pg-test # sandbox vip for pg-test
默认域名
默认情况下,Pigsty使用的域名包括:
10.10.10.10 meta pigsty p.pigsty g.pigsty a.pigsty c.pigsty l.pigsty # 必选
10.10.10.10 api.pigsty adm.pigsty cli.pigsty ddl.pigsty lab.pigsty git.pigsty sss.pigsty
所有Web服务的域名均通过 nginx_upstream 进行配置,例如,沙箱demo的域名配置如下:
nginx_upstream: # domain names and upstream servers
- { name: home , domain: pigsty , endpoint: "10.10.10.10:80" }
- { name: grafana , domain: g.pigsty , endpoint: "10.10.10.10:3000" }
- { name: loki , domain: l.pigsty , endpoint: "10.10.10.10:3100" }
- { name: prometheus , domain: p.pigsty , endpoint: "10.10.10.10:9090" }
- { name: alertmanager , domain: a.pigsty , endpoint: "10.10.10.10:9093" }
- { name: consul , domain: c.pigsty , endpoint: "127.0.0.1:8500" } #== ^ required ==#
- { name: postgrest , domain: api.pigsty , endpoint: "127.0.0.1:8884" } #== v optional ==#
- { name: pgadmin , domain: adm.pigsty , endpoint: "127.0.0.1:8885" }
- { name: pgweb , domain: cli.pigsty , endpoint: "127.0.0.1:8886" }
- { name: bytebase , domain: ddl.pigsty , endpoint: "127.0.0.1:8887" }
- { name: jupyter , domain: lab.pigsty , endpoint: "127.0.0.1:8888" }
- { name: gitea , domain: git.pigsty , endpoint: "127.0.0.1:8889" }
- { name: minio , domain: sss.pigsty , endpoint: "127.0.0.1:9000" }
配置自定义域名
您可以定制Pigsty各自系统使用的域名,例如在Pigsty的公开Demo中,就使用了不同的域名,并由互联网DNS服务商负责解析
nginx_upstream: # domain names and upstream servers
- { name: home , domain: home.pigsty.cc , endpoint: "10.10.10.10:80" } # default -> index.html (80)
- { name: grafana , domain: demo.pigsty.cc , endpoint: "10.10.10.10:3000" } # pigsty grafana (3000)
- { name: loki , domain: l.pigsty.cc , endpoint: "10.10.10.10:3100" } # pigsty loki (3100)
- { name: prometheus , domain: p.pigsty.cc , endpoint: "10.10.10.10:9090" } # pigsty prometheus (9090)
- { name: alertmanager , domain: a.pigsty.cc , endpoint: "10.10.10.10:9093" } # pigsty alertmanager (9093)
- { name: consul , domain: c.pigsty.cc , endpoint: "127.0.0.1:8500" } # pigsty consul UI (8500) (domain required)
- { name: postgrest , domain: api.pigsty.cc , endpoint: "127.0.0.1:8884" } #== v optional ==#
- { name: pgadmin , domain: adm.pigsty.cc , endpoint: "127.0.0.1:8885" }
- { name: pgweb , domain: cli.pigsty.cc , endpoint: "127.0.0.1:8886" }
- { name: bytebase , domain: ddl.pigsty.cc , endpoint: "127.0.0.1:8887" }
- { name: jupyter , domain: lab.pigsty.cc , endpoint: "127.0.0.1:8888" }
- { name: gitea , domain: git.pigsty.cc , endpoint: "127.0.0.1:8889" }
- { name: minio , domain: sss.pigsty.cc , endpoint: "127.0.0.1:9000" }
如果您没有购买互联网域名,则可以自定义的域名配置到您自己网络的DNS服务器中,或者干脆写入需要访问Pigsty Web服务的服务器的静态解析记录中。
例如在Nginx与MacOS上,您需要将上述域名记录写入 /etc/hosts
(需要sudo权限),在Windows中,则需要添加至:C:\Windows\System32\drivers\etc\hosts
中。
Last modified 2022-06-04: fill en docs (5a858d3)