601 字
3 分钟
🍡mac下部署laradock环境
项目结构
该目录位于~下
program├── develop ├── laradock(非手动创建) └── www拉取项目
在~/program/develop下,从 github 上拉取 laradock 项目
git clone https://github.com/laradock/laradock.git如果遇到网络问题 可以设置代理
#设置http代理git config --global https.proxy http://代理:xxxx#设置https代理git config --global https.proxy http://代理:xxxx#取消http代理git config --global --unset http.proxy#取消https代理git config --global --unset https.proxy进入~/program/develop/laradock目录将 .env-example 重命名为 .env:
cp .env.example .env.env文件需要修改的地方:
#这个是用于指定你的应用程序的目录,默认是在 Laradock 的上一层:APP_CODE_PATH_HOST=../www#php版本 按需修改PHP_VERSION=8.3#mysql版本 按需修改MYSQL_VERSION=8.4
#在文件尾部加入代理地址HTTP_PROXY=代理:xxxxHTTPS_PROXY=代理:xxxx进入~/program/develop/workspace 修改Dockerfile文件
#在FROM关键字后加入配置ENV HTTP_PROXY="http://代理:xxxx"#curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash这一行会报错,依旧是网络问题#以下两种方式都可以 任选一种 或者在本机下载下来后传到oss 更改下载链接curl --proxy 代理:xxxx -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bashcurl -x 代理:xxxx -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.3/install.sh | bash回到~/program/develop/laradock原神启动
docker-compose up -d nginx php-fpm mysql redis workspace原神启动成功!!
每次启动的命令太长了且不好记 所以可以使用shell脚本启动
将laradock.sh放到任意位置 可以是~/下 也可以是~/program/下
#!/bin/bash
cd ~/program/develop/laradock
print_style() { if [ "$2" == "info" ]; then COLOR="96m" elif [ "$2" == "success" ]; then COLOR="92m" elif [ "$2" == "warning" ]; then COLOR="93m" elif [ "$2" == "danger" ]; then COLOR="91m" else COLOR="0m" fi
STARTCOLOR="\e[$COLOR" ENDCOLOR="\e[0m"
printf "$STARTCOLOR%b$ENDCOLOR" "$1"}
display_options() { printf "Available options:\n" print_style " up" "success" printf "\t Starts containers\n" print_style " down" "success" printf "\t Stops containers\n" print_style " bash" "success" printf "\t Opens bash on the workspace with user laradock.\n"}
if [[ $# -eq 0 ]]; then print_style "Missing arguments.\n" "danger" display_options exit 1fi
if [ "$1" == "up" ]; then if [ $# -gt 1 ]; then shift SERVICES="$*" else SERVICES="nginx php-fpm mysql redis workspace" fi print_style "Starting Docker Compose\n" "info" print_style "Your services: ${SERVICES}\n" "success" docker-compose up -d ${SERVICES}
elif [ "$1" == "stop" ]; then print_style "Stopping Docker Compose\n" "info" docker-compose stop
elif [ "$1" == "down" ]; then print_style "Downing Docker Compose\n" "info" docker-compose down
elif [ "$1" == "bash" ]; then docker-compose exec --user=laradock workspace bash
else print_style "Invalid arguments.\n" "danger" display_options exit 1fi从此以后你的启停命令就变成了以下几个:
# 不添加参数将默认启动 nginx, mysql, php-fpm, redis 容器bash ./laradock.sh up
# 也可以根据需要设置需要启动的容器bash ./laradock.sh up nginx phpmyadmin
# 停止容器bash ./laradock.sh stop
# 进入 laradock workspacebash ./laradock.sh bash