환경 변수
모든 플랜 에서 사용 가능
self-hosted 배포판
환경 변수를 사용하여 구성을 관리할 수 있습니다. 환경 변수는 config.json
의 설정을 재정의합니다. config.json
의 설정 변경이 적용되려면 서버를 다시 시작해야 하는 경우, 해당 환경 변수의 변경도 서버 재시작이 필요합니다.
모든 설정에 대한 환경 변수의 이름은 해당 설정의 config.json
내 이름에서 파생될 수 있습니다. 예를 들어, Site URL 설정의 이름을 파생시키려면:
config.json
에서 설정을 찾습니다. 이 경우 ServiceSettings.SiteURL.이름 앞에
MM_
을 추가하고 모든 문자를 대문자로 변환하고.
을_
로 대체합니다. 예를 들어, MM_SERVICESETTINGS_SITEURL.설정은 다음과 같이 됩니다.
export MM_SERVICESETTINGS_SITEURL="http://example.com"
.
Note
Mattermost가 초기화 파일에서 실행되는 경우, 환경 변수는
Environment= <>
또는EnvironmentFile= <path/to/file>
을 통해 설정될 수 있습니다. 두 번째 경우에는 지정된 파일에 설정할 환경 변수의 목록이 포함되어 있습니다.Mattermost v7.5부터 환경 구성 구문 분석은
MM_PLUGINSETTINGS_PLUGINS
및MM_PLUGINSETTINGS_PLUGINSTATES
에 대해 JSON을 지원합니다. 이는 특히 모든 플러그인이 동시에 구성되는 Helm 구성 파일에 유용합니다. 예를 들어,MM_PLUGINSETTINGS_PLUGINSTATES="{\"com.mattermost.calls\":{\"Enable\":true},\"com.mattermost.nps\":{\"Enable\":true}}"
.설정이 환경 변수를 통해 구성된 경우, 시스템 관리자는 시스템 콘솔에서 해당 설정을 수정할 수 없습니다. 설정이 환경 변수를 통해 구성된 경우, 시스템 콘솔에서 다른 변경 사항이 있으면 해당 설정 값을 환경 변수의 값으로 다시
config.json
에 작성합니다.config.json
이나 환경 변수에서 설정되지 않은 모든 설정에 대해 Mattermost 서버는 해당 설정의 기본 값을 사용합니다. 이는 이 페이지 아래의 섹션에 문서화되어 있습니다.
Warning
활성 셸 내에서 설정된 Mattermost 설정을 위한 환경 변수는 구성을 마이그레이션할 때 적용됩니다. 자세한 정보는 데이터베이스에서의 구성(configuation-in-a-database) 문서를 참조하세요.
데이터베이스 연결 문자열은 데이터베이스 읽기 및 검색 레플리카에 대한 URL 인코딩을 사용하여 형식화해야 합니다. 잘못된 형식으로 된 문자열은 일부 문자가 문자열을 일찍 끝내버리고 연결 문자열이 구문 분석될 때 문제를 일으킬 수 있습니다.
Mattermost 라이선스 파일 재정의
라이선스를 대체하지 않고 데이터베이스 또는 파일 구성에 있는 모든 라이선스를 재정의하는 환경 변수를 사용할 수 있습니다. 서버를 시작할 때 라이선스 키를 MM_LICENSE
로 지정하고 라이선스 파일의 내용을 입력합니다.
Note
MM_LICENSE
가 비어 있지 않은 문자열로 설정되어 있지만 지정된 라이선스가 유효하지 않은 경우, Mattermost 서버는 라이선스 없이 시작됩니다.
고가용성(High Availability) 배포에서 환경 변수를 사용하여 서버 라이선스를 재정의하는 경우, 이는 개별 앱 서버에만 영향을 미치며 클러스터의 다른 서버로 전파되지 않습니다.
사용자 정의 구성 기본값 로드
이 사용자 정의 구성은 현재 서버 구성에 이미 존재하지 않은 값에만 적용됩니다.
사용자 정의 구성 기본값을 포함하는 JSON 파일을 만듭니다. 예를 들어,
custom.json
.서버를 시작할 때, 사용자 정의 기본값 환경 변수를 기본값 파일을 가리키도록 지정합니다.
MM_CUSTOM_DEFAULTS_PATH=custom.json
.