window10 家庭版安装docker和php开发环境

前期工作

一、在宿主机创建文件夹

D:\wnmp\mysql57-conf

D:\wnmp\mysql57-log

D:\wnmp\nginx110-conf

D:\wnmp\nginx110-log

D:\wnmp\php71-conf

D:\wnmp\php71-log

D:\wnmp\www

二、新建hyper-v.cmd文件,内容如下:(如何window10家庭版需要如何操作,如果是专业版请跳过)

pushd "%~dp0"
dir /b %SystemRoot%\servicing\Packages\*Hyper-V*.mum >hyper-v.txt
for /f %%i in (‘findstr /i . hyper-v.txt 2^>nul‘) do dism /online /norestart /add-package:"%SystemRoot%\servicing\Packages\%%i"
del hyper-v.txt
Dism /online /enable-feature /featurename:Microsoft-Hyper-V-All /LimitAccess /ALL

二(1)、修改注册表伪装专业版

win+R 运行regedit

计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion

EditionID修改成Professional

三、下载docker安装包

https://oomake.com/download/docker-windows

下载   Docker Windows 18.06.1-ce-win73下载

下载完安装,一路确定就可以

安装完,右键右下角任务栏的小鱼点击settings,选中shared Drives,选中D盘,点击apply

ps:如下操作命令行必须以管理员运行黑窗口

mysql:

docker pull mysql:5.7
docker run -d -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root --name mysql57 mysql:5.7
docker exec -ti mysql57 /bin/bash
docker cp mysql57:/var/log/mysql D:\wnmp\mysql57-log
docker cp mysql57:/etc/mysql D:\wnmp\mysql57-conf
docker stop mysql57
docker rm mysql57
docker run -d -v D:\wnmp\mysql57-log:/var/log/mysql/ -v D:\wnmp\mysql57-conf:/etc/mysql/ -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root --name mysql mysql:5.7
docker exec -ti mysql57 /bin/bash
mysql_secure_installation 数据库初始化
apt update
apt-get install vim

php:

docker pull php:7.1-fpm
docker run -d -v D:\wnmp\www:/var/www/html -p 9000:9000 --link mysql57:mysql --name php71 php:7.1-fpm
docker exec -ti php71 /bin/bash
docker cp php71:/usr/local/etc D:\wnmp\php71-conf
docker cp php71:/usr/local/var/log D:\wnmp\php71-log
docker cp php71:/var/www/html D:\wnmp\www
docker stop php71
docker rm php71
docker run -d -v D:\wnmp\php71-conf:/usr/local/etc -v D:\wnmp\php71-log:/usr/local/var/log -v D:\wnmp\www:/var/www/html -p 9000:9000 --link mysql57:mysql --name php71 php:7.1-fpm
docker exec -ti php71 /bin/bash
apt update
apt-get install vim

nginx:

docker pull nginx:1.10.3
docker run -d -p 80:80 --link php71:phpfpm --name nginx110 nginx:1.10.3
docker exec -ti nginx110 /bin/bash
docker cp nginx110:/etc/nginx/ D:\wnmp\nginx110-conf
docker cp nginx110:/var/log/nginx/ D:\wnmp\nginx110-log
docker cp nginx110:/var/www/html D:\wnmp\www
docker stop nginx110
docker rm nginx110
docker run -d -p 80:80 -v D:\wnmp\www:/var/www/html -v D:\wnmp\nginx110-conf:/etc/nginx/ -v D:\wnmp\nginx110-log:/var/log/nginx/ --link php71:phpfpm --name nginx nginx110

redis:

docker pull redis
docker run -p 6379:6379 -d redis redis-server

安装redis非自带扩展

docker exec -it php71 /bin/bash
curl -L -o /tmp/redis.tar.gz https://github.com/phpredis/phpredis/archive/3.1.3.tar.gz
tar xfz /tmp/redis.tar.gz
rm -r /tmp/redis.tar.gz
mkdir -p /usr/src/php/ext
mv phpredis-3.1.3 /usr/src/php/ext/redis
docker-php-ext-install redis
docker restart  php71

安装php自带扩展

docker exec -it php /bin/bash至目录下
cd /usr/local/bin
./docker-php-ext-install pdo_mysql
./docker-php-ext-install mysql
docker restart  php71

宿主机重启自动启动容器

docker container update --restart=always php71
docker container update --restart=always mysql57
docker container update --restart=always nginx110
docker container update --restart=always redis

修改nginx配置文件(D:\wnmp\nginx-conf\conf.d)

server {
    listen       80;
    server_name  www.csdx.com;
    root   /var/www/html/caishangdaxue/public;
    index  index.php index.html index.htm;
    access_log /etc/nginx/access.log;
    error_log /var/log/nginx/error.log;
    location / {
        try_files $uri $uri/ /index.php$is_args$args;
                    if (!-e $request_filename){
                        rewrite ^(.*)$ /index.php?s=$1 last;
                        break;
        }
    }
    location ~ \.php$ {
         fastcgi_split_path_info  ^((?U).+\.php)(/?.+)$;
         fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;
         fastcgi_param  PATH_INFO  $fastcgi_path_info;
         fastcgi_param  PATH_TRANSLATED  $document_root$fastcgi_path_info;
         include                         fastcgi_params;
         fastcgi_pass                    10.0.75.1:9000;
         try_files $uri = 404;
    }
    location ~ /\.(ht|svn|git) {
        #deny all;
    }
}

