Skip to main content
Replit App은 .replitreplit.nix 두 파일로 구성됩니다. 이 파일들은 코드 실행부터 개발 도구 및 언어에 이르기까지 Replit App의 동작 방식에 영향을 줍니다. 구성 파일은 기본적으로 숨겨져 있습니다. 파일 트리 메뉴에서 “숨김 파일 표시”를 선택하면 Replit App에서 볼 수 있습니다.
image

replit.nix 파일

Replit은 패키지와 환경을 관리하기 위해 Nix를 사용합니다. replit.nix 파일은 다음 용도로 사용됩니다: 시스템 의존성 지정: 패키지 관리자인 Nix를 통해 Replit App에 필요한 소프트웨어 패키지를 정확히 정의합니다. 재현 가능한 환경 생성: 개발 환경을 일관되고 재현 가능하게 유지하여 협업 프로젝트 및 여러 시스템에서의 테스트에 이상적입니다. Dependencies 도구를 통해 Nix 패키지를 시각적으로 관리할 수 있습니다. 자세한 내용은 시스템 의존성 가이드를 참조하세요. replit.nix 파일로 패키지를 구성하려면 deps 배열에 pkgs. 접두사를 붙여 Nix 패키지를 나열할 수 있습니다. 변경 사항은 Shell을 다시 로드한 후 동기화됩니다.

.replit 파일

.replit 파일은 Replit App의 동작을 제어합니다. toml 구성 형식을 사용합니다. 구성할 수 있는 주요 항목은 다음과 같습니다: 실행 명령: Run 버튼을 선택했을 때 실행되는 명령을 지정합니다. 각 템플릿에는 즉시 코드를 실행할 수 있도록 기본 실행 명령이 있습니다. 더 맞춤화되고 복잡한 앱의 경우 Workflows를 사용하세요. 언어 서버 프로토콜(LSP): 자동 완성, 코드 탐색, 코드 하이라이팅, 실시간 린팅 및 오류 표시 등의 기능을 제공합니다. 환경 변수: 애플리케이션이 올바르게 실행되는 데 필요한 환경 변수를 설정하고 관리합니다. 의존성 및 패키지: .replit 파일을 통해 패키지 설치 및 구성을 직접 관리하여 Replit App 시작 시 필요한 모든 도구가 준비되도록 합니다. Dependencies 도구를 통해 의존성을 시각적으로 관리할 수 있습니다. 자세한 내용은 시스템 모듈 가이드를 참조하세요. Python 애플리케이션의 경우 기본 .replit 파일은 다음과 같습니다:
다음 표는 .replit 파일의 각 설정과 그 기능 및 Replit App 환경에 미치는 영향을 보여줍니다. 이제 .replit 파일의 기본 구성에 대해 이해했으니, 다음 섹션에서 Replit App의 기본 및 고급 설정을 구성하는 방법을 알아보겠습니다.

기본 설정 구성

진입점(Entrypoint)

프로젝트의 메인 파일입니다. run 속성을 정의하지 않으면 런타임에서 entrypoint로 지정된 파일을 실행합니다.

Run 명령

.replit 파일의 run 속성은 Replit 환경에서 Run 버튼을 선택했을 때 초기 실행되는 명령 또는 일련의 명령을 결정하는 핵심 기능입니다. Run 명령은 실행할 명령을 나타내는 문자열이나 명령과 개별 인수를 나타내는 문자열 배열로 지정할 수 있습니다. Run 명령을 구성하는 일반적인 방법:
  • 단일 명령: Replit App에서 단일 명령을 직접 실행하는 방법입니다. .replit 파일에 이를 추가하면 Run 버튼을 누를 때 Console 창에 인사말이 표시됩니다: 예시: run = "echo 'Hello, Replit!'"
  • 명시적 인수: 경우에 따라 따옴표 파싱이나 Shell 보간 규칙을 피하기 위해 더 명시적으로 작성하는 것이 유리할 수 있습니다. 위의 예시를 인수를 분리하여 다시 작성할 수 있습니다. 인사말을 echo의 첫 번째이자 유일한 인수로 명시적으로 전달하므로 '" 모두 필요하지 않습니다: 예시: run = ["echo", "Hello, Replit!"]
  • 여러 명령: 프론트엔드와 백엔드 같은 여러 프로세스를 동시에 실행하는 방법입니다. 각 서버가 다른 포트에 바인딩되는 Python 백엔드와 TypeScript 프론트엔드를 개발할 때 유용합니다: 예시: run = "python -m app & npm run start & wait"

