Docker परिचय
Tim Sangster
Software Engineer @ DataCamp
Dockerfile में variables बनाएँ
ARG <var_name>=<var_value>
उदाहरण: ARG path=/home/repl
Dockerfile में उपयोग करने के लिए
$path
उदाहरण: COPY /local/path $path
Python वर्ज़न सेट करना
FROM ubuntu
ARG python_version=3.9.7-1+bionic1
RUN apt-get install python3=$python_version
RUN apt-get install python3-dev=$python_version
एक फ़ोल्डर कॉन्फ़िगर करना
FROM ubuntu
ARG project_folder=/projects/pipeline_v3
COPY /local/project/files $project_folder
COPY /local/project/test_files $project_folder/tests
FROM ubuntu
ARG project_folder=/projects/pipeline_v3
COPY /local/project/files $project_folder
COPY /local/project/test_files $project_folder/tests
बिल्ड कमांड में variable सेट करना
docker build --build-arg project_folder=/repl/pipeline .
ARG ओवरराइट हो जाता है, और फाइलें यहाँ पहुँचती हैं:
COPY /local/project/files /repl/pipeline
COPY /local/project/test_files /repl/pipeline/tests
Dockerfile में variables बनाएँ
ENV <var_name>=<var_value>
उदाहरण: ENV DB_USER=pipeline_user
Dockerfile में या runtime पर उपयोग करने के लिए
$DB_USER
उदाहरण: CMD psql -U $DB_USER
Runtime पर उपयोग होने वाली डायरेक्टरी सेट करना
ENV DATA_DIR=/usr/local/var/postgres
ENV MODE production
Runtime पर variable सेट या बदलना
docker run --env <key>=<value> <image-name>
docker run --env POSTGRES_USER=test_db --env POSTGRES_PASSWORD=test_db postgres
docker history <image-name>
ARG DB_PASSWORD=example_password
docker history में यह दिखेगा:
IMAGE CREATED CREATED BY SIZE ...
cd338027297f 2 months ago ARG DB_PASSWORD=example_password 0B ...
| उपयोग | Dockerfile instruction |
|---|---|
| केवल build के दौरान एक्सेस होने वाला variable बनाएँ | ARG <name>=<value> |
| एक variable बनाएँ | ENV <name>=<value> |
| उपयोग | Shell Command |
|---|---|
| docker build में ARG ओवरराइड करें | docker build --build-arg <name>=<value> |
| docker run में ENV ओवरराइड करें | docker run --env <name>=<value> <image-name> |
| इमेज बनाने में उपयोग हुई instructions देखें | docker history <image-name> |
Docker परिचय