Rumah  >  Artikel  >  Operasi dan penyelenggaraan  >  Tutorial: Memasang Symfony menggunakan Docker

Tutorial: Memasang Symfony menggunakan Docker

WBOY
WBOYasal
2023-10-20 15:27:11901semak imbas

Tutorial: Memasang Symfony menggunakan Docker

Tutorial: Memasang Symfony menggunakan Docker

Symfony ialah rangka kerja PHP yang popular untuk membina aplikasi web berprestasi tinggi dan boleh skala. Apabila membangunkan aplikasi Symfony, menggunakan Docker boleh mencipta persekitaran pembangunan bebas dengan mudah untuk memudahkan kerjasama pasukan dan penggunaan aplikasi. Tutorial ini akan membimbing anda melalui cara memasang Symfony menggunakan Docker dan memberikan contoh kod khusus.

Langkah 1: Pasang Docker dan Docker Compose

Mula-mula, anda perlu memasang Docker dan Docker Compose pada komputer anda. Anda boleh pergi ke laman web rasmi Docker untuk memuat turun dan memasang versi Docker yang sepadan mengikut sistem pengendalian anda. Setelah pemasangan selesai, sahkan pemasangan Docker dengan menjalankan arahan berikut dalam terminal:

docker --version
docker-compose --version

Langkah 2: Buat aplikasi Symfony

Seterusnya, anda perlu mencipta aplikasi Symfony. Dalam baris arahan, navigasi ke direktori di mana anda ingin mencipta aplikasi dan laksanakan arahan berikut:

docker run --rm -v $(pwd):/app -w /app/ composer create-project symfony/website-skeleton myapp

Perintah ini akan menjalankan bekas sementara, melekapkan direktori semasa ke direktori /app dalam bekas, dan menggunakan Komposer untuk Buat aplikasi Symfony yang dipanggil myapp.

Langkah 3: Tulis Fail Docker

Dalam direktori aplikasi anda, cipta fail bernama Dockerfile dan tambah kandungan berikut di dalamnya:

FROM php:7.4-apache

# 安装MySQL扩展
RUN docker-php-ext-install pdo pdo_mysql

# 设置工作目录
WORKDIR /var/www/html

# 拷贝应用程序代码
COPY . /var/www/html

# 设置Apache的DocumentRoot
RUN sed -ri -e 's!/var/www/html!/var/www/html/public!g' /etc/apache2/sites-available/*.conf
RUN sed -ri -e 's!/var/www/!/var/www/html/public!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf

# 重启Apache服务
RUN service apache2 restart

Fail Docker ini berdasarkan imej php:7.4-apache rasmi dan sambungan MySQL yang Diperlukan dipasang. Ia juga menetapkan direktori kerja kepada /var/www/html dan menyalin kod aplikasi ke dalam bekas. Akhirnya, ia menetapkan DocumentRoot Apache kepada /var/www/html/public dan memulakan semula perkhidmatan Apache.

Langkah 4: Tulis fail docker-compose

Dalam direktori aplikasi anda, buat fail bernama docker-compose.yml dan tambah kandungan berikut di dalamnya:

version: '3'
services:
  web:
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - 80:80
    volumes:
      - .:/var/www/html

Fail docker-compose ini mentakrifkan Perkhidmatan (web), gunakan Dockerfile yang dibuat sebelum ini untuk membina bekas. Ia memetakan port kontena 80 ke port hos 80 dan melekapkan direktori aplikasi tempatan ke direktori /var/www/html kontena.

Langkah 5: Mulakan aplikasi Symfony

Dalam terminal, navigasi ke direktori aplikasi anda dan laksanakan arahan berikut untuk memulakan aplikasi Symfony:

docker-compose up -d

Arahan ini akan memulakan bekas berjalan latar di mana Symfony menjalankan aplikasi.

Langkah 6: Akses aplikasi Symfony

Kini anda boleh mengakses aplikasi Symfony dengan melawati http://localhost dalam penyemak imbas anda.

Ringkasan:

Dengan menggunakan Docker, anda boleh mencipta persekitaran pembangunan Symfony yang bebas dan mempercepatkan kerjasama pasukan dan penggunaan aplikasi. Tutorial ini menyediakan contoh kod khusus yang diperlukan untuk memasang Symfony, dengan harapan dapat membantu anda mula menggunakan Docker untuk membangunkan dan menggunakan aplikasi Symfony. Saya doakan anda berjaya!

Atas ialah kandungan terperinci Tutorial: Memasang Symfony menggunakan Docker. 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