นักเทียบท่าที่ใช้ Nginx, PHP-FPM, นักแต่งเพลง, MySQL และ PHPMyAdmin
ติดตั้งข้อกำหนดเบื้องต้น
ก่อนที่จะติดตั้งโปรเจ็กต์ โปรดตรวจสอบให้แน่ใจว่าได้ปฏิบัติตามข้อกำหนดเบื้องต้นต่อไปนี้แล้ว
โคลนโครงการ
เราจะดาวน์โหลดโค้ดจากพื้นที่เก็บข้อมูลบน GitHub
เรียกใช้แอปพลิเคชัน
เมื่อถึงจุดนี้ เราจะมีชิ้นส่วนของโครงการทั้งหมดเข้าที่
ใช้คำสั่งนักเทียบท่า
เมื่อรัน คุณสามารถใช้คำสั่งนักเทียบท่าเพื่อดำเนินการที่เกิดซ้ำได้
แอปพลิเคชันทดสอบ
หากต้องการรันคำสั่งนักเทียบท่าโดยไม่ใช้ sudo คุณต้องเพิ่มกลุ่ม นักเทียบท่า ให้กับ your-user :
sudo usermod -aG docker your-user
ในตอนนี้ โปรเจ็กต์นี้สร้างขึ้นสำหรับ Unix (Linux/MacOS)
เป็นหลัก บางทีมันอาจจะทำงานบน Windows
ข้อกำหนดทั้งหมดควรมีให้พร้อมสำหรับการแจกจ่ายของคุณ ที่สำคัญที่สุดคือ:
ตรวจสอบว่ามีการติดตั้ง docker-compose
แล้วหรือไม่โดยป้อนคำสั่งต่อไปนี้:
which docker-compose
ตรวจสอบความเข้ากันได้ของ Docker Compose:
บน Ubuntu และ Debian สิ่งเหล่านี้มีอยู่ใน meta-package build-essential สำหรับดิสทริบิวชันอื่นๆ คุณอาจต้องติดตั้งคอมไพเลอร์ GNU C++ แยกต่างหาก
sudo apt install build-essential
คุณควรระมัดระวังเมื่อติดตั้งเว็บเซิร์ฟเวอร์ของบุคคลที่สาม เช่น MySQL หรือ Nginx
โครงการนี้ใช้พอร์ตต่อไปนี้:
เซิร์ฟเวอร์ | ท่าเรือ |
---|---|
MySQL | 8989 |
PHPMyAdmin | 8080 |
งินซ์ | 8000 |
หากต้องการติดตั้ง Git ให้ดาวน์โหลดและติดตั้งตามคำแนะนำ :
git clone https://github.com/sahedbs23/oscar-car-rental.git
ไปที่ไดเร็กทอรีโครงการ:
cd oscar-car-rental
.
├── Makefile
├── README.md
├── data
│ └── db
│ ├── dumps
│ └── mysql
├── doc
├── docker-compose.yml
├── etc
│ ├── nginx
│ │ ├── default.conf
│ │ └── default.template.conf
│ ├── php
│ │ └── php.ini
│ └── ssl
└── web
├── app
│ ├── composer.json.dist
│ ├── phpunit.xml.dist
│ ├── src
│ │ └── App.php
│ └── test
│ └── bootstrap.php
└── public
└── index.php
เริ่มแอปพลิเคชัน:
docker-compose up -d
โปรดรอสักครู่อาจใช้เวลาหลายนาที...
docker-compose logs -f # Follow log output
เปิดเบราว์เซอร์ที่คุณชื่นชอบ:
หยุดและเคลียร์บริการ
docker-compose down -v
docker run --rm -v $( pwd ) /web/app:/app composer require symfony/yaml
docker run --rm -v $( pwd ) /web/app:/app composer update
docker-compose exec -T php ./app/vendor/bin/phpunit --colors=always --configuration ./app
docker-compose exec -T php ./app/vendor/bin/phpmd ./app/src text cleancode,codesize,controversial,design,naming,unusedcode
docker-compose exec php php -m
docker exec -it mysql bash
และ
mysql -u " $MYSQL_ROOT_USER " -p " $MYSQL_ROOT_PASSWORD "
mkdir -p data/db/dumps
source .env && docker exec $( docker-compose ps -q mysqldb ) mysqldump --all-databases -u " $MYSQL_ROOT_USER " -p " $MYSQL_ROOT_PASSWORD " > " data/db/dumps/db.sql "
source .env && docker exec -i $( docker-compose ps -q mysqldb ) mysql -u " $MYSQL_ROOT_USER " -p " $MYSQL_ROOT_PASSWORD " < " data/db/dumps/db.sql "
Notice:
แทนที่ "YOUR_DB_NAME" ด้วยชื่อที่คุณกำหนดเอง
source .env && docker exec $( docker-compose ps -q mysqldb ) mysqldump -u " $MYSQL_ROOT_USER " -p " $MYSQL_ROOT_PASSWORD " --databases YOUR_DB_NAME > " data/db/dumps/YOUR_DB_NAME_dump.sql "
source .env && docker exec -i $( docker-compose ps -q mysqldb ) mysql -u " $MYSQL_ROOT_USER " -p " $MYSQL_ROOT_PASSWORD " < " data/db/dumps/YOUR_DB_NAME_dump.sql "
Notice:
นำเข้าคอลเลกชันบุรุษไปรษณีย์จาก api-doc/postman_collection.json
Notice:
นำเข้าสภาพแวดล้อมบุรุษไปรษณีย์จาก api-doc/postman_environment.json
Notice:
ใบอนุญาตรถยนต์จะไม่ซ้ำกันในระดับฐานข้อมูล คุณสามารถนำเข้าเนื้อหาจากไฟล์ได้เพียงครั้งเดียว