본문 바로가기
카테고리 없음

Windows 환경에서 Dockerfile 문법 정리

by HCastle 2024. 5. 1.
반응형

windows 환경의 docker 에서 문법을 정리합니다.

 

특징

  • windows 환경에서 docker build 시 cmd 상태가 되어 powershell 같은 명령어 수행 시 그에 맞는 방식을 사용하여야 합니다.
  • windows 명령어에서 변수 사용 시 %variableName% 형식을 사용합니다.
    그 외에는 docker syntax 사용 ($variableName)

 

# Powershell 명령 수행 - nuget 복원
RUN powershell -Command "nuget restore SolutionName.sln"

# Powershell 명령 수행 - msbuild
RUN powershell -Command "msbuild folderName/ProjectName.csproj /p:Configuration=Release /p:DeployOnBuild=true"

# 동적 ARG 사용
ARG configFile="Web.${environment}.config"

# echo 로 값 확인
RUN echo "configFile=%configFile%"

# if 문 사용
RUN if "%environment%" equ "local" ( \
        echo environment is %environment% \
    ) else ( \
        echo environment is not local. environment is %environment% \
    )

# 환경 별 config 파일 복사
COPY ["./projectFolder/Web.${environment}.config", "Web.config"]

 

반응형

댓글