Lernen Sie, wie Sie schnell eine Symfony-Umgebung in Docker erstellen können
Mit der rasanten Entwicklung von Cloud Computing und Container-Technologie ist Docker zu einem sehr beliebten und nützlichen Tool geworden. Es bietet eine schnelle, zuverlässige und bequeme Möglichkeit, Anwendungen zu verpacken, zu verteilen und auszuführen. Symfony ist ein hervorragendes PHP-Framework, das uns dabei helfen kann, schnell hochwertige Webanwendungen zu erstellen. In diesem Artikel zeige ich Ihnen, wie Sie mit Docker schnell eine Symfony-Umgebung einrichten.
Schritt 1: Docker und Docker Compose installieren
Zuerst müssen Sie Docker und Docker Compose auf Ihrem Computer installieren. Sie können das für Ihr Betriebssystem geeignete Installationspaket auf der offiziellen Docker-Website finden und es gemäß der offiziellen Dokumentation installieren.
Schritt 2: Dockerfile erstellen
Erstellen Sie eine Datei mit dem Namen Dockerfile in Ihrem Projektstammverzeichnis und fügen Sie den folgenden Inhalt hinzu:
FROM php:7.4-apache # 安装Symfony所需的扩展 RUN docker-php-ext-install pdo pdo_mysql # 添加Apache的配置文件 COPY apache.conf /etc/apache2/sites-available/000-default.conf # 安装Composer RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
In der obigen Dockerfile-Datei haben wir das offiziell bereitgestellte php:7.4-Apache als Basisimage verwendet. Anschließend haben wir die für Symfony erforderlichen PDO- und pdo_mysql-Erweiterungen installiert und die Apache-Konfigurationsdateien von lokal an den richtigen Speicherort im Container kopiert. Schließlich haben wir Composer installiert, damit wir Composer zum Verwalten der Abhängigkeiten unseres Symfony-Projekts verwenden können.
Schritt 3: Erstellen Sie die Apache-Konfigurationsdatei
Erstellen Sie eine Datei mit dem Namen apache.conf in Ihrem Projektstammverzeichnis und fügen Sie den folgenden Inhalt hinzu:
<VirtualHost *:80> DocumentRoot /var/www/html/public <Directory /var/www/html/public> AllowOverride All Order allow,deny Allow from all </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
In der obigen Datei apache.conf haben wir das öffentliche Verzeichnis des Symfony-Projekts angegeben dient als DocumentRoot und alle Apache-Rewrite-Regeln sind aktiviert.
Schritt 4: Docker-compose.yml-Datei erstellen
Erstellen Sie eine Datei mit dem Namen docker-compose.yml in Ihrem Projektstammverzeichnis und fügen Sie den folgenden Inhalt hinzu:
version: '3' services: web: build: . ports: - "8000:80" volumes: - .:/var/www/html links: - db db: image: mysql:8.0 ports: - "3306:3306" environment: - MYSQL_ROOT_PASSWORD=root - MYSQL_DATABASE=symfony volumes: - ./database:/var/lib/mysql
In der obigen Datei docker-compose.yml definieren wir zwei Dienste: Web und DB. Der Webdienst wird mithilfe der oben erstellten Docker-Datei erstellt und ordnet Port 80 im Container Port 8000 auf dem Host zu. Wir ordnen das aktuelle Verzeichnis auch dem Verzeichnis /var/www/html innerhalb des Containers zu, damit wir innerhalb des Containers auf unser Symfony-Projekt zugreifen können. Der DB-Dienst verwendet das offiziell bereitgestellte mysql:8.0-Image und ordnet den 3306-Port im Container dem 3306-Port des Hosts zu. Wir haben auch das MySQL-Root-Passwort und die erstellte Datenbank angegeben.
Schritt 5: Starten Sie den Symfony-Container
Gehen Sie im Terminal in das Stammverzeichnis Ihres Projekts und führen Sie den folgenden Befehl aus, um den Symfony-Container zu starten:
docker-compose up -d
Dieser Befehl lädt das erforderliche Image herunter, erstellt den Container und führt ihn aus. Warten Sie einen Moment, der Startvorgang kann einige Zeit dauern.
Schritt 6: Symfony installieren
Nachdem der Symfony-Container gestartet wurde, können Sie mit dem folgenden Befehl in den Container gelangen:
docker exec -it [CONTAINER_NAME] bash
Ersetzen Sie in diesem Befehl [CONTAINER_NAME] durch den Namen Ihres Symfony-Containers.
Im Container können Sie Symfony mit Composer installieren. Führen Sie den folgenden Befehl im Container aus:
composer create-project symfony/website-skeleton .
Dieser Befehl erstellt ein neues Symfony-Projekt im aktuellen Verzeichnis.
Schritt 7: Auf die Symfony-Anwendung zugreifen
Nach Abschluss der Installation können Sie die Symfony-Anwendung anzeigen, indem Sie die folgende URL in Ihrem Browser aufrufen:
http://localhost:8000
Herzlichen Glückwunsch! Sie haben nun erfolgreich eine Symfony-Umgebung in Docker eingerichtet. Sie können jetzt mit der Erstellung Ihrer Anwendungen mit Symfony beginnen und den Komfort und die Flexibilität der Containerisierung genießen.
Zusammenfassung
Durch die Verwendung von Docker und Docker Compose können wir schnell lokal eine Symfony-Umgebung aufbauen. Dadurch können sich Entwickler stärker auf die Anwendungsentwicklung konzentrieren, ohne sich um die Konfiguration und Verwaltung einer Entwicklungsumgebung kümmern zu müssen. Ich hoffe, dass dieser Artikel für Sie hilfreich sein kann, und ich wünsche Ihnen, dass Sie weitere großartige Symfony-Anwendungen erstellen!
Das obige ist der detaillierte Inhalt vonErfahren Sie, wie Sie schnell eine Symfony-Umgebung in Docker einrichten. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!