ಕನ್ನಡ

ಈ ಸಮಗ್ರ ಮಾರ್ಗದರ್ಶಿಯೊಂದಿಗೆ ಡಾಕರ್‌ನ ಶಕ್ತಿಯನ್ನು ಅನ್ಲಾಕ್ ಮಾಡಿ. ಕಂಟೈನರೈಸೇಶನ್, ಅದರ ಪ್ರಯೋಜನಗಳು, ಪ್ರಮುಖ ಪರಿಕಲ್ಪನೆಗಳು ಮತ್ತು ಜಾಗತಿಕ ಸಾಫ್ಟ್‌ವೇರ್ ಅಭಿವೃದ್ಧಿಗಾಗಿ ಪ್ರಾಯೋಗಿಕ ಅನ್ವಯಗಳ ಬಗ್ಗೆ ತಿಳಿಯಿರಿ.

ಡಾಕರ್ ಕಂಟೈನರೈಸೇಶನ್: ಜಾಗತಿಕ ಡೆವಲಪರ್‌ಗಳಿಗೆ ಒಂದು ಸಂಪೂರ್ಣ ಮಾರ್ಗದರ್ಶಿ

ಇಂದಿನ ವೇಗವಾಗಿ ಬದಲಾಗುತ್ತಿರುವ ತಾಂತ್ರಿಕ ಜಗತ್ತಿನಲ್ಲಿ, ದಕ್ಷ ಮತ್ತು ಸ್ಥಿರವಾದ ಅಪ್ಲಿಕೇಶನ್ ನಿಯೋಜನೆ ಅತ್ಯಂತ ಮುಖ್ಯವಾಗಿದೆ. ನೀವು ಬಹುರಾಷ್ಟ್ರೀಯ ನಿಗಮದ ಭಾಗವಾಗಿರಲಿ ಅಥವಾ ವಿತರಿಸಿದ ಸ್ಟಾರ್ಟ್‌ಅಪ್ ಆಗಿರಲಿ, ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್‌ಗಳು ವಿವಿಧ ಪರಿಸರಗಳಲ್ಲಿ ಸುಗಮವಾಗಿ ಕಾರ್ಯನಿರ್ವಹಿಸುವುದನ್ನು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳುವುದು ಒಂದು ಮಹತ್ವದ ಸವಾಲಾಗಿದೆ. ಇಲ್ಲಿಯೇ ಡಾಕರ್ ಕಂಟೈನರೈಸೇಶನ್ ಬರುತ್ತದೆ, ಇದು ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ಪ್ಯಾಕೇಜ್ ಮಾಡಲು, ವಿತರಿಸಲು ಮತ್ತು ಚಲಾಯಿಸಲು ಒಂದು ಪ್ರಮಾಣಿತ ಮಾರ್ಗವನ್ನು ನೀಡುತ್ತದೆ. ಈ ಸಮಗ್ರ ಮಾರ್ಗದರ್ಶಿ ಡಾಕರ್‌ನ ಪ್ರಮುಖ ಪರಿಕಲ್ಪನೆಗಳು, ಜಾಗತಿಕ ಅಭಿವೃದ್ಧಿ ತಂಡಗಳಿಗೆ ಅದರ ಪ್ರಯೋಜನಗಳು ಮತ್ತು ನೀವು ಪ್ರಾರಂಭಿಸಲು ಪ್ರಾಯೋಗಿಕ ಹಂತಗಳನ್ನು ಪರಿಶೀಲಿಸುತ್ತದೆ.

ಡಾಕರ್ ಎಂದರೇನು ಮತ್ತು ಅದು ಸಾಫ್ಟ್‌ವೇರ್ ಅಭಿವೃದ್ಧಿಯಲ್ಲಿ ಕ್ರಾಂತಿಯನ್ನು ಏಕೆ ಮಾಡುತ್ತಿದೆ?

ಮೂಲತಃ, ಡಾಕರ್ ಒಂದು ಓಪನ್-ಸೋರ್ಸ್ ಪ್ಲಾಟ್‌ಫಾರ್ಮ್ ಆಗಿದೆ, ಇದು ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ಹಗುರವಾದ, ಪೋರ್ಟಬಲ್ ಯೂನಿಟ್‌ಗಳಾದ ಕಂಟೈನರ್‌ಗಳ ಒಳಗೆ ನಿಯೋಜನೆ, ಸ್ಕೇಲಿಂಗ್ ಮತ್ತು ನಿರ್ವಹಣೆಯನ್ನು ಸ್ವಯಂಚಾಲಿತಗೊಳಿಸುತ್ತದೆ. ಒಂದು ಕಂಟೈನರ್ ಅನ್ನು ಸ್ವಯಂ-ಒಳಗೊಂಡಿರುವ ಪ್ಯಾಕೇಜ್ ಎಂದು ಯೋಚಿಸಿ, ಇದರಲ್ಲಿ ಅಪ್ಲಿಕೇಶನ್‌ಗೆ ಚಲಾಯಿಸಲು ಬೇಕಾದ ಎಲ್ಲವೂ ಇರುತ್ತದೆ: ಕೋಡ್, ರನ್‌ಟೈಮ್, ಸಿಸ್ಟಮ್ ಪರಿಕರಗಳು, ಸಿಸ್ಟಮ್ ಲೈಬ್ರರಿಗಳು ಮತ್ತು ಸೆಟ್ಟಿಂಗ್‌ಗಳು. ಈ ಪ್ರತ್ಯೇಕತೆಯು ಅಪ್ಲಿಕೇಶನ್ ಮೂಲಸೌಕರ್ಯವನ್ನು ಲೆಕ್ಕಿಸದೆ ಒಂದೇ ರೀತಿ ವರ್ತಿಸುವುದನ್ನು ಖಚಿತಪಡಿಸುತ್ತದೆ, "ಇದು ನನ್ನ ಯಂತ್ರದಲ್ಲಿ ಕೆಲಸ ಮಾಡುತ್ತದೆ" ಎಂಬ ಹಳೆಯ ಸಮಸ್ಯೆಯನ್ನು ಪರಿಹರಿಸುತ್ತದೆ.

