การติดตั้ง Composer ใน EC2 (Amazon Linux 2, Amazon Linux 2023)

Composer เป็นเครื่องมือที่ใช้ในการบริหารจัดการกับ Library ใน PHP ที่ช่วยให้การติดตั้ง PHP Library ที่ต้องการนั้นง่ายขึ้น ซึ่งผมจะนำมาติดตั้งใน EC2 (Amazon Linux 2, Amazon Linux 2023) เพื่อให้ composer ช่วยค้นหาและติดตั้ง Library อื่นๆ รวมทั้งเวอร์ชันที่จำเป็นโดยอัตโนมัติครับ

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

สวัสดีครับ ครั้งนี้ผมจะมาอธิบายเกี่ยวกับ การติดตั้ง Composer ใน EC2 (Amazon Linux 2, Amazon Linux 2023) ต่อจากบทความของ เรียกใช้ PHP โดยใช้ Nginx บน EC2 (Amazon Linux 2) และ วิธี Install PHP 8.0 and Apache ใน Amazon Linux 2 ของ EC2 ครับ

Composer คืออะไร

Composer เป็นเครื่องมือที่ใช้ในการบริหารจัดการกับ Library ใน PHP ที่ช่วยให้การติดตั้ง PHP Library ที่ต้องการนั้นง่ายขึ้น เพราะ composer จะช่วยค้นหาและติดตั้ง Library อื่นๆ รวมทั้งเวอร์ชันที่จำเป็นโดยอัตโนมัติก่อนที่จะติดตั้ง Library ที่ต้องการครับ

สิ่งที่ต้องมี

※ติดตั้งและรัน PHP โดยใช้ Nginx บน EC2 Instance เตรียมไว้เพื่อใช้ในการติดตั้ง Composer

การติดตั้ง Composer นี้สามารถติดตั้งได้ทั้งใน Amazon Linux 2 และ Amazon Linux 2023 ตามลิงก์ด้านล่างครับ

ติดตั้ง Composer

เข้ามาที่หน้าเว็บไซต์หลักของ Composer นี้ได้เลยครับ
เมื่อเข้ามาแล้วเลือกDownload

มาที่หัวข้อ Command-line installation ทำการ Copy คำสั่งจากหน้าเว็บไซต์แล้วนำไปวางใน PuTTy เพื่อทำการติดตั้ง Composer ครับ (Version ที่ผมติดตั้งนี้คือLatest: v2.3.7)
Output (example)

root@ip-172-31-27-236:~

[root@ip-172-31-27-236 ~]# php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
[root@ip-172-31-27-236 ~]# php -r "if (hash_file('sha384', 'composer-setup.php') === '55ce33d7678c5a611085589f1f3ddf8b3c52d662cd01d4ba75c0ee0459970c2200a51f492d557530c71c15d8dba01eae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
Installer verified
[root@ip-172-31-27-236 ~]# php composer-setup.php
All settings correct for using Composer
Downloading...

Composer (version 2.3.7) successfully installed to: /root/composer.phar
Use it: php composer.phar

[root@ip-172-31-27-236 ~]# php -r "unlink('composer-setup.php');"
[root@ip-172-31-27-236 ~]#

ข้อควรระวัง: ถ้า Version เปลี่ยน ชุดคำสั่งตรงส่วนที่มาร์คไว้ก็จะเปลี่ยนไปด้วย

ตั้งค่า Composer

ตอนนี้จะยังไม่สามารถใช้ Composer ได้ ซึ่งเราต้องย้ายไฟล์composer.pharเข้าไปยังcomposerก่อนครับ

รันคำสั่งด้านล่างนี้เพื่อย้ายไฟล์composer.pharไปยัง/usr/local/bin/composer

mv composer.phar /usr/local/bin/composer

รันคำสั่งนี้เพื่อตรวจสอบ version composer

composer --version

Output (example)

root@ip-172-31-27-236:~

[root@ip-172-31-27-236 ~]# composer --version
Composer version 2.3.7 2022-06-06 16:43:28
[root@ip-172-31-27-236 ~]#

สรุป

เมื่อเราทำการติดตั้ง Composer ลงใน EC2 (Amazon Linux 2) ไปแล้วก็จะทำให้เราเหมือนกับมีผู้ช่วยในการค้นหาและติดตั้ง Library อื่นๆ รวมทั้งเวอร์ชันที่จำเป็นโดยอัตโนมัติ ซึ่งจะทำให้เราทำงานได้ง่ายขึ้น เช่น ถ้าเราต้องใช้ Library ตัวที่เข้ากับโปรเจกต์ของเรา Composer ก็จะทำหน้าที่นี้ให้เราโดยอัตโนมัตินั่นเองครับ

บทความที่เกี่ยวข้อง