PHP
Docker inzet
Zoeken…
Invoering
Docker is een zeer populaire containeroplossing die veel wordt gebruikt voor het implementeren van code in productieomgevingen. Het maakt het eenvoudiger om web-applicaties en microservices te beheren en te schalen .
Opmerkingen
In dit document wordt ervan uitgegaan dat docker is geïnstalleerd en de daemon wordt uitgevoerd. U kunt de Docker-installatie raadplegen om te controleren hoe u deze installeert.
Download docker image voor php
Om de toepassing op het koppelvenster te implementeren, moeten we eerst de afbeelding uit het register halen.
docker pull php
Hiermee krijg je de nieuwste versie van de afbeelding uit de officiële php-repository . Over het algemeen wordt PHP
meestal gebruikt om webtoepassingen te implementeren, dus we hebben een http-server nodig om bij de afbeelding te passen. php:7.0-apache
afbeelding is vooraf geïnstalleerd met apache om de implementatie snel te maken.
Dockerbestand schrijven
Dockerfile
wordt gebruikt om de aangepaste afbeelding te configureren die we gaan bouwen met de webtoepassingscodes. Maak een nieuw Dockerfile
bestand in de hoofdmap van het project en plaats de volgende inhoud Dockerfile
FROM php:7.0-apache
COPY /etc/php/php.ini /usr/local/etc/php/
COPY . /var/www/html/
EXPOSE 80
De eerste regel is vrij eenvoudig en wordt gebruikt om te beschrijven welke afbeelding moet worden gebruikt om een nieuwe afbeelding op te bouwen. Hetzelfde kan worden gewijzigd in een andere specifieke versie van PHP uit het register.
De tweede regel is gewoon om het php.ini
bestand naar onze afbeelding te uploaden. U kunt dat bestand altijd wijzigen in een andere aangepaste bestandslocatie.
De derde regel zou de codes in de huidige map kopiëren naar /var/www/html
wat onze webroot is. Onthoud /var/www/html
in de afbeelding.
De laatste regel zou eenvoudig poort 80 in de dokcontainer openen.
Bestanden negeren
In sommige gevallen kunnen er enkele bestanden zijn die u niet op de server wilt, zoals omgevingsconfiguratie enz. Laten we aannemen dat we onze omgeving in .env
. Om dit bestand te negeren, kunnen we het eenvoudig toevoegen aan .dockerignore
in de hoofdmap van onze codebase.
Afbeelding opbouwen
Het opbouwen van een afbeelding is niet iets specifieks voor php
, maar om de afbeelding te maken die we hierboven hebben beschreven, kunnen we eenvoudig gebruiken
docker build -t <Image name> .
Nadat de afbeelding is gebouwd, kunt u hetzelfde verifiëren met
docker images
Waarin alle afbeeldingen worden weergegeven die op uw systeem zijn geïnstalleerd.
Applicatiecontainer starten
Zodra we een afbeelding gereed hebben, kunnen we hetzelfde starten en serveren. Gebruik om een container
uit de afbeelding te maken
docker run -p 80:80 -d <Image name>
In het bovenstaande -p 80:80
zou -p 80:80
poort 80
van uw server doorsturen naar poort 80
van de container. De vlag -d
geeft aan dat de container als achtergrondtaak moet worden uitgevoerd. De finale geeft aan welke afbeelding moet worden gebruikt om de container te bouwen.
Container controleren
Gebruik eenvoudig om lopende containers te controleren
docker ps
Hiermee worden alle containers weergegeven die op docker daemon worden uitgevoerd.
Applicatielogboeken
Logboeken zijn erg belangrijk om de toepassing te debuggen. Om ze te controleren gebruiken
docker logs <Container id>