프로세스 관리

&로 여러 명령을 동시에 실행할 수 있지만, 서비스 간 로그를 더 명확하게 구분하고 싶을 수 있습니다. process-compose와 같은 시스템 의존성을 추가하면 여러 프로세스를 더 효과적으로 관리할 수 있습니다.

Build 단계

TypeScript, Golang, Java 같은 컴파일 언어나 다음 run 전에 환경, 데이터, 구성을 재설정해야 하는 경우 코드를 run하기 전에 별도의 컴파일 단계가 필요할 수 있습니다.
  • 컴파일: TypeScript 저장소에서는 코드를 실행하기 전에 tsc를 먼저 실행해야 할 수 있습니다. 예시:

환경 변수 포함

실행 전에 서비스에 환경 변수를 제공하려면 run 속성을 테이블로 확장할 수 있습니다. 이는 더 복잡한 변경으로, .replit 파일 내에서 run = "..." 속성의 위치를 이동해야 할 수 있습니다. 다음 diff는 [run]args를 통해 명령을 전달하고 [run.env]에서 변수 NAME을 제공하는 방법을 보여줍니다:

대화형 실행

대화형 프로그램도 Run 버튼을 통해 실행할 수 있으며, 개발 환경과 프로그램이 실행되는 터미널을 구분하는 방법을 제공합니다. 다음 집계 스크립트를 예로 들어 보겠습니다: 예시

고급 구성 옵션

Replit App에서 사용 가능한 상세 구성 옵션을 살펴보세요. 개발 환경 사용자 정의, 실행 명령 관리, 언어 서비스 통합, 의존성 처리를 맞춤화할 수 있습니다.

시스템 전체 오디오 관련 참고 사항

.replit 파일에서 audio = true를 설정하면 개발 환경을 재시작해야 할 수 있습니다. Cmd+K(Mac) 또는 Ctrl+K(Windows)로 명령 팔레트를 열고 Restart compute를 검색하여 선택하세요. 그래픽 애플리케이션을 실행할 때 Output 창의 오른쪽 하단에 체크박스가 있는 헤드폰 아이콘이 표시됩니다. 브라우저 제한으로 인해 새로 고침할 때마다 이 기능을 활성화해야 합니다.

패키저 구성

패키저 구성의 .replit 구성 예시

배포 구성

배포 구성의 .replit 구성 예시

인터프리터 구성은 더 이상 사용되지 않으며 Replit에서 제공되지 않습니다. 대신 Replit App 환경 내에서 스크립트 및 애플리케이션이 실행되는 방식을 구성하려면 Run 명령을 사용하는 것을 권장합니다.

포트 구성

포트 관리를 위한 .replit 구성 파일 예시

Replit App 환경 메타데이터 접근

Node.js

모든 환경 변수에 접근하려면: console.log(process.env); 단일 변수(REPL_SLUG)에 접근하려면: console.log(process.env.REPL_SLUG);

Python

모든 환경 변수에 접근하려면:
단일 변수(REPL_SLUG)에 접근하려면:

Rust

모든 환경 변수에 접근하려면:
단일 변수(REPL_SLUG)에 접근하려면:

환경 변수

다음은 Replit App 내에서 접근 가능한 환경 변수입니다: