Docker அறிமுக வழிகாட்டி: உங்கள் பயன்பாடுகளைக் கொள்கலனாக்குவதில் விரைவாகத் தொடங்குங்கள்
Docker அறிமுக வழிகாட்டி: உங்கள் பயன்பாடுகளைக் கொள்கலனாக்குவதில் விரைவாகத் தொடங்குங்கள்
Docker நவீன மென்பொருள் மேம்பாடு மற்றும் வரிசைப்படுத்தலில் இன்றியமையாத பகுதியாகிவிட்டது. Kubernetes ஐச் சுற்றியுள்ள விவாதங்கள் அதிகமாக இருந்தாலும், பல நிறுவனங்கள் தங்கள் பயன்பாடுகளை உருவாக்க, சோதிக்க மற்றும் வரிசைப்படுத்த Docker ஐ இன்னும் விருப்பமான கருவியாகக் கருதுகின்றன. இந்தக் கட்டுரை Docker ஐ விரைவாகத் தொடங்க உங்களுக்கு உதவும், அதன் முக்கிய கருத்துகளைப் புரிந்துகொள்ளவும், உங்கள் பயன்பாடுகளைக் கொள்கலனாக்கத் தொடங்க உங்களுக்கு உதவ ஒரு நடைமுறை உதாரணத்தை வழங்கவும் உதவும்.
Docker முக்கிய கருத்துகள்
பயிற்சியைத் தொடங்குவதற்கு முன், Docker இன் சில முக்கிய கருத்துகளைப் புரிந்துகொள்வது அவசியம்:
-
படிமம் (Image): படிமம் என்பது படிக்க மட்டும் டெம்ப்ளேட் ஆகும், இதில் பயன்பாட்டை இயக்கத் தேவையான அனைத்தும் உள்ளன: குறியீடு, இயக்க நேரச் சூழல், கணினி கருவிகள், நூலகங்கள் மற்றும் சார்புகள். இது ஒரு மெய்நிகர் இயந்திரப் படிமத்தைப் போன்றது, ஆனால் மிகவும் இலகுவானது.
-
கொள்கலன் (Container): கொள்கலன் என்பது ஒரு படிமத்திலிருந்து உருவாக்கப்பட்ட இயக்க நிகழ்வு ஆகும். இது படிமத்தின் இயக்க நேர நிகழ்வு ஆகும், இதில் பயன்பாடு மற்றும் அதன் அனைத்து சார்புகளும் உள்ளன. கொள்கலன்கள் ஒன்றுக்கொன்று தனிமைப்படுத்தப்பட்டு, அவற்றின் சொந்த கோப்பு முறைமை, செயல்முறைகள் மற்றும் நெட்வொர்க் இடத்தை வைத்திருக்கின்றன.
-
Docker Hub: Docker Hub என்பது ஒரு பொது படிமக் களஞ்சியமாகும், இதில் இருந்து நீங்கள் முன் கட்டமைக்கப்பட்ட படிமங்களைப் பதிவிறக்கம் செய்யலாம் அல்லது உங்கள் சொந்தப் படிமங்களைப் பதிவேற்றலாம். இது GitHub ஐப் போன்றது, ஆனால் Docker படிமங்களுக்காக அர்ப்பணிக்கப்பட்டது.
-
Dockerfile: Dockerfile என்பது ஒரு உரை கோப்பாகும், இதில் Docker படிமத்தை உருவாக்க அனைத்து வழிமுறைகளும் உள்ளன. Dockerfile ஐ எழுதுவதன் மூலம், படிமத்தை உருவாக்கும் செயல்முறையை நீங்கள் தானியக்கமாக்கலாம்.
-
Docker Compose: Docker Compose என்பது பல கொள்கலன் Docker பயன்பாடுகளை வரையறுத்து இயக்க உதவும் கருவியாகும். YAML கோப்பைப் பயன்படுத்தி பயன்பாட்டின் சேவைகளை உள்ளமைக்க இது உங்களை அனுமதிக்கிறது, பின்னர் ஒரே கட்டளையைப் பயன்படுத்தி அனைத்து சேவைகளையும் தொடங்கலாம் அல்லது நிறுத்தலாம்.
Docker நிறுவல்
முதலில், நீங்கள் Docker ஐ நிறுவ வேண்டும். Docker பல்வேறு இயக்க முறைமைகளுக்கான நிறுவல் தொகுப்புகளை வழங்குகிறது. Docker அதிகாரப்பூர்வ வலைத்தளத்தைப் பார்வையிட்டு, தொடர்புடைய வழிமுறைகளைப் பின்பற்றி நிறுவவும்.
நிறுவிய பின், docker --version கட்டளையை இயக்குவதன் மூலம் Docker சரியாக நிறுவப்பட்டுள்ளதா என்பதை நீங்கள் சரிபார்க்கலாம்.
ஒரு எளிய Python பயன்பாட்டை கொள்கலனாக்குதல்
நாங்கள் ஒரு எளிய Python பயன்பாட்டை உருவாக்கி, Docker ஐப் பயன்படுத்தி அதை கொள்கலனாக்குவோம்.
1. Python பயன்பாட்டை உருவாக்குதல்
app.py என்ற கோப்பை உருவாக்கி, பின்வரும் குறியீட்டைச் சேர்க்கவும்:
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "Hello, Docker!"
if __name__ == "__main__":
app.run(debug=True, host='0.0.0.0')
இந்த எளிய Flask பயன்பாடு ரூட் பாதையில் / "Hello, Docker!" ஐ வழங்கும்.
2. requirements.txt கோப்பை உருவாக்குதல்
பயன்பாடு Flask நூலகத்தைச் சார்ந்துள்ளது, இந்த சார்புகளை அறிவிக்க requirements.txt கோப்பை உருவாக்க வேண்டும்.
Flask
3. Dockerfile ஐ உருவாக்குதல்
Dockerfile என்ற கோப்பை உருவாக்கி, பின்வரும் உள்ளடக்கத்தைச் சேர்க்கவும்:
# அதிகாரப்பூர்வ Python படிமத்தை அடிப்படை படிமமாகப் பயன்படுத்துதல்
FROM python:3.9-slim-buster
# வேலை செய்யும் கோப்பகத்தை அமைத்தல்
WORKDIR /app
# requirements.txt கோப்பை வேலை செய்யும் கோப்பகத்திற்கு நகலெடுக்கவும்
COPY requirements.txt .
# சார்புகளை நிறுவுதல்
RUN pip install --no-cache-dir -r requirements.txt
# பயன்பாட்டு குறியீட்டை வேலை செய்யும் அடைவுக்கு நகலெடுக்கவும்
COPY app.py .
# போர்ட் 5000-ஐ வெளிப்படுத்துங்கள்
EXPOSE 5000
# தொடக்க கட்டளையை வரையறுக்கவும்
CMD ["python", "app.py"]
Dockerfile விளக்கம்:
FROM python:3.9-slim-buster: அடிப்படை படத்தை Python 3.9 இன் சிறிய பதிப்பாகக் குறிப்பிடுகிறது.WORKDIR /app: கொள்கலனில் உள்ள வேலை செய்யும் அடைவை/appஆக அமைக்கிறது.COPY requirements.txt .: தற்போதைய அடைவில் உள்ளrequirements.txtகோப்பை கொள்கலனின்/appஅடைவுக்கு நகலெடுக்கிறது.RUN pip install --no-cache-dir -r requirements.txt:requirements.txtகோப்பில் குறிப்பிடப்பட்டுள்ள சார்புகளை நிறுவ கொள்கலனில்pipகட்டளையை இயக்குகிறது.--no-cache-dirஅளவுரு படத்தின் அளவைக் குறைக்கலாம்.COPY app.py .: தற்போதைய அடைவில் உள்ளapp.pyகோப்பை கொள்கலனின்/appஅடைவுக்கு நகலெடுக்கிறது.EXPOSE 5000: கொள்கலன் 5000 போர்ட்டில் கேட்கும் என்று அறிவிக்கிறது.CMD ["python", "app.py"]: கொள்கலன் தொடங்கும் போது இயக்க வேண்டிய கட்டளையை வரையறுக்கிறது.
4. Docker படத்தை உருவாக்குதல்
Dockerfile உள்ள அடைவில், Docker படத்தை உருவாக்க பின்வரும் கட்டளையை இயக்கவும்:
docker build -t my-python-app .
docker build: படத்தை உருவாக்கும் கட்டளை.-t my-python-app: படத்திற்கு ஒரு பெயரை (my-python-app) குறிப்பிடுகிறது..: Dockerfile அமைந்துள்ள அடைவைக் குறிப்பிடுகிறது (தற்போதைய அடைவு).
நெட்வொர்க் வேகம் மற்றும் சார்புகளின் அளவைப் பொறுத்து, உருவாக்க செயல்முறைக்கு சிறிது நேரம் ஆகலாம்.
5. Docker கொள்கலனை இயக்குதல்
Docker கொள்கலனை இயக்க பின்வரும் கட்டளையைப் பயன்படுத்தவும்:
docker run -d -p 5000:5000 my-python-app
docker run: கொள்கலனை இயக்கும் கட்டளை.-d: பிரிக்கப்பட்ட முறையில் கொள்கலனை இயக்குகிறது (பின்னணியில் இயங்குகிறது).-p 5000:5000: ஹோஸ்ட் இயந்திரத்தின் 5000 போர்ட்டை கொள்கலனின் 5000 போர்ட்டுக்கு மேப் செய்கிறது.my-python-app: பயன்படுத்த வேண்டிய படத்தின் பெயரை குறிப்பிடுகிறது.
6. பயன்பாட்டை சரிபார்க்கவும்
உலாவியில் http://localhost:5000 ஐ அணுகவும், நீங்கள் "Hello, Docker!" ஐப் பார்க்க வேண்டும்.
7. கொள்கலனை நிறுத்தி நீக்கவும்
கொள்கலனை நிறுத்த பின்வரும் கட்டளையைப் பயன்படுத்தவும்:
docker stop
`` ஐ docker ps கட்டளையைப் பயன்படுத்தி பார்க்கலாம்.
கொள்கலனை நீக்க பின்வரும் கட்டளையைப் பயன்படுத்தவும்:
docker rm
Docker Compose அறிமுகம்
உங்கள் பயன்பாடு பல சேவைகளைக் கொண்டிருந்தால், அவற்றை நிர்வகிக்க Docker Compose ஐப் பயன்படுத்தலாம்.
1. docker-compose.yml கோப்பை உருவாக்கவும்
docker-compose.yml என்ற பெயரில் ஒரு கோப்பை உருவாக்கி, பின்வரும் உள்ளடக்கத்தைச் சேர்க்கவும்:
version: "3.9"
services:
web:
image: my-python-app
ports:
- "5000:5000"
docker-compose.yml விளக்கம்:* version: "3.9": Docker Compose கோப்பின் பதிப்பைக் குறிப்பிடுகிறது.
services: பயன்பாட்டின் சேவைகளை வரையறுக்கிறது.web: "web" எனப்படும் சேவையை வரையறுக்கிறது.image: my-python-app: சேவை பயன்படுத்தும் படத்தைக் குறிப்பிடுகிறது.ports: போர்ட் மேப்பிங்கை வரையறுக்கிறது.
2. பயன்பாட்டைத் தொடங்குக
docker-compose.yml கோப்பு உள்ள அடைவில், பயன்பாட்டைத் தொடங்க பின்வரும் கட்டளையை இயக்கவும்:
docker-compose up -d
docker-compose up: பயன்பாட்டைத் தொடங்குவதற்கான கட்டளை.-d: கொள்கலன்களைப் பிரிந்த முறையில் இயக்குகிறது.
3. பயன்பாட்டை நிறுத்துக
பயன்பாட்டை நிறுத்த பின்வரும் கட்டளையைப் பயன்படுத்தவும்:
docker-compose down
Docker பாதுகாப்பு சிறந்த நடைமுறைகள்
விவாதத்திலிருந்து பார்க்கும்போது, Docker படங்களின் பாதுகாப்பு ஒரு முக்கியமான பிரச்சினை. Docker பாதுகாப்புக்கான சில சிறந்த நடைமுறைகள் இங்கே:
- அதிகாரப்பூர்வ படங்களைப் பயன்படுத்துதல்: முடிந்தவரை அதிகாரப்பூர்வமாக வழங்கப்பட்ட படங்களைப் பயன்படுத்தவும், இந்த படங்கள் பொதுவாக பாதுகாப்பு ஸ்கேன் செய்யப்பட்டு பராமரிக்கப்படுகின்றன.
- பட பாதிப்புகளை ஸ்கேன் செய்தல்: Trivy போன்ற கருவிகளைப் பயன்படுத்தி படத்தில் உள்ள அறியப்பட்ட பாதிப்புகளை ஸ்கேன் செய்து, படங்களை சரியான நேரத்தில் புதுப்பிக்கவும்.
- குறைந்தபட்ச அனுமதிகள் கொள்கையைப் பயன்படுத்துதல்: ரூட் பயனராக கொள்கலன்களை இயக்குவதைத் தவிர்க்கவும்.
- கொள்கலன் வளங்களைக் கட்டுப்படுத்துதல்: cgroups ஐப் பயன்படுத்தி கொள்கலனின் CPU மற்றும் நினைவக பயன்பாட்டைக் கட்டுப்படுத்தவும்.
- படங்களை அவ்வப்போது புதுப்பித்தல்: பாதுகாப்பு பாதிப்புகளை சரிசெய்ய படங்களைப் புதுப்பித்த நிலையில் வைத்திருங்கள்.
- பாதுகாப்பு ஸ்கேனிங் கருவிகளைப் பயன்படுத்துதல்: Snyk, Clair போன்ற கருவிகளை உங்கள் CI/CD செயல்முறைகளில் ஒருங்கிணைக்க முடியும், இது பட பாதிப்புகளை தானாக ஸ்கேன் செய்யும்.