ಸಾಂಪ್ರದಾಯಿಕವಾಗಿ, ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ನಿಯೋಜಿಸುವುದು ಸಂಕೀರ್ಣ ಸಂರಚನೆಗಳು, ಅವಲಂಬನೆ ನಿರ್ವಹಣೆ ಮತ್ತು ವಿವಿಧ ಸಾಫ್ಟ್‌ವೇರ್ ಆವೃತ್ತಿಗಳ ನಡುವಿನ ಸಂಭಾವ್ಯ ಸಂಘರ್ಷಗಳನ್ನು ಒಳಗೊಂಡಿತ್ತು. ಇದು ವಿಶೇಷವಾಗಿ ಜಾಗತಿಕ ತಂಡಗಳಿಗೆ ಸವಾಲಾಗಿತ್ತು, ಅಲ್ಲಿ ಡೆವಲಪರ್‌ಗಳು ವಿಭಿನ್ನ ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್‌ಗಳನ್ನು ಬಳಸುತ್ತಿರಬಹುದು ಅಥವಾ ವಿಭಿನ್ನ ಅಭಿವೃದ್ಧಿ ಪರಿಸರಗಳನ್ನು ಹೊಂದಿರಬಹುದು. ಡಾಕರ್ ಮೂಲಸೌಕರ್ಯವನ್ನು ಅಮೂರ್ತಗೊಳಿಸುವ ಮೂಲಕ ಈ ಸಮಸ್ಯೆಗಳನ್ನು ಸುಲಭವಾಗಿ ಬಗೆಹರಿಸುತ್ತದೆ.

ಜಾಗತಿಕ ತಂಡಗಳಿಗೆ ಡಾಕರ್‌ನ ಪ್ರಮುಖ ಪ್ರಯೋಜನಗಳು:

ಡಾಕರ್‌ನ ಪ್ರಮುಖ ಪರಿಕಲ್ಪನೆಗಳ ವಿವರಣೆ

ಡಾಕರ್ ಅನ್ನು ಪರಿಣಾಮಕಾರಿಯಾಗಿ ಬಳಸಲು, ಅದರ ಮೂಲಭೂತ ಘಟಕಗಳನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು ಅತ್ಯಗತ್ಯ.

1. ಡಾಕರ್ ಇಮೇಜ್

ಡಾಕರ್ ಇಮೇಜ್ ಒಂದು ಓದಲು ಮಾತ್ರ ಸಾಧ್ಯವಿರುವ ಟೆಂಪ್ಲೇಟ್ ಆಗಿದ್ದು, ಇದನ್ನು ಡಾಕರ್ ಕಂಟೈನರ್‌ಗಳನ್ನು ರಚಿಸಲು ಬಳಸಲಾಗುತ್ತದೆ. ಇದು ಮೂಲಭೂತವಾಗಿ ಒಂದು ನಿರ್ದಿಷ್ಟ ಸಮಯದಲ್ಲಿ ಅಪ್ಲಿಕೇಶನ್ ಮತ್ತು ಅದರ ಪರಿಸರದ ಸ್ನ್ಯಾಪ್‌ಶಾಟ್ ಆಗಿದೆ. ಇಮೇಜ್‌ಗಳನ್ನು ಲೇಯರ್‌ಗಳಲ್ಲಿ ನಿರ್ಮಿಸಲಾಗಿದೆ, ಅಲ್ಲಿ ಡಾಕರ್‌ಫೈಲ್‌ನಲ್ಲಿನ ಪ್ರತಿಯೊಂದು ಸೂಚನೆಯು (ಉದಾಹರಣೆಗೆ, ಪ್ಯಾಕೇಜ್ ಸ್ಥಾಪಿಸುವುದು, ಫೈಲ್‌ಗಳನ್ನು ನಕಲಿಸುವುದು) ಹೊಸ ಲೇಯರ್ ಅನ್ನು ರಚಿಸುತ್ತದೆ. ಈ ಲೇಯರ್ಡ್ ವಿಧಾನವು ದಕ್ಷ ಸಂಗ್ರಹಣೆ ಮತ್ತು ವೇಗದ ನಿರ್ಮಾಣ ಸಮಯಗಳಿಗೆ ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ, ಏಕೆಂದರೆ ಡಾಕರ್ ಹಿಂದಿನ ನಿರ್ಮಾಣಗಳಿಂದ ಬದಲಾಗದ ಲೇಯರ್‌ಗಳನ್ನು ಮರುಬಳಕೆ ಮಾಡಬಹುದು.

ಇಮೇಜ್‌ಗಳನ್ನು ರಿಜಿಸ್ಟ್ರಿಗಳಲ್ಲಿ ಸಂಗ್ರಹಿಸಲಾಗುತ್ತದೆ, ಡಾಕರ್ ಹಬ್ ಅತ್ಯಂತ ಜನಪ್ರಿಯ ಸಾರ್ವಜನಿಕ ರಿಜಿಸ್ಟ್ರಿಯಾಗಿದೆ. ನೀವು ಇಮೇಜ್ ಅನ್ನು ನೀಲನಕ್ಷೆ ಎಂದು ಮತ್ತು ಕಂಟೈನರ್ ಅನ್ನು ಆ ನೀಲನಕ್ಷೆಯ ಒಂದು ಉದಾಹರಣೆ ಎಂದು ಭಾವಿಸಬಹುದು.

2. ಡಾಕರ್‌ಫೈಲ್

