bauta문서

환경 변수

bauta와 그 브라우저, 설치 스크립트, 패키지, Docker 이미지가 읽는 환경 변수입니다.

bauta와 그 브라우저, 설치 스크립트, 패키지, Docker 이미지가 읽는 환경 변수를 무엇이 읽는지에 따라 나누었습니다.

bauta와 게이트웨이

변수하는 일기본값
BAUTA_HOMEpersonas/, license, fonts/를 담습니다.~/.bauta
BAUTA_CHROME브라우저입니다.bauta 옆의 chrome
BAUTA_SERVER활성화, 로그인, bauta status, 라이선스 갱신에 쓰는 서버입니다.https://api.bauta.dev
BAUTA_LICENSE_KEY이 머신에 보관된 키보다 우선하는 라이선스 키입니다. Docker와 CI에서 설정하세요.설정 안 됨
BAUTA_IP_ECHO페르소나가 시간대와 로캘을 둘 다 정하지 않았을 때, bauta serve가 프록시의 출구 위치를 찾으려고 페르소나의 프록시를 거쳐 묻는 IP 에코 서비스입니다.https://api.ipify.org

BAUTA_LICENSE_KEY가 설정되어 있는 동안에는 bauta login이 보관하는 키보다 그 값이 여전히 우선하며, bauta logout은 그 변수를 해제할 때까지 거부합니다.

Linux에서 bauta serve --hidden은 DISPLAY 값과 상관없이 가상 디스플레이에 창을 엽니다.

브라우저를 직접 실행할 때

변수하는 일
BAUTA_LICENSE브라우저가 실행할 때 확인하는 라이선스 파일입니다. 예: bauta setup이 쓰는 ~/.bauta/license.
BAUTA_PLUGIN_CONFIG브라우저가 실행할 때 읽는 페르소나 파일의 절대 경로입니다.
BAUTA_ROTATE브라우저가 읽을 내장 페르소나의 이름입니다: win-intel, win-nvidia, mac-arm, linux-intel, linux-nvidia, linux-amd.
FONTCONFIG_FILELinux에서 페르소나와 짝을 이루는 글꼴 환경입니다. 예: Windows 페르소나에는 personas/fonts/win.conf.
TZ브라우저의 시간대입니다.
LANGUAGE, LANG브라우저의 로캘입니다. 예: en_US, en_US.UTF-8.
CHROME_DEVEL_SANDBOXUbuntu 24.04에서 샌드박스에 쓸 SUID 샌드박스 도우미입니다. 일반 Chrome의 /opt/google/chrome/chrome-sandbox도 됩니다.
BAUTA_LICENSE=~/.bauta/license \
BAUTA_PLUGIN_CONFIG=$PWD/personas/win-intel.json \
FONTCONFIG_FILE=$PWD/personas/fonts/win.conf \
  /path/to/bauta/chrome --user-data-dir="$(mktemp -d)" https://example.com

브라우저는 실행할 때 한 번 라이선스를 확인하고 페르소나를 읽습니다.

시간대와 로캘은 바인딩 계층 바깥의 V8과 ICU에서 옵니다. 게이트웨이는 페르소나의 timezone과 locale로 이를 정하며, 브라우저를 직접 실행할 때는 TZ, LANGUAGE, LANG을 설정하세요.

Ubuntu 24.04에서는 AppArmor가 자신이 모르는 Chrome이 비특권 사용자 네임스페이스를 쓰지 못하게 막습니다. CHROME_DEVEL_SANDBOX를 SUID 샌드박스 도우미로 지정하거나, --no-sandbox로 실행하세요. 어느 쪽이든 페르소나는 적용됩니다.

Unix 설치 스크립트

Linux와 macOS용 설치 스크립트 install.sh는 다음 변수를 읽습니다.

변수하는 일
BAUTA_HOME~/.bauta 대신 이 경로에 설치합니다. 바이너리는 BAUTA_HOME/bin에 들어갑니다.
BAUTA_VERSION최신 릴리스 대신 vX.Y.Z 형식으로 지정한 릴리스를 설치합니다.
BAUTA_RELEASE_BASE릴리스 URL의 앞부분 전체를 바꾸는 URL입니다. 애셋이 있는 디렉터리를 가리킵니다(CI에서는 file://).
BAUTA_REQUIRE_SIGNATURE1: 서명을 실제로 확인하지 못하면 설치하지 않습니다. 확인에는 OpenSSL 3이 필요합니다.
BAUTA_NO_MODIFY_PATH1: 셸 rc 파일을 건드리지 않습니다.
BAUTA_NO_PROMPT, CI묻지 않습니다: bauta setup --non-interactive를 실행합니다.
BAUTA_INSTALL_LIB스크립트를 BAUTA_INSTALL_LIB=1 . ./install.sh처럼 source할 때 설정합니다. 그러면 아무것도 설치하지 않고 내려받기와 검증 함수만 정의합니다.
curl -fsSL https://bauta.dev/install.sh | BAUTA_VERSION=vX.Y.Z bash

OpenSSL 3이 없는 기본 상태의 Mac에서는 설치 스크립트가 서명을 확인하지 못했다는 사실과 그 이유를 한 줄로 출력하며, 체크섬은 여전히 HTTPS로 받습니다. BAUTA_REQUIRE_SIGNATURE=1이면 이 경우 설치를 거부합니다.

Python과 Node.js 패키지

변수하는 일
BAUTA_BIN첫 launch()가 ~/.bauta/bin에 내려받는 것 대신 쓸, 이미 가지고 있는 bauta입니다.
BAUTA_GATEWAY컨테이너 안처럼 다른 곳에서 실행되는 게이트웨이로, 그 페르소나는 그쪽에서 만듭니다. gateway 옵션과 같으며, 예: http://127.0.0.1:9222.
BAUTA_NO_PROMPT, CI묻지 않습니다: 첫 launch()가 묻지 않고 무료 플랜을 활성화합니다.

설치 스크립트와 패키지는 stdin이나 stdout이 터미널이 아니거나, CI가 설정되어 있거나, /.dockerenv가 있거나, BAUTA_NO_PROMPT=1이면 묻지 않습니다. 그때는 묻지 않고 무료 플랜(세션 하나)을 활성화합니다.

Docker 이미지

변수하는 일
BAUTA_LICENSE_KEY선택 사항입니다. 라이선스 키이며, 없으면 컨테이너는 무료 플랜(세션 하나)으로 실행됩니다.
BAUTA_PERSONAS시작할 때 없으면 만들 페르소나로, 각각 name=<built-in or file> 형식입니다. 예: shop=win-intel.
docker run -d --name bauta --init --cap-add=SYS_ADMIN -p 127.0.0.1:9222:9222 -v bauta:/data \
  -e BAUTA_PERSONAS="shop=win-intel" ghcr.io/bautabrowser/bauta

BAUTA_LICENSE_KEY를 쓰지 않을 때는 /data/license에 라이선스 파일을 두세요. CI나 여러 컨테이너에서는 키를 설정하거나, 컨테이너가 설치 ID를 유지하도록 /data를 볼륨에 두세요. 서버는 IP마다 새 무료 활성화를 제한합니다.

다음 단계

  • bauta CLI: 모든 명령과 플래그.
  • Docker: 컨테이너 안의 게이트웨이.
  • 패키지: Python이나 Node.js에서 실행하기.

이 페이지 내용