Apk thêm php mysql

Để nginx hoạt động chính xác, nó cần gán số PID [nhận dạng quy trình]. Nó làm được điều này nhưng tự động gán vào thư mục, mà mặc định thư mục đó không tồn tại nên ta phải tạo thủ công

Trước khi thư mục được tạo

nginx# [Expected Output]
# nginx: [emerg] open[] "/run/nginx/nginx.pid" failed [2: No such file or directory]

Sau khi tạo thư mục

mkdir /run/nginx;
nginx;
# [Expected Output]
# [blank]

Bây giờ chúng tôi có thể kiểm tra trình duyệt để xem nó có đang chạy hay không, 404 sẽ hiển thị

nginx chạy trên cổng 80 với kết quả 404

đang cài đạt PHP

Tiếp theo là cài đặt PHP và cấu hình nó với nginx

apk add php-fpm;
apk add nano; # to edit files with

Tiếp theo, hãy sửa đổi /etc/nginx/conf. d/mặc định. conf để cho phép php

nano /etc/nginx/conf.d/default.conf;

Trước

# This is a default site configuration which will simply return 404, preventing
# chance access to any other virtualhost.
server {
listen 80 default_server;
listen [::]:80 default_server;
# Everything is a 404
location / {
return 404;
}
# You may need this to prevent return 404 recursion.
location = /404.html {
internal;
}
}

Sau đó

