https://notemi.cn/docker-quickly-set-up-php-nginx-mysql-environment.html1、设置docker{ "registry-mirrors": [ "https://ow2enw8q.mirror.aliyuncs.com" // 指定阿里镜像加速器 ], "insecure-registries": [], "debug": false, "experimental": true // 设置为true,Windows需开启Hyper-V(解决错误no matching manifest for windows/amd64 10.0.18362 in the manifest list entries)}更新安装软件: apt-get update apt-get install procps apt-get install vim apt install iputils-pingMySQL:1、docker pull mysql:5.72、docker run \ -d \ -p 3306:3306 \ -e MYSQL_ROOT_PASSWORD=12345678910 \ -v /D/container/mysql/conf:/etc/mysql/conf.d \ -v /D/container/mysql/logs:/logs \ -v /D/container/mysql/data:/var/lib/mysql \ --name mysql-5.7 mysql:5.73、docker exec -it mysql /bin/bashPHP:1、docker pull php:7.3-fpm2、docker run \ -d \ -p 9000:9000 \ -v D:/code/php/soterea:/usr/share/nginx/html \ --link mysql:mysql \ --name php php:7.3-fpm 3、docker exec -it php /bin/bash4、安装扩展: 1、下载扩展:wget https://pecl.php.net/get/swoole-4.7.0.tgz 2、解压:tar -xvf swoole-4.7.0.tgz 3、在PHP容器中创建一个/usr/src/php的目录:docker-php-source extract 4、移动源码到指定目录:mv phpredis-5.0.2 /usr/src/php/ext/swoole 5、安装:docker-php-ext-install swoole 扩展目录:/usr/local/lib/php/extensions/no-debug-non-zts-20180731/extension=xdebug.so 6、如果安装gd库报png.h错误,则 apt-get install libpng-devNginx:1、docker pull nginx:latest2、docker run \ -d \ -p 80:80 \ -v D:/code/php/soterea:/usr/share/nginx/html \ -v D:/container/nginx/conf.d:/etc/nginx/conf.d \ --link php:php \ --name nginx nginxComposer:1、curl -sS https://getcomposer.org/installer | php2、配置全局命令:mv compose.phar /usr/local/bin/composer3、切换国内镜像源:composer config -g repo.packagist composer https://packagist.phpcomposer.com4、更新:composer selfupdate拷贝文件到宿主机:docker cp nginx:/etc/nginx/nginx.conf D:/container/nginx/nginx.confdocker cp D:/container/nginx/conf.d/base.service.conf nginx:/etc/nginx/conf.d/base.service.conf docker cp D:/container/nginx/conf.d/eoms.api.conf nginx:/etc/nginx/conf.d/eoms.api.conf docker cp D:/container/nginx/conf.d/monitoring.platform.v2.conf nginx:/etc/nginx/conf.d/monitoring.platform.v2.conf docker cp D:/container/nginx/conf.d/default.conf nginx:/etc/nginx/conf.d/default.conf docker cp php:/usr/local/etc/php-fpm.conf D:/container/php/etc/php-fpm.conf // 这个文件没啥用,不用修改docker cp php:/usr/local/etc/php-fpm.d/www.conf D:/container/php/etc/php-fpm.d/www.confdocker cp php:/usr/local/etc/php/php.ini D:/container/php/etc/php/php.ini docker cp D:/container/php/etc/php-fpm.d/www.conf php:/usr/local/etc/php-fpm.d/www.conf 错误信息:Error response from daemon: filesystem operations against a running Hyper-V container are not supported处理方式:停止容器即可解决方法:修改php-fpm所在容器的/etc/php-fpm.d/www.conf文件把listen = 127.0.0.1:9000修改为listen = 0.0.0.0:9000docker run \ -d \ -p 3306:3306 \ -e MYSQL_ROOT_PASSWORD=1234567890 \ -v /data/docker-conf/mysql/conf:/var/lib/mysql \ --name mysql mysql:5.7docker run \ -d \ -p 9000:9000 \ -v /data/docker-conf/php73-fpm/etc:/usr/local/etc \ -v /usr/share/nginx/html:/usr/share/nginx/html \ --link mysql:mysql \ --name php php:7.3-fpm