原文地址:https://www.cnblogs.com/dawuge/p/11277214.html

时间: 2024-11-12 17:27:13

window10 家庭版安装docker和php开发环境的相关文章

如何使用Docker部署PHP开发环境

本文主要介绍了如何使用Docker构建PHP的开发环境,文中作者也探讨了构建基于Docker的开发环境应该使用单容器还是多容器,各有什么利弊.推荐PHP开发者阅读.希望对大家有所帮助. 环境部署一直是一个很大的问题,无论是开发环境还是生产环境,但是 Docker 将开发环境和生产环境以轻量级方式打包,提供了一致的环境.极大的提升了开发部署一致性.当然,实际情况并没有这么简单,因为生产环境和开发环境的配置是完全不同的,比如日志等的问题都需要单独配置,但是至少比以前更加简单方便了,这里以 PHP 开

win7安装ruby on rails开发环境

前言 看到很多文章都说ruby环境在windows上是非常难搭建,会出现各种各样的怪问题,所以都推荐到linux和mac上安装开发.但是我按照教程搭了下,问题也不算太多.总过大概花费了2个半小时左右就完成了.所以大家不要被吓尿了,下面就把安装的步骤及具体的版本记录了一下供大家参考. 安装步骤: 开发机环境:我使用的开发机:win7 旗舰版 - 64位 (cpu是i5). 1 安装 rubyinstaller-2.0.0-p481.exe 1 选择安装目录:(如:D:\server\Ruby200

苹果MAC中安装并搭建Android开发环境的详细步骤

Android的开发平台搭建主要需要的工具有:Java虚拟机JDK.Eclipse.Eclipse插件ADT(Android Developer Tool)和Android开发包SDK,以下是具体的安装方法. A.JDK 在MAC中已经为我们预装了JDK并默认配置了Java系统变量,因此JDK对我们来说直接使用即可,查看MAC中的JDK版本方法是在命令行(硬盘/应用程序/实用工具/终端)中输入"java -version"并回车即可. B.Android SDK Android开发包同

转:windows 下的 eclipse安装goclipse 配置golang开发环境

windows 下的 eclipse安装goclipse 配置golang开发环境 windows 下的 eclipse安装goclipse 配置golang开发环境,捎带介绍了LiteIDE golang的配置 1. 下载goclipse eclipse plugins http://pan.baidu.com/s/1c0weLgO 安装完插件后,重启可以看到eclipse的右上角有个golang logo , 地鼠图标: 2. 下载golang,调试tools 下载Golang Window

在Windows系统中安装集成的PHP开发环境

原文:在Windows系统中安装集成的PHP开发环境 刚想学php的,又不会配置复杂php的环境,可以使用集成的,目前网上提供常用的PHP集成环境主要有AppServ.phpStudy.WAMP和XAMPP等软件,这些软件之间的差别不大.每种集成包都有多个不同的版本,可以下载版本比较高的任意一个集成软件安装使用. 我用的是appserv-win32-2.5.10.exe下载地址:http://www.appservnetwork.com/index.php?newlang=chinese App

【python安装】Windows上安装和创建python开发环境

1. 在 windows10 上安装python开发环境 Linux和Mac OS都自带python环境,但是Windows没有,需要自行安装. 第1步:访问 python官网,下载Windows平台下的安装包 地址:https://www.python.org/downloads/ 选择下载3.X的版本,我选择的是3.6.6的版本 双击下载完的文件python-3.6.6-amd64.exe,进入安装环节,按步骤完成安装.(我选的第一个Install Now默认安装.) 第2步:设置环境变量.

Docker for Windows安装与Linux+PHP开发环境搭建(一)

Docker是什么? 简单得来说,Docker是一个由GO语言写的程序运行的"容器"(Linux containers, LXCs); 目前云服务的基石是操作系统级别的隔离,在同一台物理服务器上虚拟出多个主机.Docker则实现了一种应用程序级别的隔离; 它改变我们基本的开发.操作单元,由直接操作虚拟主机(VM),转换到操作程序运行的"容器"上来. Docker的好处 Docker的优点:运行快.部署敏捷.灵活.轻量.开源免费. Boot2Docker是一个专为Do

Docker for mac 安装与搭建php开发环境

素材 https://www.docker.com/products/docker#/mac https://download.docker.com/mac/stable/Docker.dmg Docker学习 http://bstdn.blog.51cto.com/8667020/1895745 Dockerfile 中的命令 http://bstdn.blog.51cto.com/8667020/1895746 Dockerfile 实例 https://github.com/bstdn/d

怎么使用Docker搭建PHP开发环境呢?

在Docker流行之前,要搭建开发环境通常有两种选择:一种是使用wamp.xampp.mamp等集成开发环境安装包,另外一种就是使用普通虚拟机来安装linux服务器,然后通过下载一键安装包(如:lnmp)或者逐个安装做需要的软件.前者虽然简单,但太不灵活,想要安装额外的软件或者版本会很麻烦或者干脆不知道如何下手:后者除了费时费力,占用本机资源过多,可能会导致系统运行缓慢,而且如果你忘了及时生成快照,一旦失误,追悔莫及. 幸好,Docker来了!它简单易用,灵活多变,方便迅捷,扫除了以上种种弊端.