Laradock 安装配置

Laradock是一个全面的PHP开发环境,基于Docker。文章详细介绍了如何安装、配置Laradock,包括设置项目目录、选择PHP和MySQL版本、配置Nginx站点、调整MySQL版本以及使用phpmyadmin。此外,还解决了在MacOSM1上遇到的构建问题。
摘要由CSDN通过智能技术生成

Laradock 是 Docker 的一个完整的PHP开发环境。

  • https://laradock.io/

安装配置

clone库

在自定义目录下拉取 laradock 代码

$ git clone https://github.com/Laradock/laradock.git

laradock 和项目目录关系可以同级:

* laradock
* project-1
* project-2
配置文件

这里以配置多个web项目为例进行配置

进入 laradock 目录将 env-example 重命名为 .env

$ cp .env.example .env

这个是用于指定你的应用程序的目录,默认是在 Laradock 的上一层:

APP_CODE_PATH_HOST=../

记得最后要以 / 结尾。

构建容器

根据需要构建,如果没有用到 redis 和 phpmyadmin,可以从命令中去掉

$ docker-compose up -d nginx mysql phpmyadmin redis workspace
PHP

修改PHP版本

修改.env配置文件版本

PHP_VERSION=7.3

最后重建镜像

$ docker-compose build php-fpm

修改PHP-CLI版本

修改.env配置文件PHP_VERSION

PHP_VERSION=7.3

最后重建图像,执行php-cli是在workspace镜像的容器中所以需要重新构建workspace

$ docker-compose build workspace
Nginx
站点配置
  • 进入nginx配置文件目录:cd nginx/sites

  • 生成该站点的配置文件:cp laravel.conf.example laradmin.conf

  • 配置该文件,相关配置参考nginx的配置:

    server_name laradmin.test;
    # 开头必须是/var/www/,映射.env文件中APPLICATION配置对应的目录
    root /var/www/laradmin/public;
    
  • 执行以下命令:

    $ docker-compose build nginx
    $ docker-compose restart nginx
    
  • 修改 /etc/hosts 文件内容:sudo vim /etc/hosts

    127.0.0.1 laradmin.test
    
Mysql

默认情况下使用MySQL 最新版本运行,用户和密码默认都是 root

修改版本
  • 修改.env laradock配置文件 MYSQL_VERSION=5.7,具体可用版本见:https://store.docker.com/images/mysql
  • 重新编译 docker-compose build mysql
  • 如果已经运行则重新启动 docker-compose restart mysql

MacOS M1 buiild 时候如果出现报错:

[+] Building 0.2s (3/3) FINISHED
 => [internal] load build definition from Dockerfile                                                         
 => => transferring dockerfile: 32B                                                                           
 => [internal] load .dockerignore                                                                             
 => => transferring context: 2B                                                                               
 => ERROR [internal] load metadata for docker.io/library/mysql:5.7                                           
------
 > [internal] load metadata for docker.io/library/mysql:5.7:
------
failed to solve: rpc error: code = Unknown desc = failed to solve with frontend dockerfile.v0: failed to create LLB definition: no match for platform in manifest sha256:f2ad209efe9c67104167fc609cca6973c8422939491c9345270175a300419f94: not found

可以修改 docker-compose.yml新增 platform: linux/amd64 配置

### MySQL ################################################
    mysql:
      build:
        context: ./mysql
        args:
          - MYSQL_VERSION=${MYSQL_VERSION}
      environment:
        - MYSQL_DATABASE=${MYSQL_DATABASE}
        - MYSQL_USER=${MYSQL_USER}
        - MYSQL_PASSWORD=${MYSQL_PASSWORD}
        - MYSQL_ROOT_PASSWORD=${MYSQL_ROOT_PASSWORD}
        - TZ=${WORKSPACE_TIMEZONE}
      volumes:
        - ${DATA_PATH_HOST}/mysql:/var/lib/mysql
        - ${MYSQL_ENTRYPOINT_INITDB}:/docker-entrypoint-initdb.d
      ports:
        - "${MYSQL_PORT}:3306"
      networks:
        - backend
      platform: linux/amd64
其他用法
# 进入 Mysql 容器
$ docker-compose exec mysql bash

# root 登陆
$ mysql -uroot -proot

# 其他用户
$ mysql -udefault -psecret

# 查看日志
$ docker-compose logs mysql

mysql 数据目录:~/.laradock/data/mysql

phpMyAdmin

phpmyadmin使用该docker-compose up命令运行phpMyAdmin

$ docker-compose up -d mysql phpmyadmin

打开浏览器并访问端口8080上的localhost : http://localhost:8080,登录信息如下

host: mysql
user: root
password: root
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值