操作系统:
win10 家庭版
安装docker:
官网下载的docker无法安装成功,提示操作系统版本问题~~~~
所以直接下载了阿里提供的docker安装包:
http://mirrors.aliyun.com/doc ...
社区版是-ce后缀的
阿里镜像加速
首先登录阿里云 查找容器镜像服务
win10找到C:Users用户.dockermachinemachinesdefault底下有个config.json文件,在属性RegistryMirror添加加速器地址,docker虚拟机重启即可。
docker toolbox文件挂载机制
看了很多文章很多都是直接 -v /c/data:/data 直接把c盘下的data挂载的容器里。或许因为我用的是docker toolbox所以挂载的时候应该先在虚拟机上进行文件共享,共享后重启虚拟机
docker-matchine restart default
进入虚拟机后台 docker-matchine ssh default 可以看到
这个时候在进行 -v /workspace:/workspace 进行docker的挂载
自定义laravel开发镜像 基于ubuntu镜像安装
docker pull ubuntu
启动ubuntu容器
docker run -itd --name test -p 8080:80 ubuntu
进入ubuntu容器安装需要的内容
apt-get update apt-get install nginx apt-get install php apt-get install php7.4-fpm php7.4-mysql php7.4-gd php7.4-mbstring apt-get install mysql-server apt-get install composer apt-get install net-tools apt-get install vim apt-get install node
启用nginx
service nginx start
访问docker启用IP的8080端口
创建测试用项目
配置nginx文件
server { listen 80; listen [::]:80; server_name example.com; root /workspace/test; index index.php index.html; location ~ \.php$ { root /workspace/test; index index.php index.html; fastcgi_index index.php; fastcgi_pass 127.0.0.1:9000; fastcgi_param SCRIPT_FILENAME $document_root/$fastcgi_script_name; include /etc/nginx/fastcgi_params; } }
重启nginx
service nginx restart
启用php-fpm
service php7.4-fpm start
找到/etc/php/7.4/fpm/pool.d/www.conf文件 打开php-fpm监听端口
listen = /run/php/php7.4-fpm.sock 修改为 listen = 127.0.0.1:9000
重启php7.4-fpm服务
配置mysql数据库
允许远程用户连接,查找/etc/mysql/mysql.conf.d/mysqld.cnf文件,注释掉以下内容:
bind-address = 127.0.0.1
进入用户界面修改root用户信息
use mysql; update user set host='%' where user='root'; ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER; ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; flush privileges;
mysql服务重启
将配置好的容器单独保存为laravel镜像
docker commit -m="laravel开发环境" -a="作者" e218edb10161 laravel:v1
将配置好的容器导出
docker export 1e560fca3906 > laravel.tar
完整的启动laravel容器
docker run -itd --name laravel -p 8080:80 -p 3306:3306 -v /workspace:/workspace -v /workspace/docker-conf/nginx-conf:/etc/nginx/sites-enabled laravel:v1
workspace 是所有项目的目录
nginx-conf 是nginx的配置目录 里面有个default的配置文件,用于覆盖容器的nginx配置文件
总结
到此这篇关于docker在win10家庭版下构建laravel开发环境的教程详解的文章就介绍到这了,更多相关docker构建laravel开发环境内容请搜索易盾网络以前的文章或继续浏览下面的相关文章希望大家以后多多支持易盾网络!