ಡಾಕರ್‌ಫೈಲ್ ಒಂದು ಸರಳ ಪಠ್ಯ ಫೈಲ್ ಆಗಿದ್ದು, ಇದು ಡಾಕರ್ ಇಮೇಜ್ ಅನ್ನು ನಿರ್ಮಿಸಲು ಸೂಚನೆಗಳ ಗುಂಪನ್ನು ಹೊಂದಿರುತ್ತದೆ. ಇದು ಬಳಸಬೇಕಾದ ಮೂಲ ಇಮೇಜ್, ಕಾರ್ಯಗತಗೊಳಿಸಬೇಕಾದ ಆದೇಶಗಳು, ನಕಲಿಸಬೇಕಾದ ಫೈಲ್‌ಗಳು, ಬಹಿರಂಗಪಡಿಸಬೇಕಾದ ಪೋರ್ಟ್‌ಗಳು ಮತ್ತು ಹೆಚ್ಚಿನದನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸುತ್ತದೆ. ಡಾಕರ್ ಡಾಕರ್‌ಫೈಲ್ ಅನ್ನು ಓದುತ್ತದೆ ಮತ್ತು ಇಮೇಜ್ ರಚಿಸಲು ಈ ಸೂಚನೆಗಳನ್ನು ಅನುಕ್ರಮವಾಗಿ ಕಾರ್ಯಗತಗೊಳಿಸುತ್ತದೆ.

ಒಂದು ಸರಳ ಡಾಕರ್‌ಫೈಲ್ ಈ ರೀತಿ ಕಾಣಿಸಬಹುದು:

# ಅಧಿಕೃತ ಪೈಥಾನ್ ರನ್‌ಟೈಮ್ ಅನ್ನು ಪೇರೆಂಟ್ ಇಮೇಜ್ ಆಗಿ ಬಳಸಿ
FROM python:3.9-slim

# ಕಂಟೈನರ್‌ನಲ್ಲಿ ವರ್ಕಿಂಗ್ ಡೈರೆಕ್ಟರಿಯನ್ನು ಸೆಟ್ ಮಾಡಿ
WORKDIR /app

# ಪ್ರಸ್ತುತ ಡೈರೆಕ್ಟರಿಯ ವಿಷಯಗಳನ್ನು ಕಂಟೈನರ್‌ನ /app ನಲ್ಲಿ ನಕಲಿಸಿ
COPY . /app

# requirements.txt ನಲ್ಲಿ ನಿರ್ದಿಷ್ಟಪಡಿಸಿದ ಯಾವುದೇ ಅಗತ್ಯ ಪ್ಯಾಕೇಜ್‌ಗಳನ್ನು ಸ್ಥಾಪಿಸಿ
RUN pip install --no-cache-dir -r requirements.txt

# ಈ ಕಂಟೈನರ್‌ನ ಹೊರಗಿನ ಜಗತ್ತಿಗೆ ಪೋರ್ಟ್ 80 ಅನ್ನು ಲಭ್ಯವಾಗುವಂತೆ ಮಾಡಿ
EXPOSE 80

# ಕಂಟೈನರ್ ಪ್ರಾರಂಭವಾದಾಗ app.py ಅನ್ನು ರನ್ ಮಾಡಿ
CMD ["python", "app.py"]

ಈ ಡಾಕರ್‌ಫೈಲ್ ಒಂದು ಇಮೇಜ್ ಅನ್ನು ವ್ಯಾಖ್ಯಾನಿಸುತ್ತದೆ, ಅದು:

3. ಡಾಕರ್ ಕಂಟೈನರ್

ಡಾಕರ್ ಕಂಟೈನರ್ ಒಂದು ಡಾಕರ್ ಇಮೇಜ್‌ನ ಚಲಾಯಿಸಬಹುದಾದ ಉದಾಹರಣೆಯಾಗಿದೆ. ನೀವು ಡಾಕರ್ ಇಮೇಜ್ ಅನ್ನು ಚಲಾಯಿಸಿದಾಗ, ಅದು ಕಂಟೈನರ್ ಅನ್ನು ರಚಿಸುತ್ತದೆ. ನೀವು ಕಂಟೈನರ್‌ಗಳನ್ನು ಪ್ರಾರಂಭಿಸಬಹುದು, ನಿಲ್ಲಿಸಬಹುದು, ಸರಿಸಬಹುದು ಮತ್ತು ಅಳಿಸಬಹುದು. ಒಂದೇ ಇಮೇಜ್‌ನಿಂದ ಅನೇಕ ಕಂಟೈನರ್‌ಗಳನ್ನು ಚಲಾಯಿಸಬಹುದು, ಪ್ರತಿಯೊಂದೂ ಪ್ರತ್ಯೇಕವಾಗಿ ಚಲಿಸುತ್ತದೆ.

ಕಂಟೈನರ್‌ಗಳ ಪ್ರಮುಖ ಗುಣಲಕ್ಷಣಗಳು:

4. ಡಾಕರ್ ರಿಜಿಸ್ಟ್ರಿ

ಡಾಕರ್ ರಿಜಿಸ್ಟ್ರಿ ಎಂಬುದು ಡಾಕರ್ ಇಮೇಜ್‌ಗಳನ್ನು ಸಂಗ್ರಹಿಸಲು ಮತ್ತು ವಿತರಿಸಲು ಇರುವ ಒಂದು ಭಂಡಾರವಾಗಿದೆ. ಡಾಕರ್ ಹಬ್ ಡೀಫಾಲ್ಟ್ ಸಾರ್ವಜನಿಕ ರಿಜಿಸ್ಟ್ರಿಯಾಗಿದ್ದು, ಅಲ್ಲಿ ನೀವು ವಿವಿಧ ಪ್ರೋಗ್ರಾಮಿಂಗ್ ಭಾಷೆಗಳು, ಡೇಟಾಬೇಸ್‌ಗಳು ಮತ್ತು ಅಪ್ಲಿಕೇಶನ್‌ಗಳಿಗಾಗಿ ಮೊದಲೇ ನಿರ್ಮಿಸಲಾದ ಇಮೇಜ್‌ಗಳ ದೊಡ್ಡ ಸಂಗ್ರಹವನ್ನು ಕಾಣಬಹುದು. ನಿಮ್ಮ ಸಂಸ್ಥೆಯ ಸ್ವಾಮ್ಯದ ಇಮೇಜ್‌ಗಳಿಗಾಗಿ ನೀವು ಖಾಸಗಿ ರಿಜಿಸ್ಟ್ರಿಗಳನ್ನು ಸಹ ಸ್ಥಾಪಿಸಬಹುದು.

