Hoe u een Docker-image kunt maken van DockerFile in CentOS 8 met het beste voorbeeld
Stap 1:Maak een Dockerbestand
Maak een nieuw bestand met de naam `Dockerfile` in de map waar u uw Docker-image wilt bouwen. Het Dockerbestand bevat de instructies voor het bouwen van de afbeelding.
```
Stel de basisafbeelding in
VAN centos:8
Update de pakketten
RUN yum-update -y
Installeer de vereiste pakketten
RUN yum install -y nginx php php-mysqlnd
Kopieer de webapplicatiebestanden
KOPIE. /var/www/html/
Maak de HTTP-poort openbaar
BLOOT 80
Stel de standaardopdracht in
CMD ["nginx", "-g", "daemon uit;"]
```
Stap 2:Bouw de Docker-image
Voer de volgende opdracht uit om de Docker-image te bouwen:
```
docker build -t mijn-nginx-image .
```
Met deze opdracht wordt de Docker-image opgebouwd met behulp van de instructies in het `Dockerfile`.
Stap 3:Voer de Docker-image uit
Zodra de afbeelding is gebouwd, kunt u deze uitvoeren met de volgende opdracht:
```
docker run -d -p 8080:80 --naam mijn-nginx-container mijn-nginx-image
```
Met deze opdracht wordt een nieuwe Docker-container gemaakt op basis van de afbeelding `my-nginx-image`. De optie `-p 8080:80` wijst poort 80 van de container toe aan poort 8080 op de hostmachine. De optie `--name my-nginx-container` geeft de container een naam.
Stap 4:Controleer de installatie
Om te verifiëren dat Nginx actief is, opent u een webbrowser en navigeert u naar `http://localhost:8080`. U zou de standaard Nginx-welkomstpagina moeten zien.
Voorbeeld van een Dockerfile voor een Python-applicatie
```
Stel de basisafbeelding in
VAN Python:3.8-slank
Maak een werkmap
WERKDIR /code
Kopieer de applicatiebestanden
KOPIEER vereisten.txt .
RUN pip install --no-cache-dir -r vereisten.txt
Kopieer de broncode
KOPIE. .
Laat de applicatiepoort zien
BLOOT 8000
Stel de standaardopdracht in
CMD ["python", "app.py"]
```
Dit Dockerbestand maakt een Python-image met de Python 3.8-runtime. Het installeert de vereiste Python-pakketten met behulp van pip en kopieert vervolgens de broncode naar de container. De container maakt poort 8000 beschikbaar, de poort waarnaar de Python-toepassing luistert. De standaardopdracht is ingesteld om het `app.py`-script uit te voeren, wat het startpunt van de applicatie is. |