Ubuntu 24.04
Sponsored Link

Podman : Dockerfile का प्रयोग करें2024/05/05

 
Dockerfile का उपयोग करें और स्वचालित रूप से कंटेनर छवियां बनाएं।
यह कंटेनर छवियों के लिए कॉन्फ़िगरेशन प्रबंधन के लिए भी उपयोगी है।
[1] उदाहरण के लिए, एक Dockerfile बनाएं जिसमें Nginx स्थापित और प्रारंभ हो।
root@dlp:~#
vi Dockerfile
# नया निर्माण

FROM ubuntu
MAINTAINER ServerWorld <admin@srv.world>

RUN apt-get update
RUN apt-get -y install nginx
RUN echo "Dockerfile Test on Nginx" > /var/www/html/index.html

EXPOSE 80
CMD ["/usr/sbin/nginx", "-g", "daemon off;"]

# छवि बनाएं ⇒ podman build -t [image name]:[tag] .

root@dlp:~#
podman build -t srv.world/ubuntu-nginx:latest .

STEP 1/7: FROM ubuntu
STEP 2/7: MAINTAINER ServerWorld <admin@srv.world>
--> f2fc42956ea5
STEP 3/7: RUN apt-get update

.....
.....

STEP 6/7: EXPOSE 80
--> 79117f75b19a
STEP 7/7: CMD ["/usr/sbin/nginx", "-g", "daemon off;"]
COMMIT srv.world/ubuntu-nginx:latest
--> 1b1a4d3f4f26
Successfully tagged srv.world/ubuntu-nginx:latest
1b1a4d3f4f26fdac6a7556c81a8cee65bfdbaaeff204ccc700f16b91d83e8dec

root@dlp:~#
podman images

REPOSITORY                TAG         IMAGE ID      CREATED             SIZE
srv.world/ubuntu-nginx    latest      1b1a4d3f4f26  About a minute ago  125 MB
srv.world/ubuntu-apache2  latest      38d508336863  37 minutes ago      226 MB
docker.io/library/ubuntu  latest      bf3dc08bfed0  5 days ago          78.7 MB

# कंटेनर चलाएँ

root@dlp:~#
podman run -d -p 80:80 --security-opt apparmor=unconfined srv.world/ubuntu-nginx

1628817a1fa315f96be582e324daf4fad31bc51f1ef015be6dd3f2d2750fb5fd

root@dlp:~#
podman ps

CONTAINER ID  IMAGE                          COMMAND               CREATED         STATUS         PORTS               NAMES
1628817a1fa3  srv.world/ubuntu-nginx:latest  /usr/sbin/nginx -...  18 seconds ago  Up 18 seconds  0.0.0.0:80->80/tcp  intelligent_chatterjee

# पहुंच सत्यापित करें

root@dlp:~#
curl localhost

Dockerfile Test on Nginx
# कंटेनर नेटवर्क के माध्यम से भी पहुंच संभव है

root@dlp:~#
podman inspect -l | grep \"IPAddress

            "IPAddress": "10.88.0.2",
                    "IPAddress": "10.88.0.2",

root@dlp:~#
curl 10.88.0.2

Dockerfile Test on Nginx
Dockerfile का प्रारूप [निर्देश तर्क] है।
INSTRUCTION के लिए निम्नलिखित विवरण देखें।
INSTRUCTION विवरण
FROM यह बाद के निर्देशों के लिए बेस इमेज सेट करता है।
MAINTAINER यह उत्पन्न छवियों का लेखक फ़ील्ड सेट करता है।
RUN डॉकर छवि बनने पर यह किसी भी कमांड को निष्पादित करेगा।
CMD जब डॉकर कंटेनर निष्पादित होगा तो यह किसी भी कमांड को निष्पादित करेगा।
ENTRYPOINT जब डॉकर कंटेनर निष्पादित होगा तो यह किसी भी कमांड को निष्पादित करेगा।
LABEL यह किसी छवि में मेटाडेटा जोड़ता है।
EXPOSE यह डॉकर को सूचित करता है कि कंटेनर रनटाइम पर निर्दिष्ट नेटवर्क पोर्ट पर सुनेगा।
ENV यह पर्यावरण चर सेट करता है।
ADD यह नई फ़ाइलों, निर्देशिकाओं या दूरस्थ फ़ाइल URL की प्रतिलिपि बनाता है।
COPY यह नई फ़ाइलों या निर्देशिकाओं की प्रतिलिपि बनाता है।
[ADD] का अंतर यह है कि दूरस्थ URL निर्दिष्ट करना असंभव है और यह संग्रह फ़ाइलों को स्वचालित रूप से नहीं निकालेगा।
VOLUME यह निर्दिष्ट नाम के साथ एक माउंट पॉइंट बनाता है और इसे मूल होस्ट या अन्य कंटेनरों से बाहरी रूप से माउंट किए गए वॉल्यूम को रखने के रूप में चिह्नित करता है।
USER यह उपयोगकर्ता नाम या यूआईडी सेट करता है।
WORKDIR यह कार्यशील निर्देशिका सेट करता है।

मिलान सामग्री