Ngày nay, gần một nửa trong số 1 triệu trang web hàng đầu trên internet sử dụng WordPress CMS [Hệ thống quản lý nội dung]. WordPress có rất nhiều tính năng và rất dễ sử dụng ngay cả đối với người dùng không có kỹ thuật, điều này khiến nó trở thành giải pháp CMS cho nhiều người. Tuy nhiên, thiết lập một trang web với WordPress trong máy chủ VPS hoặc máy chủ Đám mây có thể là một nhiệm vụ khá khó khăn đối với cả người dùng không có kỹ thuật cũng như kỹ thuật. Chúng ta sẽ học cách làm điều đó trong bài viết này
Sử dụng docker-compose, chúng ta có thể triển khai ‘WordPress’ với Nginx, MySQL và PHP-FPM. Chúng ta sẽ xem làm thế nào để tiến hành
Là một phần của Dịch vụ lưu trữ Docker của chúng tôi, Bobcares cung cấp giải pháp cho tất cả các truy vấn lớn và nhỏ
Hãy cùng xem các kỹ sư Hỗ trợ của chúng tôi cập bến WordPress bằng cách sử dụng Nginx và PHP-FPM như thế nào
Cách sử dụng Docker Compose để cài đặt WordPress với nginx, php-fpm và mysql
Docker-Compose là một công cụ dòng lệnh cho phép chúng tôi xác định và quản lý nhiều bộ chứa Docker dưới dạng một dịch vụ. Compose được viết bằng Python. Nó có thể được cài đặt bằng lệnh pip trong Python
Chúng ta có thể chạy nhiều Docker container bằng một lệnh duy nhất khi sử dụng Compose. Nó cho phép tạo một container như một dịch vụ. Vì vậy, nó lý tưởng cho môi trường phát triển, thử nghiệm và dàn dựng của chúng tôi
Tại đây, chúng tôi sẽ triển khai 'WordPress' với Nginx, MySQL và PHP-FPM bằng cách sử dụng docker-compose. Mỗi dịch vụ sẽ có vùng chứa riêng, vùng chứa này sẽ dựa trên hình ảnh từ Docker Hub Registry
cài đặt docker
Chúng ta sẽ bắt đầu từ đầu, cài đặt thủ công docker và docker Compose bằng lệnh apt
- Đầu tiên, hãy đảm bảo kho lưu trữ Ubuntu được cập nhật. Sau đó, cài đặt các bản cập nhật mới nhất.
______29nginx: image: nginx:latest ports: - '80:80' volumes: - ./nginx:/etc/nginx/conf.d - ./logs/nginx:/var/log/nginx - ./wordpress:/var/www/html links: - wordpress restart: always
0
- Vì docker mặc định đã có sẵn trong kho Ubuntu nên chúng ta có thể tiến hành cài đặt ngay.
______31
- Khởi động docker sau khi cài đặt hoàn tất. Sau đó thiết lập nó để bắt đầu tự động trong khi khởi động.
______32nginx: image: nginx:latest ports: - '80:80' volumes: - ./nginx:/etc/nginx/conf.d - ./logs/nginx:/var/log/nginx - ./wordpress:/var/www/html links: - wordpress restart: always
3
- Cuối cùng, hãy chạy lệnh sau để kiểm tra cài đặt Docker.
______00
Kết quả là, chúng ta sẽ có thể thấy hello-world của docker
Cài đặt Docker-Soạn thư
Docker-compose có sẵn trong kho python PyPI vì nó là tập lệnh python. Vì vậy, python pip có thể được sử dụng để cài đặt nó. Do đó, trước tiên chúng ta phải cài đặt Python và Python Pip trên hệ thống của mình
- Đầu tiên, Cài đặt python và python-pip bằng cách sử dụng các lệnh này.
______01
- Sau đó, sử dụng lệnh pip, cài đặt docker-compose.
______02
- chờ quá trình cài đặt hoàn tất. Sau đó, sử dụng lệnh docker-compose để xác minh cài đặt.
______03
Kết quả là, chúng ta sẽ nhận được docker-compose
Thiết lập WordPress
Hệ thống hiện đã cài đặt docker và docker-compose. Vì vậy, trong bước này, chúng tôi sẽ tạo và định cấu hình môi trường soạn thảo Docker cho dự án WordPress của chúng tôi
Ứng dụng PHP ‘WordPress’ sẽ được triển khai dưới dạng bộ chứa docker do docker-compose quản lý, với Nginx là máy chủ web và MariaDB cho cơ sở dữ liệu MySQL. Mỗi ứng dụng sẽ chạy trong vùng chứa riêng của nó, như được hiển thị trong danh sách sau
- -nginx. Chúng tôi sử dụng 'nginx. hình ảnh docker chính thức mới nhất
- -WordPress. Trên docker-hub, WordPress cung cấp một số hình ảnh docker. Chúng tôi sẽ sử dụng wordpress mới nhất với PHP-FPM mới nhất trên đó
- -MySQL. Chúng tôi sẽ sử dụng phiên bản mới nhất của bộ chứa chính thức của MariaDB
Vì vậy, chúng tôi yêu cầu ba hình ảnh docker. Chúng tôi sẽ không chạy docker với quyền root;
- Vì vậy, chỉ cần chạy lệnh bên dưới để tạo người dùng mới.
______04nginx: image: nginx:latest ports: - '80:80' volumes: - ./nginx:/etc/nginx/conf.d - ./logs/nginx:/var/log/nginx - ./wordpress:/var/www/html links: - wordpress restart: always
5
- Thêm người dùng vào nhóm 'docker' để họ có thể sử dụng lệnh docker. Sau đó khởi động lại dịch vụ docker.
nginx: image: nginx:latest ports: - '80:80' volumes: - ./nginx:/etc/nginx/conf.d - ./logs/nginx:/var/log/nginx - ./wordpress:/var/www/html links: - wordpress restart: always
6nginx: image: nginx:latest ports: - '80:80' volumes: - ./nginx:/etc/nginx/conf.d - ./logs/nginx:/var/log/nginx - ./wordpress:/var/www/html links: - wordpress restart: always
7
- Đăng nhập với tư cách người dùng ‘bobcares’. Sau đó, đối với dự án WordPress, hãy tạo một thư mục mới.
______08nginx: image: nginx:latest ports: - '80:80' volumes: - ./nginx:/etc/nginx/conf.d - ./logs/nginx:/var/log/nginx - ./wordpress:/var/www/html links: - wordpress restart: always
9nginx: image: nginx:latest ports: - '80:80' volumes: - ./nginx:/etc/nginx/conf.d - ./logs/nginx:/var/log/nginx - ./wordpress:/var/www/html links: - wordpress restart: always
00
- Sau đó, tạo một thư mục mới cho dự án và một tệp mới có tên là 'docker-compose. yml'. Chỉ cần gõ các lệnh sau.
______101nginx: image: nginx:latest ports: - '80:80' volumes: - ./nginx:/etc/nginx/conf.d - ./logs/nginx:/var/log/nginx - ./wordpress:/var/www/html links: - wordpress restart: always
02nginx: image: nginx:latest ports: - '80:80' volumes: - ./nginx:/etc/nginx/conf.d - ./logs/nginx:/var/log/nginx - ./wordpress:/var/www/html links: - wordpress restart: always
03nginx: image: nginx:latest ports: - '80:80' volumes: - ./nginx:/etc/nginx/conf.d - ./logs/nginx:/var/log/nginx - ./wordpress:/var/www/html links: - wordpress restart: always
04nginx: image: nginx:latest ports: - '80:80' volumes: - ./nginx:/etc/nginx/conf.d - ./logs/nginx:/var/log/nginx - ./wordpress:/var/www/html links: - wordpress restart: always
05
Danh sách tệp và thư mục của dự án
soạn thảo docker. yml. Nó là file cấu hình mà chúng ta phải tạo khi bắt đầu một project mới với Docker
nginx. Thư mục này chứa cấu hình nginx bổ sung của chúng tôi, chẳng hạn như máy chủ ảo, v.v.
dữ liệu db. Thư mục dữ liệu cho mysql. Dữ liệu ‘/var/lib/mysql’ được gắn trong thư mục db-data
khúc gỗ. Nhật ký ứng dụng, nginx, mariadb và php-fpm đều được lưu trữ trong thư mục này
báo chí. Thư mục đó sẽ chứa tất cả các tệp WordPress
Bây giờ, hãy tạo một tệp cấu hình nginx mới cho máy chủ ảo wordpress của chúng tôi trong thư mục 'nginx'
- Đầu tiên, tạo một wordpress mới. tập tin conf.
nginx: image: nginx:latest ports: - '80:80' volumes: - ./nginx:/etc/nginx/conf.d - ./logs/nginx:/var/log/nginx - ./wordpress:/var/www/html links: - wordpress restart: always
06 - Sau đó, sao chép và dán cấu hình sau.
______107 Cuối cùng, thoát vim sau khi lưu tệp
Định cấu hình Docker-Soạn thư
Nếu chúng ta muốn bắt đầu dự án docker-compose, trước tiên chúng ta phải tạo docker-compose. yml tập tin, như hình dưới đây
- Với vim, chỉnh sửa docker-compose. yml.
______108 - Sau đó, xác định các dịch vụ của chúng tôi, bắt đầu với Nginx trên dòng đầu tiên. Chúng tôi đang sử dụng phiên bản mới nhất của hình ảnh docker chính thức của Nginx. Chúng tôi đã thiết lập ánh xạ cổng từ cổng 80 trên vùng chứa đến cổng 80 trên máy chủ. Sau đó, định cấu hình khối lượng docker cho cấu hình máy chủ ảo Nginx của chúng tôi, khối lượng tệp nhật ký Nginx và khối lượng thư mục gốc của web ‘/var/www/html’ tiếp theo. Vùng chứa WordPress được liên kết với vùng chứa Nginx
nginx: image: nginx:latest ports: - '80:80' volumes: - ./nginx:/etc/nginx/conf.d - ./logs/nginx:/var/log/nginx - ./wordpress:/var/www/html links: - wordpress restart: always
- Sau đó, chúng tôi sẽ cần chỉ định máy chủ MySQL. Chúng tôi đang sử dụng hình ảnh MariaDB gần đây nhất. Định cấu hình cổng 3306 cho vùng chứa và sử dụng biến môi trường 'MẬT KHẨU ROOT MYSQL' để đặt mật khẩu gốc MySQL. Cuối cùng, thiết lập dung lượng vùng chứa của thư mục dữ liệu MySQL
nginx: image: nginx:latest ports: - '80:80' volumes: - ./nginx:/etc/nginx/conf.d - ./logs/nginx:/var/log/nginx - ./wordpress:/var/www/html links: - wordpress restart: always0
- Sau đó, sử dụng WordPress 4. 7 hình ảnh docker với PHP-FPM 7. 0 được cài đặt, chúng tôi sẽ thiết lập dịch vụ WordPress. Đặt cổng PHP-fpm thành 9000. Sau đó kích hoạt docker volume cho thư mục web ‘/var/www/html’ cho thư mục máy chủ ‘wordpress,’. Cuối cùng, định cấu hình cơ sở dữ liệu bằng biến môi trường WordPress, sau đó liên kết dịch vụ WordPress với mysql
báo chí
nginx: image: nginx:latest ports: - '80:80' volumes: - ./nginx:/etc/nginx/conf.d - ./logs/nginx:/var/log/nginx - ./wordpress:/var/www/html links: - wordpress restart: always1
- Cuối cùng, lưu tệp và thoát trình soạn thảo vim sau khi thêm ba phần vào docker-compose. tập tin yml
Cấu hình docker-compose của chúng ta đã hoàn tất
Chạy Docker-compose
- Bắt đầu bằng cách sử dụng Docker soạn để tạo vùng chứa mới. Bắt đầu các vùng chứa mới dựa trên tệp soạn thảo của chúng tôi trong thư mục soạn thảo wordpress.
______109nginx: image: nginx:latest ports: - '80:80' volumes: - ./nginx:/etc/nginx/conf.d - ./logs/nginx:/var/log/nginx - ./wordpress:/var/www/html links: - wordpress restart: always
10 - Có thể xem đầu ra của lệnh. Có ba vùng chứa được tạo. Hãy sử dụng tùy chọn ps để kiểm tra trạng thái của vùng chứa.
______211 - Hơn nữa, nếu chúng ta muốn xem đầu ra nhật ký của vùng chứa, hãy sử dụng các lệnh bên dưới.
______212nginx: image: nginx:latest ports: - '80:80' volumes: - ./nginx:/etc/nginx/conf.d - ./logs/nginx:/var/log/nginx - ./wordpress:/var/www/html links: - wordpress restart: always
13nginx: image: nginx:latest ports: - '80:80' volumes: - ./nginx:/etc/nginx/conf.d - ./logs/nginx:/var/log/nginx - ./wordpress:/var/www/html links: - wordpress restart: always
14Cài đặt WordPress
- Hãy kiểm tra các cổng có sẵn/các cổng đang mở của hệ thống trước khi chuyển sang bước tiếp theo. Hãy chắc chắn rằng chúng tôi có ba cổng mở. 80, 3306 và 9000.
nginx: image: nginx:latest ports: - '80:80' volumes: - ./nginx:/etc/nginx/conf.d - ./logs/nginx:/var/log/nginx - ./wordpress:/var/www/html links: - wordpress restart: always
8 - Bây giờ hãy mở trình duyệt web và nhập địa chỉ IP hoặc URL của máy chủ vào thanh địa chỉ.
http. //máy chủIP/ - Trang cài đặt WordPress có thể được xem. Chọn ngôn ngữ ưa thích và nhấp vào 'Tiếp tục. ’
- Sau đó, nhấp vào ‘Cài đặt WordPress‘ và nhập tiêu đề trang web, người dùng và mật khẩu quản trị viên và địa chỉ email
- ‘Bảng điều khiển quản trị WordPress‘ sẽ được hiển thị. Với docker-compose, WordPress đã được cài đặt
[Tìm giải pháp cho truy vấn khác? . ]
Phần kết luận
Tóm lại, các kỹ sư Hỗ trợ lành nghề của Bobcares đã trình bày cách sử dụng trình soạn thảo docker để cài đặt WordPress với Nginx, MySQL và PHP-FPM
NGĂN CHẶN MÁY CHỦ CỦA BẠN KHỎI SỰ CỐ
Không bao giờ mất khách hàng vì tốc độ máy chủ kém. Hãy để chúng tôi giúp bạn
Các chuyên gia máy chủ của chúng tôi sẽ giám sát và bảo trì máy chủ của bạn 24/7 để nó luôn hoạt động nhanh và an toàn
Cách cài đặt PHP
Chạy hình ảnh PHP-FPM, gắn một thư mục từ máy chủ của bạn. .Sudo docker container run --rm -v $[pwd]. /var/www/html nanoninja/php-fpm chỉ mục php. phpSudo docker container run --rm --name phpfpm -v $[pwd]. /var/www/html -p 3000. 3000 nanoninja/php-fpm php -S="0. 0. 0. 0. 3000" -t="/var/www/html"Làm cách nào để sử dụng PHP với docker Nginx?
Dịch vụ Nginx . Create a folder named PHP with Nginx and open it in Visual Studio Code. Bên trong nó, tạo một tệp có tên docker-compose. yml và viết cái này bên trong nó. Trong Docker Compose, bạn định nghĩa cái gọi là "dịch vụ", sẽ được đại diện bởi các container chạy trên docker.Cách sử dụng PHP
Cung cấp ứng dụng PHP của bạn thông qua giao diện người dùng nginx .Bước 1. Tạo mạng. .Bước 2. Tạo một khối máy chủ. .Bước 3. Chạy hình ảnh PHP-FPM với một tên cụ thể. .Bước 4. Chạy hình ảnh nginx. .Bước 1. Chạy hình ảnh PHP-FPM. .Bước 2. Chỉnh sửa cấu hình. .Bước 3. Khởi động lại PHP-FPM. .Bước 1. Nhận hình ảnh cập nhậtCách cài đặt PHP 7. 4 trong docker Nginx?
điều kiện tiên quyếtĐăng nhập vào Máy chủ và Cập nhật Gói Hệ điều hành Máy chủ. Đầu tiên, đăng nhập vào Ubuntu 20 của bạn. 04 qua SSH với tư cách là người dùng root. ssh root@IP_Address -p Port_number. .Cài đặt Nginx. .Cài đặt PHP7. .Cài đặt PHP7. .Định cấu hình Nginx để xử lý tệp PHP. .Xác minh PHP