>

간단한 카운팅 프로그램이있는 경우 : 시작 번호가 주어지면 프로그램은 시작 번호에서 10 씩 숫자 1을 출력합니다.

출력으로 0 ~ 49를 원합니다 (주문은 어려운 요구 사항이 아닙니다). docker를 사용하여 5 컨테이너로 확장하는 것과 같은 작업을 수행 할 수 있지만 ENV를 각 컨테이너의 시작 지점으로 설정할 수 있습니까? 컨테이너가 여러 개 있다고해도 주문이 보장되지는 않습니다.

예 : 컨테이너 1은 0으로 시작하고 컨테이너 2는 10으로 시작 ... 컨테이너 5는 40에서 시작합니다. 출력은 [0, 9], [40, 49], [30, 39] 일 수 있습니다. , [10, 19], [20, 29].


  • 답변 # 1

    당신은 확실히 -e 를 사용하여 이것을 달성 할 수 있습니다  docker run 명령과 함께 인수. 아래 샘플은 환경 변수 0-49 로 컨테이너를 시작하는 방법을 보여줍니다.  데모 목적으로 알파인 이미지를 사용합니다 :

    for i in {0..49}
    do
        docker run -it -e "IDX_ENV=$i" alpine:latest env
    done
    
    

    출력은 각 호출마다 환경을 인쇄합니다.

    ...
    IDX_ENV=0
    HOME=/root
    ...
    
    
    물론 각 컨테이너는 환경을 인쇄 한 후 종료됩니다. 더 많은 "real" 를 실행 해야하는 경우  장기 실행 프로세스와 같이 -d 를 사용하여 컨테이너를 분리 모드로 실행하는 것이 좋습니다.  옵션을 선택하고 전달 된 환경을 활용하는 진입 점을 설정하십시오.

관련 자료

  • 이전 클래스 인스턴스를 반환하는 모듈의 형식 스크립트 선언 파일을 작성하는 방법
  • 다음 angular - 생산시 Identity Server 빈 쿠키