Tôi đang chạy một ứng dụng LAMP bằng docker soạn trên Ubuntu 21.04. Ứng dụng này cực kỳ chậm.
Kiểm tra số liệu thống kê docker, tôi thấy rằng mức sử dụng % CPU, trong khi tải trang, hầu hết thời gian là khoảng 0,01 *% ngoại trừ một số đột biến, không may là kéo dài vài giây, trong đó mức sử dụng CPU đạt tỷ lệ phần trăm cao hơn (khoảng 20% - 30%).
Thông tin docker:
CẢNH BÁO: Lỗi khi tải tệp cấu hình: .dockercfg: $HOME không được xác định
Khách hàng:
Bối cảnh: mặc định
Chế độ gỡ lỗi: sai
Người phục vụ:
Thùng chứa: 13
Đang chạy: 3
Đã tạm dừng: 0
Đã dừng: 10
Hình ảnh: 34
Phiên bản máy chủ: 19.03.13
Trình điều khiển lưu trữ: overlay2
Sao lưu hệ thống tập tin: extfs
Hỗ trợ d_type: true
Khác biệt lớp phủ gốc: đúng
Trình điều khiển ghi nhật ký: tệp json
Trình điều khiển nhóm: cgroupfs
Bổ sung:
khối lượng: cục bộ
Mạng: cầu máy chủ ipvlan lớp phủ macvlan null
Nhật ký: awslogs flud gcplogs gelf journald json-file local logentries splunk syslog
Bầy đàn: không hoạt động
Thời gian chạy: runc
Thời gian chạy mặc định: runc
Khởi tạo nhị phân: docker-init
phiên bản chứa: 8fba4e9a7d01810a393d5d25a3621dc101981175
phiên bản runc:
phiên bản ban đầu: fec3683
Tùy chọn bảo mật:
người mặc áo giáp
bí mật
Hồ sơ: mặc định
Phiên bản hạt nhân: 5.11.0-22-chung
Hệ điều hành: Ubuntu Core 18
Loại hệ điều hành: linux
Kiến trúc: x86_64
CPU: 8
Tổng bộ nhớ: 15,36GiB
Tên: fabrizio-XPS-13-9305
ID: C7F4:H3BH:6S65:I24Q:PJ4W:EEBN:SXMH:V2GN:B67C:XYUL:R56O:5AKX
Thư mục gốc Docker: /var/snap/docker/common/var-lib-docker
Chế độ gỡ lỗi: sai
Đăng ký: https://index.docker.io/v1/
Nhãn:
Thử nghiệm: sai
Đăng ký không an toàn:
127.0.0.0/8
Đã bật khôi phục trực tiếp: sai
Đây là tệp docker-compose.yml:
phiên bản: '3'
dịch vụ:
apache:
phụ thuộc:
- mariadb
xây dựng:
bối cảnh: .
dockerfile: apache/Dockerfile
lập luận:
URL: 'fp.example.com'
môi trường:
- URL=fp.example.com
hình ảnh: apache
cổng:
- "80:80"
- "443:443"
khối lượng:
- ../fp.example:/var/www/fp.example
- ./logs/apache:/var/log/apache2
liên kết:
- mariadb:cơ sở dữ liệu"
- solr:solr"
mariab:
hình ảnh: mariadb:10.5-focal
cổng:
- "3306:3306"
khối lượng:
- ./mysql:/var/lib/mysql
môi trường:
MYSQL_ROOT_PASSWORD: ***********
MYSQL_DATABASE: *********
MYSQL_USER: ***********
MYSQL_PASSWORD: ***********
solr:
hình ảnh: solr:8
cổng:
- "8983:8983"
khối lượng:
- ./solr:/var/solr
Đây là Dockerfile apache của tôi:
TỪ Ubuntu:20.04
LABEL Description="Đèn Ubuntu [APACHE PHP MYSQL]" \
Giấy phép="Giấy phép Apache 2.0" \
Cách sử dụng="" \
Phiên bản="1.0"
URL ARG
ENV TERM=xterm\
TZ=Châu Âu/Berlin\
DEBIAN_FRONTEND=không tương tác
CHẠY bản cập nhật apt-get
#RUN apt-get nâng cấp -y
CHẠY cài đặt apt-get -y --fix-missing \
tar \
nén \
giải nén \
sed \
nano \
apache2 \
libapache2-mod-php \
php \
php-cli \
php chung \
php-dev \
php-fpm \
php-gd \
php-json \
php-mbstring \
php-mysql \
php-readline \
php-xà phòng \
php gọn gàng \
php-xdebug \
php-xmlrpc \
php-zip\
nhà soạn nhạc
# -- QUẢ ANH ĐÀO -- #
CHẠY mkdir /var/www/$URL
CHẠY chown -R www-data:www-data /var/www/$URL
SAO CHÉP /apache/apache.conf /etc/apache2/sites-available/
SAO CHÉP /apache/php.ini /etc/php/7.4/apache2/
SAO CHÉP /apache/cert/myCA.crt /usr/local/share/ca-certificates/
SAO CHÉP/apache/cert/crt/etc/apache2/ssl/
SAO CHÉP/apache/cert/key/etc/apache2/ssl/
# -- TẬP -- #
KHỐI LƯỢNG /var/www/$URL
KHỐI LƯỢNG /var/log/Apache2
#APACHE
CHẠY a2enmod viết lại
CHẠY a2enmod ssl
CHẠY a2dissite 000-mặc định
CHẠY a2ensite apache
CHẠY phpenmod xdebug
CHẠY phpenmod gọn gàng
CHẠY cập nhật-ca-chứng chỉ
#XDEBUG
CHẠY tiếng vang "xdebug.remote_enable = 1" >> /etc/php/7.4/mods-available/xdebug.ini
CHẠY echo "xdebug.remote_host = docker.for.mac.host.internal" >> /etc/php/7.4/mods-available/xdebug.ini
CHẠY tiếng vang "xdebug.remote_port = 10000" >> /etc/php/7.4/mods-available/xdebug.ini
CHẠY tiếng vang "xdebug.remote_autostart = 1" >> /etc/php/7.4/mods-available/xdebug.ini
CHẠY echo "xdebug.remote_log=/var/log/apache2/xdebug.log" >> /etc/php/7.4/mods-available/xdebug.ini
TIẾP XÚC 80
TIẾP XÚC 443
Dịch vụ CMD apache2 bắt đầu && đuôi -f /dev/null
Tôi đang đăng bài này ở đây vì cùng một dự án, chạy trên mac và windows, đang hoạt động tốt. Vì vậy, tôi nghĩ rằng vấn đề có thể đến từ docker trên Ubuntu.
Cảm ơn tất cả trước.