/docker-laravel

use docker to build laravel development

Primary LanguagePHPMIT LicenseMIT

说明

部署

  1. 通过脚本安装docker
curl -fsSL https://get.docker.com -o get-docker.sh
# 先执行dry-run查看是否可以安装
sudo sh ./get-docker.sh --dry-run
# 上一步没问题就执行
sudo sh get-docker.sh
  1. 安装docker-compose
curl -SL https://github.com/docker/compose/releases/download/v2.23.1/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
# 设置可执行权限
sudo chmod +x /usr/local/bin/docker-compose
# 查看是否安装成功
docker-composer --version
# 如果提示命令没找到需要更新环境变量
  1. 修改项目配置.env文件

cp .env.exmaple .env 然后在.env里面编辑需要修改的项, 数据库配置和接口相关配置都在.env里面

  1. 修改docker-compose.yml文件

docker-compose.yml文件是各服务的配置,如redis和mysql的密码等, 如果这里修改了数据库的密码, 那么.env文件的相关项也需要修改

  1. 启动服务

在项目目录下执行docker-compose up -d命令来启动服务, 服务启动后修改storage文件夹的权限 chmod -R 777 storage/

  1. 创建数据库

在.env文件修改完数据库和redis密码后,执行 docker-compose exec app php artisan migrate来创建数据库和表

  1. 生成项目key

执行 docker-compose exec app php artisan key:generate 生成唯一key,用于加密等。

  1. 禁用调试模式

将.env文件的APP_DEBUG=true改为false,在生产环境禁用debug模式。

APP_ENV=local设置为prod

  1. 提升性能(可选)

docker-compose exec app php artisan config:cache

docker-compose exec app php artisan route:cache

docker配置说明

docker中的各种服务主要通过docker-compose.yml和dockerfile来配置。

项目docker文件夹下包含各种服务的配置,php, mysql, nginx的相关配置都在这个文件夹下。如要修改nginx的配置,就在docker/nginx/conf.d/nginx.conf文件中,修改完成后需重启docker服务