Cách cài extension PHP trong HiTechCloud
HiTechCloud dùng các Docker image shinsenter/php cho dịch vụ PHP. Các image này có sẵn nhiều extension PHP thông dụng và cung cấp cách đơn giản để cài thêm extension khi cần.
Extension PHP cài sẵn
Phần lớn extension PHP phổ biến được cài sẵn theo mặc định, giúp dự án khởi động nhanh mà không cần cấu hình thêm:
apcu
bcmath
calendar
Core
ctype
curl
date
dom
exif
fileinfo
filter
gd
gettext
gmp
hash
iconv
igbinary
intl
json
lexbor
libxml
mbstring
msgpack
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_pgsql
pdo_sqlite
pgsql
Phar
posix
random
readline
redis
Reflection
session
SimpleXML
sodium
SPL
sqlite3
standard
tidy
tokenizer
uri
uuid
xml
xmlreader
xmlwriter
yaml
Zend OPcache
zip
zlib
và HiTechCloud bổ sung extension Zend OPcache.
Bật extension PHP đã cài
- Kết nối tới máy chủ qua SSH với quyền
root - Vào container PHP của người dùng và phiên bản mong muốn:
docker --context=USERNAME_HERE exec -it php-fpm-8.5 bash
- Bật extension bằng
docker-php-ext-enable:
docker-php-ext-enable mysqli pdo_mysql
- Thoát và khởi động lại container PHP:
exit
docker --context=USERNAME_HERE restart php-fpm-8.5
Thêm extension PHP tuỳ chỉnh
Các image PHP có sẵn một lệnh hỗ trợ tên phpaddmod để cài extension PHP: lệnh này cài extension và sửa tệp php.ini để bật nó.
Cài extension PHP cho một người dùng
Để cài extension PHP cho một người dùng, mở terminal cho phiên bản PHP mong muốn.
Giả định trong ví dụ
- Tên người dùng:
stefan - Phiên bản PHP:
8.5 - Tên dịch vụ:
php-fpm-8.5
Điều chỉnh các giá trị này cho khớp với môi trường của bạn.
Cách 1: Terminal của HiTechCloud (bản Enterprise)
Nếu mô-đun Docker được bật:
- Vào Container → Terminal trong HiTechCloud
- Chọn phiên bản PHP mong muốn
- Chạy các lệnh sau
Ví dụ: cài extension GMP:
apt update
apt install -y libgmp-dev
phpaddmod gmp
Cách 2: Terminal của HiTechAdmin
- Vào Người dùng → (chọn người dùng) → Dịch vụ
- Mở terminal cho phiên bản PHP mong muốn
- Chạy các lệnh sau
Ví dụ: cài extension GMP:
apt update
apt install -y libgmp-dev
phpaddmod gmp
Cách 3: Truy cập SSH (root)
- Kết nối tới máy chủ qua SSH với quyền
root - Vào container PHP của người dùng và phiên bản mong muốn:
docker --context=USERNAME_HERE exec -it php-fpm-8.5 bash
- Cài extension
Ví dụ: cài extension GMP:
apt update
apt install -y libgmp-dev
phpaddmod gmp
Kiểm tra cài đặt
Bạn có thể kiểm tra extension đã được cài bằng cách chạy:
php -m
Hoặc bằng cách kiểm tra ứng dụng hay website của bạn.
Cài extension PHP cho mọi người dùng mới
Để một extension PHP tự động có sẵn cho mọi người dùng mới tạo, bạn có hai lựa chọn:
-
Sửa lệnh khởi động trong mẫu
docker-compose.ymlđể cài extension khi container khởi động- Cách này làm tăng thời gian khởi động container PHP
-
Dùng một Docker image PHP tuỳ chỉnh đã cài sẵn các extension cần thiết
- Khuyến nghị cho môi trường production
Các cách này dành cho người dùng nâng cao. Nếu cần trợ giúp, vui lòng liên hệ diễn đàn cộng đồng HiTechCloud hoặc kênh Discord.
Cài extension PHP cho mọi người dùng hiện có
Để cài một extension PHP cho mọi người dùng hiện có, bạn có thể:
- Chạy một script Bash tuỳ chỉnh cài extension cho từng người dùng và từng phiên bản PHP
- Chuyển mọi người dùng sang một Docker image PHP tuỳ chỉnh đã có sẵn extension
Cả hai cách đều cần kiến thức nâng cao về Docker và cấu trúc bên trong của HiTechCloud.
- Extension PHP cài sẵn
- Bật extension PHP đã cài
- Thêm extension PHP tuỳ chỉnh
- Cài extension PHP cho một người dùng
- Giả định trong ví dụ
- Cách 1: Terminal của HiTechCloud (bản Enterprise)
- Cách 2: Terminal của HiTechAdmin
- Cách 3: Truy cập SSH (root)
- Kiểm tra cài đặt
- Cài extension PHP cho mọi người dùng mới
- Cài extension PHP cho mọi người dùng hiện có