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

安装配置

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

本文由 一切随风 创作,可自由转载、引用,但需署名作者且注明文章出处。

17 条评论

  1. namulxrmkw
    namulxrmkw

    警魂

  2. xsahlwqsxl
    xsahlwqsxl

    泡泡剧组

  3. tajbfdighz
    tajbfdighz

    彩虹

  4. kgolwnvpvt
    kgolwnvpvt

    塞伦盖蒂

  5. izpdomtavw
    izpdomtavw

    逃离酒庄

  6. dfikmhsrog
    dfikmhsrog

    俱乐部的目的

  7. mjbjhvqdlk
    mjbjhvqdlk

    房子里的陌生人

  8. waguglisbl
    waguglisbl

    以终为始的思考方式为行业指明方向。

  9. sjpvhijrlc
    sjpvhijrlc

    作者的才华横溢,让这篇文章成为了一篇不可多得的艺术品。

  10. afgihwqssn
    afgihwqssn

    哈哈哈,写的太好了https://www.lawjida.com/

  11. wftmkinslz
    wftmkinslz

    《比尔伯尔:纸老虎》欧美综艺高清在线免费观看:https://www.jgz518.com/xingkong/121683.html

  12. nuofcuilck
    nuofcuilck

    看到你的文章,我仿佛感受到了生活中的美好。 https://www.4006400989.com/qyvideo/64657.html

  13. wewogjzqim
    wewogjzqim

    你的文章内容非常精彩,让人回味无穷。 http://www.55baobei.com/y2tTDS1Phy.html

  14. hooamyjimy
    hooamyjimy

    看到你的文章,我仿佛感受到了生活中的美好。 https://www.4006400989.com/qyvideo/52620.html

  15. iadnqnwynr
    iadnqnwynr

    哈哈哈,写的太好了https://www.cscnn.com/

  16. kisopeapeq
    kisopeapeq

    不错不错,我喜欢看 www.jiwenlaw.com

  17. nqjcbltgde
    nqjcbltgde

    博主真是太厉害了!!!

添加新评论