반응형
Notice
Recent Posts
Recent Comments
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- docker
- Selenium
- spring boot redis
- ChannelPipeline
- docker compose mysql
- WebLogic
- vue.js
- Hibernate
- jmeter
- redis
- weblogic 10
- grafana
- Spring Open Feign
- JPA
- Redis Sentinel
- Netty
- spring cloud
- docker-compose
- spring boot
- Docker Compose
- cassandra
- netflix oss
- MySQL
- argo cd
- Airflow
- coalesce
- mybatis
- QueryDSL
- KAFKA
- RabbitMQ
Archives
- Today
- Total
IT.FARMER
docker env, arg 차이점 본문
반응형
docker env, arg 차이점
docker 에서 env 와 arg는 변수로 선언 할 때 사용한다. 둘 다 비슷해 보이긴 하지만 다른 명령어 임을 기억하자 .
1. ARG (Argument)
- docker 빌드중에만 사용되는 빌드 타임 환경 변수이다.
- docker 명령어에서 ‘—build-arg’ 플래그(FLAG)를 사용하여 값을 전달 할 수 있다.
- 주로 이미지 빌드 프로세서에서 인자를 전달하고 이미지의 컨텍스트에 따라 변경 가는한 값으로 사용된다.
docker 이미지내에서는 사용 불가능 하며, 빌드중에만 사용된다.
예시:
ARG VERSION=latest
FROM ubuntu:$VERSION
실행 예시:
docker build --build-arg VERSION=1.0 -t myimage ./Dockerfile .
실행예시 (멀티)
여러개의 변수를 전달할때는 다음과 같이 ‘—build-arg’ 플래그를 이용하여 전달 할 수 있다. 각 ARG는 공백으로 구분한다.
docker build --build-arg ARG1=value1 --build-arg ARG2=value2 -t myimage .
2. ENV (Environment)
- docker 컨테이너 안에서 실행 중에 사용되는 런타임 환경 변수를 정의 한다.
- 주로 컨테이너 내에서 실행되는 프로세스에서 사용하는 환경 변수를 설정 하는데 사용한다.
- dockerfile 에서 정의된 환경변수는 기본적으로 컨테이너 내에서 사용 가능하며, docker run 명령어 에서 ‘e’ 플래그를 사용하여 재정의 가능하다.
SpringBoot 에서는 active profile 에대해 재정의 할 때 사용한다.
예시:
ENV USE_PROFILE=local
# Run the jar file
ENTRYPOINT ["java","-Dspring.profiles.active=${USE_PROFILE}","-Djava.security.egd=file:/dev/./urandom","-jar","/spring-cloud-eureka.jar"]
실행예시:
docker run -p 8761:8761 -d --restart always -e USE_PROFILE=prod --name=spring-discovery spring-cloud-eureka-server:latest
반응형
'devops > docker' 카테고리의 다른 글
dockerfile에 springboot profile 적용하기 (1) | 2024.04.07 |
---|---|
도커 실행 권한문제 - dial unix /var/run/docker.sock: connect: permission denied (0) | 2023.04.17 |
docker-compose mysql 설정 및 sql init (0) | 2022.01.14 |
docker-compose jenkins (0) | 2022.01.14 |
docker-compose 옵션 기본 명령어 (0) | 2021.04.29 |