오래도록 pups가 정확히 무엇인지 잘 이해하지 못했고, 솔직히 아직까지도 조금 혼란스럽습니다.
![]()
discourse 도커 이미지가 설정되어야 한다는 점은 이해합니다. 이를 bash 스크립트로 처리하는 대신, https://github.com/discourse/discourse_docker/tree/master/samples 에 있는 yml 파일들(이 파일들이 bash 스크립트를 생성합니다)을 통해 처리됩니다.
docker 컨테이너의 시작과 pups를 통한 설정은 이 launcher 스크립트에서 서로 얽혀 있습니다.
제가 링크한该行은 저에게 특히 중요합니다. 이 코드는 pups가 docker 컨테이너 내에서 실행되도록 하는 것 같습니다. test.yml 파일을 pups로 실행해 보았지만, 당연히 docker 컨테이너 내에서 실행되지 않았습니다. 그저 즉시 실행되는 bash 스크립트(bash 명령어?)를 생성했을 뿐입니다.
제 질문은 다음과 같습니다: pups를 dev docker 컨테이너 내에서 실행하는 방법은 무엇인가요? 제가 가리킨 이 라인은 매우 길고, 제 사용 사례에는 일부가 불필요해 보입니다. pups의 출력을 docker 컨테이너와 결합하는 간단한 예시를 누군가가 알려주실 수 있을까요?
기본적으로 launcher 스크립트에 있는 것과 유사한 pups 명령어를 추가하고 싶습니다. boot_dev 스크립트 의 끝에 추가하거나(또는 boot dev 스크립트 실행 후 별도 스크립트로 실행하거나) 하는 방식입니다.
배경 정보:
이렇게 하려는 이유 → runit에 장기 실행되는 프로세스를 추가하고 싶습니다. @merefield 님이 이를 수행하는 방법을 참고할 수 있도록 Frotz 플러그인을 추천해 주셨습니다.
질문은 이렇습니다: pups 입력을 테스트하기 위해 로컬에서 어떻게 해야 하는지 궁금합니다. 제 이해로는 docker dev 인스턴스는 yml 파일과 pups를 통해 설정되지 않는 것 같습니다. Frotz 플러그인의 pups 입력은 플러그인 설치 시 서버 yml 파일과 관련이 있으므로, 로컬에서 어떻게 해야 하는지 기본적으로 혼란스럽습니다.
자, 감사합니다 ![]()
수정:
자, 이런 종류의 라인을 찾았습니다.
즉, pups는 단순히 컨테이너 내에서 실행되기만 하면 된다는 뜻입니다. 왜 명령어 생성에만 사용된다고 생각했는지 모르겠습니다. readme에서 이 문장을 봤기 때문입니다.
pups는 유닉스 이미지를 생성하는 과정을 자동화할 수 있게 해주는 작은 라이브러리입니다.
이 문장은 제게 큰 의미가 없었기 때문에 자연스럽게 무의식이 개입했습니다.
--gen-docker-run-args인수는 pups의 출력이docker run <arguments output>형식이 되도록 하는 데 사용됩니다.
어떻게든 이 문구가 저를 pups를 yml 파일을 bash 명령어 출력으로 변환하는 도구, 즉 yml to bash 컴파일러처럼 개념화하게 만들었습니다. 하지만 실제로는 yml 인터프리터에 더 가깝습니다. 명령어를 생성할 뿐만 아니라 즉시 실행하기도 합니다.