Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Docker memasang Symfony: mencapai pembangunan pesat

Docker memasang Symfony: mencapai pembangunan pesat

王林
王林asal
2023-10-21 10:37:48815semak imbas

Docker memasang Symfony: mencapai pembangunan pesat

Pemasangan Docker Symfony: untuk pembangunan pesat

Kata Pengantar:
Symfony ialah rangka kerja PHP popular yang menyediakan banyak alatan dan komponen untuk membantu pembangun membina aplikasi web berkualiti tinggi dengan cepat. Docker ialah platform kontena yang boleh mencapai penggunaan pantas aplikasi dan pengasingan persekitaran. Dalam artikel ini, kami akan meneroka cara memasang dan mengkonfigurasi Symfony menggunakan Docker untuk pembangunan pesat.

  1. Pasang Docker dan Docker Compose
    Sebelum anda bermula, anda perlu memasang Docker dan Docker Compose pada mesin anda. Anda boleh mendapatkan tutorial pemasangan yang sepadan di laman web rasmi Docker mengikut sistem pengendalian anda. Setelah pemasangan selesai, anda boleh menjalankan arahan berikut dalam terminal untuk mengesahkan bahawa pemasangan berjaya:
docker --version
docker-compose --version
  1. Buat Projek Symfony
    Dalam terminal, buat projek Symfony baharu menggunakan arahan berikut:
docker run --rm -it -v $(pwd):/app composer create-project symfony/website-skeleton my-symfony-app

Perintah di atas akan menggunakan Composer mencipta projek Symfony baharu, yang akan disimpan dalam folder "my-symfony-app" dalam direktori semasa.

  1. Buat fail konfigurasi Docker
    Buat fail bernama "docker-compose.yml" dalam direktori akar projek Symfony untuk menentukan konfigurasi bekas Docker.
version: "3"
services:
  web:
    build: .
    ports:
      - "8000:8000"
    volumes:
      - .:/app
    depends_on:
      - db
  db:
    image: mysql
    environment:
      MYSQL_ROOT_PASSWORD: root
      MYSQL_DATABASE: symfony
      MYSQL_USER: symfony
      MYSQL_PASSWORD: symfony

Fail konfigurasi di atas mentakrifkan dua perkhidmatan: web dan db. Perkhidmatan web menggunakan Dockerfile dalam direktori semasa untuk membina bekas dan melekapkan projek Symfony ke dalam direktori /apl bekas. Perkhidmatan web juga memetakan port kontena 8000 ke port 8000 hos. Perkhidmatan db menggunakan imej MySQL rasmi dan mentakrifkan beberapa pembolehubah persekitaran.

  1. Buat Dockerfile
    Buat fail bernama "Dockerfile" dalam direktori akar projek Symfony untuk mentakrifkan konfigurasi imej Docker yang mencipta perkhidmatan web.
FROM node:14 AS build-node
WORKDIR /app
COPY . /app
RUN npm install && npm run build

FROM php:8.0-apache
WORKDIR /app
COPY --from=build-node /app /app
RUN docker-php-ext-install pdo pdo_mysql

Fail Docker di atas mentakrifkan dua peringkat. Pada peringkat pertama, sumber bahagian hadapan dibina menggunakan imej Node.js. Kemudian, dalam fasa kedua, aplikasi Symfony dibina menggunakan PHP dan imej Apache, dan sumber bahagian hadapan disalin ke dalam bekas.

  1. Bina dan jalankan aplikasi Symfony
    Dalam terminal, gunakan arahan berikut untuk membina dan menjalankan aplikasi Symfony:
docker-compose up -d --build

Arahan di atas akan membina dan menjalankan bekas berdasarkan konfigurasi dalam docker-compose.yml fail. Bendera "-d" menetapkan bekas untuk dijalankan di latar belakang.

  1. Lawati aplikasi Symfony
    Buka penyemak imbas anda dan lawati "http://localhost:8000", anda akan dapat melihat halaman alu-aluan Symfony. Pada ketika ini, anda telah berjaya memasang dan mengkonfigurasi aplikasi Symfony menggunakan Docker.

Ringkasan:
Artikel ini menerangkan cara menggunakan Docker dan Docker Compose untuk memasang dan mengkonfigurasi aplikasi Symfony. Dengan menggunakan Symfony ke dalam bekas Docker, kami boleh menyediakan persekitaran pembangunan dengan cepat dan mencapai penggunaan aplikasi pantas dan pengasingan persekitaran. Saya harap artikel ini membantu dan saya doakan anda berjaya dalam pembangunan Symfony anda!

Atas ialah kandungan terperinci Docker memasang Symfony: mencapai pembangunan pesat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn