ui 구성 블록
ui 구성 블록 (UI Configuration Block)
이 페이지는 Nomad 에이전트 구성의 ui 블록에서 Nomad 웹 UI를 구성하는 방법에 대한 참조 정보를 제공해요. Vault·Consul 링크를 제공하고, Nomad UI에 표시할 커스텀 텍스트를 추가하며, HTTP Content Security Policy 응답 헤더를 정의해요.
출처: 문서
본문
ui {
enabled = true
content_security_policy {
connect_src = ["*"]
default_src = ["'none'"]
form_action = ["'none'"]
frame_ancestors = ["'none'"]
img_src = ["'self'","data:"]
script_src = ["'self'"]
style_src = ["'self'","'unsafe-inline'"]
}
consul {
ui_url = "https://consul.example.com:8501/ui"
}
vault {
ui_url = "https://vault.example.com:8200/ui"
}
label {
text = "Staging Cluster"
background_color = "yellow"
text_color = "#000000"
}
}
기본 ui 블록은 모든 Nomad 에이전트 구성과 자동으로 병합돼요. UI는 모든 Nomad 에이전트에서 제공될 수 있으며, 구성은 각 에이전트마다 개별적이라는 점을 참고해 주세요.
ui 매개변수 (Parameters)
enabled(bool: true)— 웹 UI가 활성화되어 있는지 지정해요. 비활성화하면/ui/경로는 빈 웹 페이지를 반환해요.consul(Consul: nil)— Nomad 웹 UI와 Consul 웹 UI 간의 통합을 구성해요.vault(Vault: nil)— Nomad 웹 UI와 Vault 웹 UI 간의 통합을 구성해요.label(Label: nil)— Nomad 웹 UI 헤더에 표시할 사용자 정의 라벨을 구성해요.show_cli_hints(bool: true)— CLI 명령어가 동등한 UI 페이지에 대한 힌트를 표시할지 제어해요. 예를 들어nomad server members를 실행하면 CLI가 웹 UI에서 서버 정보를 찾을 수 있는 위치를 알려주는 메시지를 표시해요. 이러한 힌트를 비활성화하려면 false로 설정해요.
content_security_policy 매개변수 (Parameters)
content_security_policy 블록은 웹 UI 응답과 함께 전송되는 HTTP Content-Security-Policy 헤더를 구성해요.
connect_src(array<string>: ["*"])— Content Security Policy 헤더에서 connect-src의 유효 소스를 지정해요.default_src(array<string>: ["'none'"])— Content Security Policy 헤더에서 default-src의 유효 소스를 지정해요.form_action(array<string>: ["'none'"])— Content Security Policy 헤더에서 form-action의 유효 소스를 지정해요.frame_ancestors(array<string>: ["'none'"])— Content Security Policy 헤더에서 frame-ancestors의 유효 소스를 지정해요.img_src(array<string>: ["'self'", "data:"])— Content Security Policy 헤더에서 img-src의 유효 소스를 지정해요.script_src(array<string>: ["'self'"])— Content Security Policy 헤더에서 script-src의 유효 소스를 지정해요.style_src(array<string>: ["'self'","'unsafe-inline'"])— Content Security Policy 헤더에서 style-src의 유효 소스를 지정해요.
consul 매개변수 (Parameters)
ui_url(string: "")— Consul 웹 UI의 전체 기본 URL을 지정해요(예:https://consul.example.com:8501/ui). 이 URL은 Nomad 웹 UI에서 Consul 웹 UI로의 링크를 만드는 데 사용돼요. 이 URL은 일반적으로 에이전트의consul.address와 같지 않다는 점을 참고해 주세요.consul.address는 Nomad가 Consul과 통신하는 데 사용하는 URL이고,ui.consul.ui_url는 브라우저에서 방문하는 URL이에요. 이 필드를 생략하면 이 통합은 비활성화돼요.
vault 매개변수 (Parameters)
ui_url(string: "")— Vault 웹 UI의 전체 기본 URL을 지정해요(예:https://vault.example.com:8200/ui). 이 URL은 Nomad 웹 UI에서 Vault 웹 UI로의 링크를 만드는 데 사용돼요. 이 URL은 일반적으로 에이전트의vault.address와 같지 않다는 점을 참고해 주세요.vault.address는 Nomad가 Vault와 통신하는 데 사용하는 URL이고,ui.vault.ui_url는 브라우저에서 방문하는 URL이에요. 이 필드를 생략하면 이 통합은 비활성화돼요.
label 매개변수 (Parameters)
text(string: "")— 웹 UI 헤더에 표시될 라벨의 텍스트를 지정해요.background_color(string: "")— 표시될 라벨의 배경색이에요. 웹 UI는 검은색 배경을 기본으로 해요. HEX 값을 사용할 수 있어요.text_color(string: "")— 표시될 라벨의 텍스트 색상이에요. 웹 UI는 흰색 텍스트를 기본으로 해요. HEX 값을 사용할 수 있어요.