ನೀವು docker run ubuntu ನಂತಹ ಆಜ್ಞೆಯನ್ನು ಚಲಾಯಿಸಿದಾಗ, ಡಾಕರ್ ಮೊದಲು ನಿಮ್ಮ ಸ್ಥಳೀಯ ಯಂತ್ರದಲ್ಲಿ ಉಬುಂಟು ಇಮೇಜ್‌ಗಾಗಿ ಪರಿಶೀಲಿಸುತ್ತದೆ. ಅದು ಕಂಡುಬರದಿದ್ದರೆ, ಅದು ಕಾನ್ಫಿಗರ್ ಮಾಡಲಾದ ರಿಜಿಸ್ಟ್ರಿಯಿಂದ (ಡೀಫಾಲ್ಟ್ ಆಗಿ, ಡಾಕರ್ ಹಬ್) ಇಮೇಜ್ ಅನ್ನು ಎಳೆಯುತ್ತದೆ.

5. ಡಾಕರ್ ಎಂಜಿನ್

ಡಾಕರ್ ಎಂಜಿನ್ ಡಾಕರ್ ಕಂಟೈನರ್‌ಗಳನ್ನು ನಿರ್ಮಿಸುವ ಮತ್ತು ಚಲಾಯಿಸುವ ಆಧಾರವಾಗಿರುವ ಕ್ಲೈಂಟ್-ಸರ್ವರ್ ತಂತ್ರಜ್ಞಾನವಾಗಿದೆ. ಇದು ಒಳಗೊಂಡಿದೆ:

ಡಾಕರ್‌ನೊಂದಿಗೆ ಪ್ರಾರಂಭಿಸುವುದು: ಒಂದು ಪ್ರಾಯೋಗಿಕ ನಡಿಗೆ

ಕೆಲವು ಅಗತ್ಯ ಡಾಕರ್ ಆಜ್ಞೆಗಳು ಮತ್ತು ಸಾಮಾನ್ಯ ಬಳಕೆಯ ಪ್ರಕರಣವನ್ನು ನೋಡೋಣ.

ಅನುಸ್ಥಾಪನೆ

