컨테이너에 환경 변수 설정
샘플 애플리케이션 만들기
이를 위해 환경 변수를 읽고 브라우저에 표시하는 간단한 익스프레스 애플리케이션을 만들 것입니다.
$ mkdir test-app
$ cd test-app
$ npm init --y
$ npm install express --save
$ touch app.js
app.js
를 열고 다음을 입력하십시오.// app.js
var express = require("express");
var app = express();
app.use(express.json());
app.use(express.urlencoded({ extended: false }));
app.get("/", function (req, res, next) {
res.send({ title: "Express", envVal: process.env.TESTVAL });
});
app.listen(3000, () => console.log("Running on http://localhost:3000"));
{
"name": "express-with-env",
"version": "0.0.0",
"private": true,
"scripts": {
"start": "node app.js"
},
"dependencies": {
"express": "~4.16.1"
}
}
I'm using ubuntu v18 for development. If you're on windows, you may need to set the env variable in a slightly different way.
$ TESTVAL=QWERTY npm start
이제 브라우저에서 http://localhost:3000을 열면 다음과 같이 표시됩니다.
{
"title": "Express",
"envVal": "QWERTY"
}
도커 이미지 생성
packageJSON과 병렬로 Dockerfile을 생성해 보겠습니다.
$ touch Dockerfile
$ touch .dockerignore
이제 Dockerfile을 열고 이 항목을 추가해 보겠습니다.
FROM node:12-slim
WORKDIR /app
COPY ./package*.json ./
RUN npm install
COPY ./ ./
EXPOSE 3000
# Run the code
CMD [ "npm", "start" ]
Dockerfile에서 도커 이미지 빌드
$ sudo docker build -t test-image .
마지막으로 진입점으로 이미지 실행
$ sudo docker run -e "TESTVAL=Docker with env variable" -p 3000:3000 -d test-image
이제 브라우저에서 http://localhost:3000을 열면
{
"title": "Express",
"envVal": "Docker with env variable"
}
동일한 이미지에서 다른 컨테이너를 회전시키십시오.
$ sudo docker run -e "TESTVAL=Another Docker Container from the same image" -p 4000:3000 -d test-image
이제 브라우저에서 http://localhost:4000을 열면
{
"title": "Express",
"envVal": "Another Docker Container from the same image"
}
추신:
기업에는 지원해야 할 여러 제품 및 비제품 환경이 있는 경우가 많습니다. 환경마다 구성이 다른 경우가 많지만 일단 배포되면 코드는 전략 빌드를 따라야 합니다. 이 튜토리얼을 통해 이를 효과적으로 수행할 수 있습니다.
Reference
이 문제에 관하여(컨테이너에 환경 변수 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/tirthaguha/setting-environment-variables-to-your-container-3ndk
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
$ touch Dockerfile
$ touch .dockerignore
FROM node:12-slim
WORKDIR /app
COPY ./package*.json ./
RUN npm install
COPY ./ ./
EXPOSE 3000
# Run the code
CMD [ "npm", "start" ]
$ sudo docker build -t test-image .
$ sudo docker run -e "TESTVAL=Docker with env variable" -p 3000:3000 -d test-image
{
"title": "Express",
"envVal": "Docker with env variable"
}
$ sudo docker run -e "TESTVAL=Another Docker Container from the same image" -p 4000:3000 -d test-image
{
"title": "Express",
"envVal": "Another Docker Container from the same image"
}
Reference
이 문제에 관하여(컨테이너에 환경 변수 설정), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/tirthaguha/setting-environment-variables-to-your-container-3ndk텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)