Ser*_*ter 6 php macos performance symfony docker
我的问题如下 - 我在OSX上使用包含Redis,NginX,PHP 7和Unison的容器的Docker.映射到php容器我有Symfony 3.1.7的卷.
一切正常,但Symfony的"欢迎"页面平均需要1.5秒的加载时间.同时没有泊坞窗的相同设置给我0.2秒的加载时间.与Symfony的控制台命令相同,所以,我想,这不是NginX的问题,Unison应该否定与Docker文件同步OSX问题相关的所有问题.
现在我已经没有想法我能做些什么来加快速度,以及如何找出造成1.5秒延迟的原因.
我在我的第二个MBP上遇到了同样的问题,但这种情况不会发生在同事笔记本电脑上,这与我的相似,但我们无法找到两个设置之间的任何差异.
一切都在我的MBP上运行,具有2.5 GHz i5,8 Gb RAM和SSD.
Docker 1.12.3,OSX 10.12.1(Sierra)
泊坞窗,compose.yml:
mydockerbox-redis:
image: phpdockerio/redis:latest
container_name: mydockerbox-redis
mydockerbox-webserver:
image: phpdockerio/nginx:latest
container_name: mydockerbox-webserver
volumes:
- ..:/var/www/mydockerbox
- ./nginx/nginx.conf:/etc/nginx/conf.d/default.conf
ports:
- "80:80"
links:
- mydockerbox-php-fpm
unison:
image: leighmcculloch/unison:latest
environment:
- UNISON_WORKING_DIR=/unison
volumes:
- ../mydockerbox:/var/www/mydockerbox
ports:
- "5000:5000"
mydockerbox-php-fpm:
build: .
dockerfile: php-fpm/Dockerfile
container_name: mydockerbox-php-fpm
volumes_from:
- unison
volumes:
- ./php-fpm/php-ini-overrides.ini:/etc/php/7.0/fpm/conf.d/99-overrides.ini
links:
- mydockerbox-redis
Run Code Online (Sandbox Code Playgroud)
UPD这里是php-fpm容器的Dockerfile:
FROM phpdockerio/php7-fpm:latest
# Install selected extensions and other stuff
RUN apt-get update \
&& apt-get -y --no-install-recommends install php7.0-mongodb php7.0-redis php7.0-igbinary \
&& apt-get clean; rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/doc/*
WORKDIR "/var/www/mydockerbox"
Run Code Online (Sandbox Code Playgroud)
我建议您使用docker-machine-driver-xhyve:
xhyve/hyperkit 的 docker-machine/libmachine 驱动程序插件(原生 macOS hypervisor.framework)
你可以简单地用brew安装(我希望你已经用brew安装了docker&Co,否则取消链接并用brew安装它们!):
brew install docker-machine-driver-xhyve
sudo chown root:wheel $(brew --prefix)/opt/docker-machine-driver-xhyve/bin/docker-machine-driver-xhyve
sudo chmod u+s $(brew --prefix)/opt/docker-machine-driver-xhyve/bin/docker-machine-driver-xhyve
Run Code Online (Sandbox Code Playgroud)
然后你可以创建一个 docker 机器:
docker-machine create --driver xhyve --xhyve-experimental-nfs-share my-xhyve-docker-machine
Run Code Online (Sandbox Code Playgroud)
并用它来运行你的容器
| 归档时间: |
|
| 查看次数: |
1715 次 |
| 最近记录: |