ಮೊದಲ ಹಂತವೆಂದರೆ ನಿಮ್ಮ ಯಂತ್ರದಲ್ಲಿ ಡಾಕರ್ ಅನ್ನು ಸ್ಥಾಪಿಸುವುದು. ಅಧಿಕೃತ ಡಾಕರ್ ವೆಬ್‌ಸೈಟ್‌ಗೆ ([docker.com](https://www.docker.com/)) ಭೇಟಿ ನೀಡಿ ಮತ್ತು ನಿಮ್ಮ ಆಪರೇಟಿಂಗ್ ಸಿಸ್ಟಮ್‌ಗೆ (ವಿಂಡೋಸ್, ಮ್ಯಾಕೋಎಸ್, ಅಥವಾ ಲಿನಕ್ಸ್) ಸೂಕ್ತವಾದ ಅನುಸ್ಥಾಪಕವನ್ನು ಡೌನ್‌ಲೋಡ್ ಮಾಡಿ. ನಿಮ್ಮ ಪ್ಲಾಟ್‌ಫಾರ್ಮ್‌ಗಾಗಿ ಅನುಸ್ಥಾಪನಾ ಸೂಚನೆಗಳನ್ನು ಅನುಸರಿಸಿ.

ಮೂಲಭೂತ ಡಾಕರ್ ಆಜ್ಞೆಗಳು

ನೀವು ನಿಯಮಿತವಾಗಿ ಬಳಸುವ ಕೆಲವು ಮೂಲಭೂತ ಆಜ್ಞೆಗಳು ಇಲ್ಲಿವೆ:

ಉದಾಹರಣೆ: ಒಂದು ಸರಳ ವೆಬ್ ಸರ್ವರ್ ಅನ್ನು ಚಲಾಯಿಸುವುದು

ಫ್ಲಾಸ್ಕ್ ಫ್ರೇಮ್‌ವರ್ಕ್ ಬಳಸಿ ಮೂಲಭೂತ ಪೈಥಾನ್ ವೆಬ್ ಸರ್ವರ್ ಅನ್ನು ಕಂಟೈನರೈಸ್ ಮಾಡೋಣ.

1. ಪ್ರಾಜೆಕ್ಟ್ ಸೆಟಪ್:

ನಿಮ್ಮ ಪ್ರಾಜೆಕ್ಟ್‌ಗಾಗಿ ಡೈರೆಕ್ಟರಿಯನ್ನು ರಚಿಸಿ. ಈ ಡೈರೆಕ್ಟರಿಯೊಳಗೆ, ಎರಡು ಫೈಲ್‌ಗಳನ್ನು ರಚಿಸಿ:

app.py:

from flask import Flask

app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello from a Dockerized Flask App!'

if __name__ == '__main__':
    app.run(debug=True, host='0.0.0.0', port=80)

requirements.txt:

Flask==2.0.0

2. ಡಾಕರ್‌ಫೈಲ್ ರಚಿಸಿ:

ಅದೇ ಪ್ರಾಜೆಕ್ಟ್ ಡೈರೆಕ್ಟರಿಯಲ್ಲಿ, ಈ ಕೆಳಗಿನ ವಿಷಯದೊಂದಿಗೆ Dockerfile (ವಿಸ್ತರಣೆ ಇಲ್ಲ) ಹೆಸರಿನ ಫೈಲ್ ಅನ್ನು ರಚಿಸಿ:

FROM python:3.9-slim

WORKDIR /app

COPY requirements.txt .
RUN pip install --no-cache-dir -r requirements.txt

COPY . .

EXPOSE 80

CMD ["python", "app.py"]

3. ಡಾಕರ್ ಇಮೇಜ್ ನಿರ್ಮಿಸಿ:

ನಿಮ್ಮ ಟರ್ಮಿನಲ್ ತೆರೆಯಿರಿ, ಪ್ರಾಜೆಕ್ಟ್ ಡೈರೆಕ್ಟರಿಗೆ ನ್ಯಾವಿಗೇಟ್ ಮಾಡಿ ಮತ್ತು ಚಲಾಯಿಸಿ:

docker build -t my-flask-app:latest .

ಈ ಆಜ್ಞೆಯು ಡಾಕರ್‌ಗೆ ಪ್ರಸ್ತುತ ಡೈರೆಕ್ಟರಿಯಲ್ಲಿನ Dockerfile ಬಳಸಿ ಇಮೇಜ್ ಅನ್ನು ನಿರ್ಮಿಸಲು ಮತ್ತು ಅದನ್ನು my-flask-app:latest ಎಂದು ಟ್ಯಾಗ್ ಮಾಡಲು ಹೇಳುತ್ತದೆ.

4. ಡಾಕರ್ ಕಂಟೈನರ್ ಅನ್ನು ಚಲಾಯಿಸಿ:

ಈಗ, ನೀವು ಈಗಷ್ಟೇ ನಿರ್ಮಿಸಿದ ಇಮೇಜ್‌ನಿಂದ ಕಂಟೈನರ್ ಅನ್ನು ಚಲಾಯಿಸಿ:

docker run -d -p 5000:80 my-flask-app:latest

ಫ್ಲ್ಯಾಗ್‌ಗಳ ವಿವರಣೆ:

5. ಅಪ್ಲಿಕೇಶನ್ ಪರೀಕ್ಷಿಸಿ:

ನಿಮ್ಮ ವೆಬ್ ಬ್ರೌಸರ್ ತೆರೆಯಿರಿ ಮತ್ತು http://localhost:5000 ಗೆ ನ್ಯಾವಿಗೇಟ್ ಮಾಡಿ. ನೀವು "Hello from a Dockerized Flask App!" ಎಂಬ ಸಂದೇಶವನ್ನು ನೋಡಬೇಕು.

ಕಂಟೈನರ್ ಚಾಲನೆಯಲ್ಲಿರುವುದನ್ನು ನೋಡಲು, docker ps ಬಳಸಿ. ಅದನ್ನು ನಿಲ್ಲಿಸಲು, docker stop <container_id> ಬಳಸಿ (<container_id> ಅನ್ನು docker ps ತೋರಿಸಿದ ಐಡಿಯೊಂದಿಗೆ ಬದಲಾಯಿಸಿ).

ಜಾಗತಿಕ ನಿಯೋಜನೆಗಾಗಿ ಸುಧಾರಿತ ಡಾಕರ್ ಪರಿಕಲ್ಪನೆಗಳು

ನಿಮ್ಮ ಯೋಜನೆಗಳು ಬೆಳೆದಂತೆ ಮತ್ತು ನಿಮ್ಮ ತಂಡಗಳು ಹೆಚ್ಚು ವಿತರಿಸಲ್ಪಟ್ಟಂತೆ, ನೀವು ಹೆಚ್ಚು ಸುಧಾರಿತ ಡಾಕರ್ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಅನ್ವೇಷಿಸಲು ಬಯಸುತ್ತೀರಿ.

ಡಾಕರ್ ಕಂಪೋಸ್

ಬಹು ಸೇವೆಗಳಿಂದ ಕೂಡಿದ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಿಗಾಗಿ (ಉದಾ., ವೆಬ್ ಫ್ರಂಟ್-ಎಂಡ್, ಬ್ಯಾಕೆಂಡ್ API ಮತ್ತು ಡೇಟಾಬೇಸ್), ಪ್ರತ್ಯೇಕ ಕಂಟೈನರ್‌ಗಳನ್ನು ನಿರ್ವಹಿಸುವುದು ತೊಡಕಾಗಬಹುದು. ಡಾಕರ್ ಕಂಪೋಸ್ ಬಹು-ಕಂಟೈನರ್ ಡಾಕರ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ವ್ಯಾಖ್ಯಾನಿಸಲು ಮತ್ತು ಚಲಾಯಿಸಲು ಒಂದು ಸಾಧನವಾಗಿದೆ. ನೀವು ನಿಮ್ಮ ಅಪ್ಲಿಕೇಶನ್‌ನ ಸೇವೆಗಳು, ನೆಟ್‌ವರ್ಕ್‌ಗಳು ಮತ್ತು ವಾಲ್ಯೂಮ್‌ಗಳನ್ನು YAML ಫೈಲ್‌ನಲ್ಲಿ (docker-compose.yml) ವ್ಯಾಖ್ಯಾನಿಸುತ್ತೀರಿ, ಮತ್ತು ಒಂದೇ ಆಜ್ಞೆಯೊಂದಿಗೆ, ನಿಮ್ಮ ಎಲ್ಲಾ ಸೇವೆಗಳನ್ನು ರಚಿಸಬಹುದು ಮತ್ತು ಪ್ರಾರಂಭಿಸಬಹುದು.

ರೆಡಿಸ್ ಕ್ಯಾಶ್‌ನೊಂದಿಗೆ ಸರಳ ವೆಬ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಾಗಿ ಮಾದರಿ docker-compose.yml ಈ ರೀತಿ ಕಾಣಿಸಬಹುದು:

version: '3.8'
services:
  web:
    build: .
    ports:
      - "5000:80"
    volumes:
      - .:/app
    depends_on:
      - redis
  redis:
    image: "redis:alpine"

ಈ ಫೈಲ್‌ನೊಂದಿಗೆ, ನೀವು docker-compose up ನೊಂದಿಗೆ ಎರಡೂ ಸೇವೆಗಳನ್ನು ಪ್ರಾರಂಭಿಸಬಹುದು.

ನಿರಂತರ ಡೇಟಾಗಾಗಿ ವಾಲ್ಯೂಮ್‌ಗಳು

ಹೇಳಿದಂತೆ, ಕಂಟೈನರ್‌ಗಳು ಅಲ್ಪಕಾಲಿಕ. ನೀವು ಡೇಟಾಬೇಸ್ ಅನ್ನು ಚಲಾಯಿಸುತ್ತಿದ್ದರೆ, ಕಂಟೈನರ್‌ನ ಜೀವನಚಕ್ರವನ್ನು ಮೀರಿ ಡೇಟಾವನ್ನು ಉಳಿಸಲು ನೀವು ಬಯಸುತ್ತೀರಿ. ಡಾಕರ್ ವಾಲ್ಯೂಮ್‌ಗಳು ಡಾಕರ್ ಕಂಟೈನರ್‌ಗಳಿಂದ ಉತ್ಪತ್ತಿಯಾಗುವ ಮತ್ತು ಬಳಸಲಾಗುವ ಡೇಟಾವನ್ನು ಉಳಿಸಲು ಆದ್ಯತೆಯ ಕಾರ್ಯವಿಧಾನವಾಗಿದೆ. ವಾಲ್ಯೂಮ್‌ಗಳನ್ನು ಡಾಕರ್ ನಿರ್ವಹಿಸುತ್ತದೆ ಮತ್ತು ಕಂಟೈನರ್‌ನ ಬರೆಯಬಹುದಾದ ಲೇಯರ್‌ನ ಹೊರಗೆ ಸಂಗ್ರಹಿಸಲಾಗುತ್ತದೆ.

ಕಂಟೈನರ್ ಚಲಾಯಿಸುವಾಗ ವಾಲ್ಯೂಮ್ ಅನ್ನು ಲಗತ್ತಿಸಲು:

docker run -v my-data-volume:/var/lib/mysql mysql:latest

ಈ ಆಜ್ಞೆಯು my-data-volume ಎಂಬ ವಾಲ್ಯೂಮ್ ಅನ್ನು ರಚಿಸುತ್ತದೆ ಮತ್ತು ಅದನ್ನು MySQL ಕಂಟೈನರ್‌ನೊಳಗಿನ /var/lib/mysql ಗೆ ಮೌಂಟ್ ಮಾಡುತ್ತದೆ, ನಿಮ್ಮ ಡೇಟಾಬೇಸ್ ಡೇಟಾ ಉಳಿಯುವುದನ್ನು ಖಚಿತಪಡಿಸುತ್ತದೆ.

ಡಾಕರ್ ನೆಟ್‌ವರ್ಕ್‌ಗಳು

ಡೀಫಾಲ್ಟ್ ಆಗಿ, ಪ್ರತಿ ಡಾಕರ್ ಕಂಟೈನರ್ ತನ್ನದೇ ಆದ ನೆಟ್‌ವರ್ಕ್ ನೇಮ್‌ಸ್ಪೇಸ್ ಅನ್ನು ಪಡೆಯುತ್ತದೆ. ಕಂಟೈನರ್‌ಗಳ ನಡುವೆ ಸಂವಹನವನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು, ನೀವು ನೆಟ್‌ವರ್ಕ್ ಅನ್ನು ರಚಿಸಬೇಕು ಮತ್ತು ನಿಮ್ಮ ಕಂಟೈನರ್‌ಗಳನ್ನು ಅದಕ್ಕೆ ಲಗತ್ತಿಸಬೇಕು. ಡಾಕರ್ ಹಲವಾರು ನೆಟ್‌ವರ್ಕಿಂಗ್ ಡ್ರೈವರ್‌ಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ, ಒಂದೇ-ಹೋಸ್ಟ್ ನಿಯೋಜನೆಗಳಿಗೆ bridge ನೆಟ್‌ವರ್ಕ್ ಅತ್ಯಂತ ಸಾಮಾನ್ಯವಾಗಿದೆ.

ನೀವು ಡಾಕರ್ ಕಂಪೋಸ್ ಅನ್ನು ಬಳಸಿದಾಗ, ಅದು ನಿಮ್ಮ ಸೇವೆಗಳಿಗಾಗಿ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಡೀಫಾಲ್ಟ್ ನೆಟ್‌ವರ್ಕ್ ಅನ್ನು ರಚಿಸುತ್ತದೆ, ಅವುಗಳು ತಮ್ಮ ಸೇವಾ ಹೆಸರುಗಳನ್ನು ಬಳಸಿಕೊಂಡು ಸಂವಹನ ನಡೆಸಲು ಅನುವು ಮಾಡಿಕೊಡುತ್ತದೆ.

ಡಾಕರ್ ಹಬ್ ಮತ್ತು ಖಾಸಗಿ ರಿಜಿಸ್ಟ್ರಿಗಳು

ನಿಮ್ಮ ತಂಡದೊಳಗೆ ಅಥವಾ ಸಾರ್ವಜನಿಕರೊಂದಿಗೆ ಇಮೇಜ್‌ಗಳನ್ನು ಹಂಚಿಕೊಳ್ಳಲು ಡಾಕರ್ ಹಬ್ ಅನ್ನು ಬಳಸಿಕೊಳ್ಳುವುದು ನಿರ್ಣಾಯಕವಾಗಿದೆ. ಸ್ವಾಮ್ಯದ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಿಗಾಗಿ, ಭದ್ರತೆ ಮತ್ತು ನಿಯಂತ್ರಿತ ಪ್ರವೇಶಕ್ಕಾಗಿ ಖಾಸಗಿ ರಿಜಿಸ್ಟ್ರಿಯನ್ನು ಸ್ಥಾಪಿಸುವುದು ಅತ್ಯಗತ್ಯ. ಅಮೆಜಾನ್ ಎಲಾಸ್ಟಿಕ್ ಕಂಟೈನರ್ ರಿಜಿಸ್ಟ್ರಿ (ECR), ಗೂಗಲ್ ಕಂಟೈನರ್ ರಿಜಿಸ್ಟ್ರಿ (GCR), ಮತ್ತು ಅಜುರೆ ಕಂಟೈನರ್ ರಿಜಿಸ್ಟ್ರಿ (ACR) ನಂತಹ ಕ್ಲೌಡ್ ಪೂರೈಕೆದಾರರು ನಿರ್ವಹಿಸಲಾದ ಖಾಸಗಿ ರಿಜಿಸ್ಟ್ರಿ ಸೇವೆಗಳನ್ನು ನೀಡುತ್ತಾರೆ.

ಭದ್ರತಾ ಅತ್ಯುತ್ತಮ ಅಭ್ಯಾಸಗಳು

ಡಾಕರ್ ಪ್ರತ್ಯೇಕತೆಯನ್ನು ಒದಗಿಸಿದರೂ, ಭದ್ರತೆಯು ನಿರಂತರ ಕಾಳಜಿಯಾಗಿದೆ, ವಿಶೇಷವಾಗಿ ಜಾಗತಿಕ ಸಂದರ್ಭದಲ್ಲಿ:

ಜಾಗತಿಕ ಸಂದರ್ಭದಲ್ಲಿ ಡಾಕರ್: ಮೈಕ್ರೋಸರ್ವಿಸಸ್ ಮತ್ತು CI/CD

ಡಾಕರ್ ಆಧುನಿಕ ಸಾಫ್ಟ್‌ವೇರ್ ಆರ್ಕಿಟೆಕ್ಚರ್‌ನ ಮೂಲಾಧಾರವಾಗಿದೆ, ವಿಶೇಷವಾಗಿ ಮೈಕ್ರೋಸರ್ವಿಸಸ್ ಮತ್ತು ನಿರಂತರ ಏಕೀಕರಣ/ನಿರಂತರ ನಿಯೋಜನೆ (CI/CD) ಪೈಪ್‌ಲೈನ್‌ಗಳಿಗೆ.

ಮೈಕ್ರೋಸರ್ವಿಸಸ್ ಆರ್ಕಿಟೆಕ್ಚರ್

ಮೈಕ್ರೋಸರ್ವಿಸಸ್ ಒಂದು ದೊಡ್ಡ ಅಪ್ಲಿಕೇಶನ್ ಅನ್ನು ನೆಟ್‌ವರ್ಕ್ ಮೂಲಕ ಸಂವಹನ ನಡೆಸುವ ಸಣ್ಣ, ಸ್ವತಂತ್ರ ಸೇವೆಗಳಾಗಿ ವಿಭಜಿಸುತ್ತದೆ. ಪ್ರತಿ ಮೈಕ್ರೋಸರ್ವಿಸ್ ಅನ್ನು ಸ್ವತಂತ್ರವಾಗಿ ಅಭಿವೃದ್ಧಿಪಡಿಸಬಹುದು, ನಿಯೋಜಿಸಬಹುದು ಮತ್ತು ಅಳೆಯಬಹುದು. ಡಾಕರ್ ಈ ಆರ್ಕಿಟೆಕ್ಚರ್‌ಗೆ ಸೂಕ್ತವಾಗಿದೆ:

CI/CD ಪೈಪ್‌ಲೈನ್‌ಗಳು

CI/CD ಸಾಫ್ಟ್‌ವೇರ್ ವಿತರಣಾ ಪ್ರಕ್ರಿಯೆಯನ್ನು ಸ್ವಯಂಚಾಲಿತಗೊಳಿಸುತ್ತದೆ, ಆಗಾಗ್ಗೆ ಮತ್ತು ವಿಶ್ವಾಸಾರ್ಹ ಅಪ್ಲಿಕೇಶನ್ ನವೀಕರಣಗಳನ್ನು ಸಕ್ರಿಯಗೊಳಿಸುತ್ತದೆ. CI/CD ಯಲ್ಲಿ ಡಾಕರ್ ಪ್ರಮುಖ ಪಾತ್ರ ವಹಿಸುತ್ತದೆ:

ಅಂತಾರಾಷ್ಟ್ರೀಕರಣ ಮತ್ತು ಸ್ಥಳೀಕರಣ ಪರಿಗಣನೆಗಳು

ಜಾಗತಿಕ ಅಪ್ಲಿಕೇಶನ್‌ಗಳಿಗಾಗಿ, ಡಾಕರ್ ಅಂತಾರಾಷ್ಟ್ರೀಕರಣ (i18n) ಮತ್ತು ಸ್ಥಳೀಕರಣ (l10n) ದ ಅಂಶಗಳನ್ನು ಸಹ ಸರಳಗೊಳಿಸಬಹುದು:

ಕಂಟೈನರ್‌ಗಳ ಆರ್ಕೆಸ್ಟ್ರೇಶನ್: ಕುಬರ್ನೆಟೀಸ್‌ನ ಪಾತ್ರ

ಡಾಕರ್ ವೈಯಕ್ತಿಕ ಕಂಟೈನರ್‌ಗಳನ್ನು ಪ್ಯಾಕೇಜ್ ಮಾಡಲು ಮತ್ತು ಚಲಾಯಿಸಲು ಅತ್ಯುತ್ತಮವಾಗಿದ್ದರೂ, ಅನೇಕ ಯಂತ್ರಗಳಲ್ಲಿ ಹೆಚ್ಚಿನ ಸಂಖ್ಯೆಯ ಕಂಟೈನರ್‌ಗಳನ್ನು ನಿರ್ವಹಿಸಲು ಆರ್ಕೆಸ್ಟ್ರೇಶನ್ ಅಗತ್ಯವಿದೆ. ಇಲ್ಲಿಯೇ ಕುಬರ್ನೆಟೀಸ್ ನಂತಹ ಪರಿಕರಗಳು ಮಿಂಚುತ್ತವೆ. ಕುಬರ್ನೆಟೀಸ್ ಕಂಟೈನರೈಸ್ಡ್ ಅಪ್ಲಿಕೇಶನ್‌ಗಳ ನಿಯೋಜನೆ, ಸ್ಕೇಲಿಂಗ್ ಮತ್ತು ನಿರ್ವಹಣೆಯನ್ನು ಸ್ವಯಂಚಾಲಿತಗೊಳಿಸಲು ಒಂದು ಓಪನ್-ಸೋರ್ಸ್ ವ್ಯವಸ್ಥೆಯಾಗಿದೆ. ಇದು ಲೋಡ್ ಬ್ಯಾಲೆನ್ಸಿಂಗ್, ಸ್ವಯಂ-ಚಿಕಿತ್ಸೆ, ಸೇವಾ ಅನ್ವೇಷಣೆ, ಮತ್ತು ರೋಲಿಂಗ್ ನವೀಕರಣಗಳಂತಹ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ, ಇದು ಸಂಕೀರ್ಣ, ವಿತರಿಸಿದ ವ್ಯವಸ್ಥೆಗಳನ್ನು ನಿರ್ವಹಿಸಲು ಅನಿವಾರ್ಯವಾಗಿಸುತ್ತದೆ.

ಅನೇಕ ಸಂಸ್ಥೆಗಳು ತಮ್ಮ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ನಿರ್ಮಿಸಲು ಮತ್ತು ಪ್ಯಾಕೇಜ್ ಮಾಡಲು ಡಾಕರ್ ಅನ್ನು ಬಳಸುತ್ತವೆ ಮತ್ತು ನಂತರ ಆ ಡಾಕರ್ ಕಂಟೈನರ್‌ಗಳನ್ನು ಉತ್ಪಾದನಾ ಪರಿಸರದಲ್ಲಿ ನಿಯೋಜಿಸಲು, ಅಳೆಯಲು ಮತ್ತು ನಿರ್ವಹಿಸಲು ಕುಬರ್ನೆಟೀಸ್ ಅನ್ನು ಬಳಸುತ್ತವೆ.

ತೀರ್ಮಾನ

ಡಾಕರ್ ನಾವು ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ನಿರ್ಮಿಸುವ, ಸಾಗಿಸುವ ಮತ್ತು ಚಲಾಯಿಸುವ ವಿಧಾನವನ್ನು ಮೂಲಭೂತವಾಗಿ ಬದಲಾಯಿಸಿದೆ. ಜಾಗತಿಕ ಅಭಿವೃದ್ಧಿ ತಂಡಗಳಿಗೆ, ವಿವಿಧ ಪರಿಸರಗಳಲ್ಲಿ ಸ್ಥಿರತೆ, ಪೋರ್ಟೆಬಿಲಿಟಿ ಮತ್ತು ದಕ್ಷತೆಯನ್ನು ಒದಗಿಸುವ ಅದರ ಸಾಮರ್ಥ್ಯವು ಅಮೂಲ್ಯವಾಗಿದೆ. ಡಾಕರ್ ಮತ್ತು ಅದರ ಪ್ರಮುಖ ಪರಿಕಲ್ಪನೆಗಳನ್ನು ಅಳವಡಿಸಿಕೊಳ್ಳುವ ಮೂಲಕ, ನೀವು ನಿಮ್ಮ ಅಭಿವೃದ್ಧಿ ಕಾರ್ಯಪ್ರವಾಹಗಳನ್ನು ಸುಗಮಗೊಳಿಸಬಹುದು, ನಿಯೋಜನೆಯ ಘರ್ಷಣೆಯನ್ನು ಕಡಿಮೆ ಮಾಡಬಹುದು ಮತ್ತು ವಿಶ್ವಾದ್ಯಂತ ಬಳಕೆದಾರರಿಗೆ ವಿಶ್ವಾಸಾರ್ಹ ಅಪ್ಲಿಕೇಶನ್‌ಗಳನ್ನು ತಲುಪಿಸಬಹುದು.

ಸರಳ ಅಪ್ಲಿಕೇಶನ್‌ಗಳೊಂದಿಗೆ ಪ್ರಯೋಗವನ್ನು ಪ್ರಾರಂಭಿಸಿ, ಮತ್ತು ಕ್ರಮೇಣ ಡಾಕರ್ ಕಂಪೋಸ್ ಮತ್ತು CI/CD ಪೈಪ್‌ಲೈನ್‌ಗಳೊಂದಿಗೆ ಏಕೀಕರಣದಂತಹ ಸುಧಾರಿತ ವೈಶಿಷ್ಟ್ಯಗಳನ್ನು ಅನ್ವೇಷಿಸಿ. ಕಂಟೈನರೈಸೇಶನ್ ಕ್ರಾಂತಿ ಇಲ್ಲಿದೆ, ಮತ್ತು ಜಾಗತಿಕ ತಂತ್ರಜ್ಞಾನ ರಂಗದಲ್ಲಿ ಯಶಸ್ವಿಯಾಗಲು ಬಯಸುವ ಯಾವುದೇ ಆಧುನಿಕ ಡೆವಲಪರ್ ಅಥವಾ ಡೆವ್‌ಆಪ್ಸ್ ವೃತ್ತಿಪರರಿಗೆ ಡಾಕರ್ ಅನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು ಒಂದು ನಿರ್ಣಾಯಕ ಕೌಶಲ್ಯವಾಗಿದೆ.