M1芯片搭建sail环境进行laravel开发

M1芯片搭建sail环境进行laravel开发

之前的pro暂时接触不到了,挤挤牙膏买了个air M1,看了好久的评价,最后还是被续航吸引了,但是laravel可是吃饭的家伙,听说是虚拟环境不兼容,看到已经适配了docker所以打算安装试试。

一. 安装Docker Desktop

1.推荐docker版本docker desktop 3.3.3

尝试自己跟着教程安装最新版本的Docker Desktop 跑到中途的时候会卡在

Executing: /tmp/apt-key-gpghome.v3wVg96BAY/gpg.1.sh –homedir /root/.gnupg –keyserver hkp://keyserver.ubuntu.com:80 –recv-keys E5267A6C

然后找了一圈,发现是3.3.3更新后产生的bug,详情在这
所以推荐大家直接开始就下载3.3.3版本。

2.Docker镜像下载加速

按照Summer大大的教程就行,点击前往

二.依赖说明

照搬下Summer大大的原话:
Sail 依赖以下三个东西:

  1. Docker Desktop
  2. docker-compose.yml 文件
  3. 构建容器的 Dockerfile

Docker Desktop 是底层软件,这里不再赘述。

Laravel,所以需要先创建 Laravel 。

docker-compose.yml 自 Laravel 8 起默认自带,存放于根目录下。老版本可通过 sail:publish 初始化此文件。
这里说一下老版本的项目:
首先肯定是按照教程升级laravel8,点击前往
然后就是添加依赖

composer require laravel/sail --dev

运行 sail:install Artisan 命令。这个命令将会发布 Sail 的 docker-compose.yml 文件到您应用程序的根目录:

php artisan sail:install

这里大家可能会疑惑环境都没搭建好怎么运行composer,其实mac自带了php但是不是很完整,推荐先通过brew安装php:

1.安装Homebrew

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

2.通过search命令,看看都有什么版本的php安装。

brew search php

3.假设安装php@7.3,运行

brew install php@7.3

4.加入brew服务

brew services start php@7.3

5.添加环境到zsh或者bash

三.配置Docker环境

这里继续按照summer大大的教程走就行,点击前往
(从第四步到第六步)
因为mysql还是不兼容,修改下docker-compose.yml,添加platform: linux/amd64即可,否则会报错

mysql:
 platform:  linux/amd64
 image:  'mysql:8.0'
 ports:

然后开心的运行就可以啦

./vendor/bin/sail up

更新下中文部分

使用了一段时间发现docker 不支持中文可以在dockerfile中加上

ENV LANG C.UTF-8
#改动后别忘了重新生成镜像
sail build --no-cache

或者通过root进入docker

docker exec -it --user root 0760563922c0 /bin/bash
#安装中文包
apt-get install language-pack-zh-hans
locale-gen zh_CN.UTF-8
echo "export LC_ALL=zh_CN.UTF-8">> /etc/profile
source /etc/profile
#查看下
locale

结语

大家有问题的话欢迎留言,第一次写文章,如有不足请多多包涵~

本作品采用《CC 协议》,转载必须注明作者和本文链接
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
讨论数量: 20
Epona
curl -s "https://laravel.build/example-app" | bash

按照官方文档可以直接curl 安装,不需要 本地composer

2年前 评论
dorayy (楼主) 2年前
翟宇鑫

想请教下楼主,Mac 使用 Docker 开发 PHP 项目的访问速度如何呢?
可以的话,能贴一下机器配置不?

2年前 评论
dorayy (楼主) 2年前
翟宇鑫 (作者) 2年前
陈先生 2年前
mshx 2年前

这里大家可能会疑惑环境都没搭建好怎么运行 composer

这里可以参照文档里的这一步,在已运行的应用中安装 Composer 依赖,这样就不用本地环境了

2年前 评论
dorayy (楼主) 2年前

想问你第一次安装快吗?为啥我安装了1个小时》。。。如果用T子请问是不是要用全局模式

2年前 评论
dorayy (楼主) 2年前

我和楼主是一样的配置 ,重新安装了docker ,sail up成功,但是页面加载都在5秒左右,api复杂点的都要10秒。不知道什么原因,docker还要设置什么东西么

2年前 评论
dorayy (楼主) 2年前

sail镜像是arm版本的吗?

2年前 评论
Aliliin 2年前

不太懂楼主所说的意思,虚拟环境不兼容,我的M1 用的是自带的apache+自己安装的PHP环境就可以跑了(自带的PHP安装扩展麻烦,Redis扩展)

2年前 评论

请问楼主找不到一些阿里云源arm包怎么破
Failed to fetch mirrors.aliyun.com/ubuntu/dists/foc... 404 Not Found
这是在ssail up这一步上报错的

2年前 评论
dorayy (楼主) 2年前
Zain (作者) 2年前
Zain (作者) 2年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!