# This is a default site configuration which will simply return 404, preventing
# chance access to any other virtualhost.
server {
listen 80 default_server;
listen [::]:80 default_server;

root /var/www/localhost/htdocs;
index index.php index.html index.htm;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
# You may need this to prevent return 404 recursion.
location = /404.html {
internal;
}
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000location ~ \.php$ {
try_files $uri /index.php =404;
fastcgi_split_path_info ^[.+\.php][/.+]$;
fastcgi_pass 0.0.0.0:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
}

Lưu tệp và kiểm tra xem có lỗi nào với tệp cấu hình với nginx không

nginx -t;# [Expected Output]
# nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
# nginx: configuration file /etc/nginx/nginx.conf test is successful

Khởi động lại nginx và bắt đầu php-fpm

nginx -s reload;# in case php-fpm is giving you issues, kill it and restart it
killall -KILL php-fpm7;
/usr/sbin/php-fpm7;

Tạo một tệp mới trong /var/www/localhost/htdocs

mục lục. php

apk update;
apk add nginx;
0

Mở http. //máy chủ cục bộ

Thông tin PHP Làm việcKết nối WordPress

Tại thời điểm của hướng dẫn này, chúng tôi sẽ sử dụng WordPress 4. 9. 8

apk update;
apk add nginx;
1

Hãy bắt đầu bằng cách tạo một thư mục cấu hình và sao chép mặc định của chúng tôi. conf từ vùng chứa hiện có của chúng tôi để lưu các cấu hình đó

apk update;
apk add nginx;
2

Hãy tắt vùng chứa của chúng tôi và bắt tay vào tạo Dockerfile;

apk update;
apk add nginx;
3

Tạo Dockerfile

Chúng tôi đang tạo cơ sở và thêm nhiều thư viện hơn khi chúng tôi tiếp tục

Dockerfile

apk update;
apk add nginx;
4

Bây giờ chúng ta đã có môi trường cho Docker, hãy xây dựng và làm việc với tệp đó

apk update;
apk add nginx;
5

Chạy ứng dụng ngay bây giờ để xem WordPress đã cài đặt. Chạy lệnh này trong thư mục kho lưu trữ

apk update;
apk add nginx;
6

Mở http. //máy chủ cục bộ

WordPress hoạt độngThêm cơ sở dữ liệu

Để chúng tôi kết nối cơ sở dữ liệu, chúng tôi sẽ cần tạo một mạng để chúng có thể tham khảo lẫn nhau dễ dàng hơn

Tạo cơ sở dữ liệu MySQL

Chúng tôi sẽ sử dụng hình ảnh mới nhất của MySQL từ Docker Hub

https. // trung tâm. người đóng tàu. com/_/mysql/

Chúng tôi sẽ đặt người dùng root bằng mật khẩu của MyPassword1. và tên cơ sở dữ liệu của wpdb

apk update;
apk add nginx;
7

Hãy kiểm tra cơ sở dữ liệu bằng cách vào vùng chứa

apk update;
apk add nginx;
8

Để thoát khỏi vùng chứa, nhấn ctrl + p rồi ctrl + q

Tạo Mạng

Tiếp theo, chúng ta sẽ cần tạo một mạng docker và thêm cả hai vùng chứa để cho phép chúng giao tiếp với nhau

apk update;
apk add nginx;
9

Tiếp theo, hãy thêm các thùng chứa và đặt cho chúng các tên bí danh giống nhau

nginx# [Expected Output]
# nginx: [emerg] open[] "/run/nginx/nginx.pid" failed [2: No such file or directory]
0

Bây giờ hãy bắt đầu quá trình cài đặt

Cài đặt cơ sở dữ liệu WordPress

Kết thúc với một số chi tiết trang web để hoàn tất cài đặt

Cài đặt WordPress

Et voilà

Bảng điều khiển WordPress

PhpMyAdmin tùy chọn

Nếu chúng ta muốn xem cơ sở dữ liệu và kết nối với nó, chúng ta có thể đọc trên Docker Hub cài đặt PhpMyAdmin

nginx# [Expected Output]
# nginx: [emerg] open[] "/run/nginx/nginx.pid" failed [2: No such file or directory]
1

Mở http. //máy chủ cục bộ. 8888 và nhập cùng tên người dùng và mật khẩu mysql

Vùng chứa PhpMyAdmin mới được tạo

Và bây giờ bạn sẽ thấy cơ sở dữ liệu WordPress

Cơ sở dữ liệu PhpMyAdmin WordPressTối ưu hóa để phát triển cục bộ

Bây giờ chúng ta đã xây dựng thành công môi trường, cơ sở dữ liệu và PhpMyAdmin, hãy tạo một tập lệnh sẽ thực hiện tác vụ này để khởi động và chạy mọi thứ ngay khi chúng ta sao chép kho lưu trữ này

kết xuất cơ sở dữ liệu

Trước tiên, chúng tôi sẽ cần lưu trạng thái của cơ sở dữ liệu để có thể tải lại

nginx# [Expected Output]
# nginx: [emerg] open[] "/run/nginx/nginx.pid" failed [2: No such file or directory]
2

Trong PhpMyAdmin, chúng tôi sẽ thực hiện Xuất và lưu wpdb của chúng tôi. sql vào thư mục cơ sở dữ liệu mới được tạo của chúng tôi

Kết xuất cơ sở dữ liệu WordPress

Tạo tập lệnh Shell

Chúng tôi cũng sẽ ví dụ Docker Compose sau nhưng để tự động hóa tất cả các tác vụ của chúng tôi để phát triển máy chủ cục bộ bằng một tập lệnh, chúng tôi sẽ tạo một tập lệnh shell để chạy

/bắt đầu. sh

nginx# [Expected Output]
# nginx: [emerg] open[] "/run/nginx/nginx.pid" failed [2: No such file or directory]
3

Lưu tệp và xóa các vùng chứa khác

nginx# [Expected Output]
# nginx: [emerg] open[] "/run/nginx/nginx.pid" failed [2: No such file or directory]
4

Hãy chạy tập lệnh

nginx# [Expected Output]
# nginx: [emerg] open[] "/run/nginx/nginx.pid" failed [2: No such file or directory]
5

Mở http. //máy chủ cục bộ

Nó sẽ báo lỗi kết nối cơ sở dữ liệu. Điều này là do wp-config. php được cấu hình cho cơ sở dữ liệu cũ. Chúng ta sẽ chỉ cần bắt đầu lại nó

Lỗi kết nối cơ sở dữ liệu WordPress

Chúng tôi sẽ cần xóa wp-config. php và bắt đầu lại quá trình cài đặt

nginx# [Expected Output]
# nginx: [emerg] open[] "/run/nginx/nginx.pid" failed [2: No such file or directory]
6

Cài đặt lại WordPress

Cấu hình WordPress

Nhập lại Cài đặt cơ sở dữ liệu WordPress

WordPress sẽ nhận ra cài đặt hiện có

Và nó đang hoạt động

Sao lưu trang web WordPressLưu thay đổi cơ sở dữ liệu

Tiếp theo, chúng tôi sẽ thực hiện các thay đổi đối với cơ sở dữ liệu của mình, xuất chúng và lưu chúng vào kho lưu trữ git của chúng tôi để theo dõi

Tạo một bài đăng mới

Tạo một kết xuất cơ sở dữ liệu

Khi ở trong thư mục repo chính, chúng tôi sẽ ghi đè lên cơ sở dữ liệu và bắt đầu lại quá trình

nginx# [Expected Output]
# nginx: [emerg] open[] "/run/nginx/nginx.pid" failed [2: No such file or directory]
7

Loại bỏ các thùng chứa

nginx# [Expected Output]
# nginx: [emerg] open[] "/run/nginx/nginx.pid" failed [2: No such file or directory]
4

Khởi động lại máy với cơ sở dữ liệu mới

nginx# [Expected Output]
# nginx: [emerg] open[] "/run/nginx/nginx.pid" failed [2: No such file or directory]
9

Gỡ bỏ wp-config. php

nginx# [Expected Output]
# nginx: [emerg] open[] "/run/nginx/nginx.pid" failed [2: No such file or directory]
6

Mở http. //máy chủ cục bộ

Xem Bài viết mới vẫn tồn tại

Bây giờ chúng tôi đã thành công

  1. Tạo môi trường NGINX và PHP cho WordPress
  2. Đã kết nối vùng chứa MySQL
  3. Tự động hóa với shell script để thực hiện phát triển cục bộ
  4. Duy trì cơ sở dữ liệu trong kho git của chúng tôi với shell sc

Chúng tôi có thể cải thiện điều gì

  • Chúng tôi có thể thêm một tệp soạn thảo docker
  • Đưa mọi thứ lên một tầm cao mới với Kubernetes
  • Làm công việc đóng gói vùng chứa dưới dạng hình ảnh cho quá trình triển khai

Nếu bạn muốn đọc cách tôi thường đóng gói mọi thứ để triển khai, hãy xem bài viết này, tôi đã viết Quy trình triển khai Docker của NodeJS

Nếu bạn nhận được giá trị từ điều này và/hoặc nếu bạn nghĩ rằng điều này có thể được cải thiện, vui lòng cho tôi biết trong phần nhận xét

Cách cài đặt PHP 7. 4 ở Alpine?

Bước 1. Cài đặt máy chủ web Nginx. Nhập lệnh apk sau để cài đặt máy chủ nginx trên Alpine Linux. .
Bước 2. Cài đặt PHP 7 fpm trên Alpine Linux. .
Bước 3. Cài đặt PHP 7. mô-đun x. .
Bước 4. Khởi động máy chủ php-fpm7. .
Bước 5. Định cấu hình PHP 7. .
Bước 6. Kiểm tra PHP 7

Làm cách nào để cài đặt PHP MySQL trong Docker?

DAMP - Thiết lập máy chủ cục bộ Apache, MySQL & PHP bằng Docker .
Tạo một thư mục mới cho máy chủ cục bộ của bạn [MY_APP được sử dụng làm trình giữ chỗ]
Thêm docker-compose. yml, Dockerfile và nginx. .
Với ứng dụng đầu cuối yêu thích của bạn

Làm cách nào để cài đặt các tiện ích mở rộng PHP trong Docker?

Dễ dàng cài đặt các tiện ích mở rộng PHP trong hình ảnh PHP Docker chính thức Cách sử dụng Tải xuống tập lệnh nhanh chóng Với Dockerfile Với curl Với thực thi trực tiếp từ curl .

Chủ Đề