前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Laradock 的安装与使用

Laradock 的安装与使用

作者头像
hedeqiang
发布2019-12-18 11:26:13
2.1K0
发布2019-12-18 11:26:13
举报
文章被收录于专栏:LaravelCodeLaravelCode

本文介绍下 Laradock 的安装与配置、理论上WindowsMac 都适用

依赖

通过 homebrew 安装 docker,或者也可以去官网下载最新的安装包

代码语言:javascript
复制
brew cask install docker

通过 homebrew 安装 git

代码语言:javascript
复制
brew install git

推荐直接下载安装包、已安装包的方式进行下载

安装 Laradock

在项目同济目录下安装

代码语言:javascript
复制
git clone https://github.com/LaraDock/laradock.git

启动 LaraDock

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

代码语言:javascript
复制
cd laradock
cp env-example .env

运行容器

代码语言:javascript
复制
docker-compose up -d nginx mysql redis

Nginx 配置

laradock/nginx/sites 下新建 blog.conf 文件

代码语言:javascript
复制
server {

    listen 80 ;
    listen [::]:80 ;

    # For https
    # listen 443 ssl default_server;
    # listen [::]:443 ssl default_server ipv6only=on;
    # ssl_certificate /etc/nginx/ssl/default.crt;
    # ssl_certificate_key /etc/nginx/ssl/default.key;

    server_name blog.test;
    root /var/www/blog/public;
    index index.php index.html index.htm;

    location / {
         try_files $uri $uri/ /index.php$is_args$args;
    }

    location ~ \.php$ {
        try_files $uri /index.php =404;
        fastcgi_pass php-upstream;
        fastcgi_index index.php;
        fastcgi_buffers 16 16k;
        fastcgi_buffer_size 32k;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        #fixes timeouts
        fastcgi_read_timeout 600;
        include fastcgi_params;
    }

    location ~ /\.ht {
        deny all;
    }

    location /.well-known/acme-challenge/ {
        root /var/www/letsencrypt/;
        log_not_found off;
    }
}

重启 Nginx

代码语言:javascript
复制
docker-compose up -d nginx

部署项目

编辑 laradock 目录下的 .env 文件,制定项目代码目录

代码语言:javascript
复制
APP_CODE_PATH_HOST=../Code/

这样本地下的 ~/Code 目录 就和 容器中的 /var/www/ 目录形成映射。

进入到工作区 workspace

代码语言:javascript
复制
docker-compose exec workspace bash
cd /var/www/

安装 laravel 项目

代码语言:javascript
复制
composer create-project --prefer-dist laravel/laravel blog

这样就可以跑起这个项目了.

连接 MySQL

默认情况下 laradock 安装的 MySQL 版本为 latest ,也就是8.0。但是 8.0 在 Mac 下 使用 Sequel Pro 连接会出现一点问题、导致连接不上,所以切到5.7 的版本

编辑 laradock.env 文件

代码语言:javascript
复制
MYSQL_VERSION=5.7
MYSQL_DATABASE=default
MYSQL_USER=default
MYSQL_PASSWORD=secret
MYSQL_PORT=3306
MYSQL_ROOT_PASSWORD=root

修改 MYSQL_VERSION5.7

接着重新 build MySQL

代码语言:javascript
复制
docker-compose build --no-cache mysql

运行MySQL

代码语言:javascript
复制
docker-compose up -d mysql

laravel 中使用 MySQL

laravel 中使用 MySQL 需要指定 DB_HOSTmysql

代码语言:javascript
复制
DB_CONNECTION=mysql
DB_HOST=mysql

在 workspace 容器中执行 php artisan

代码语言:javascript
复制
docker-compose exec workspace bash
cd /var/www/blog
php artisan migrate

laradock 常用命令

停止所有容器运行

代码语言:javascript
复制
docker-compose stop

停止单个容器运行

代码语言:javascript
复制
docker-compose stop {container name}

删除所有容器

代码语言:javascript
复制
docker-compose down

删除指定容器

代码语言:javascript
复制
docker-compose down {container name}

后台启动容器(本地没有镜像则会先pull)

代码语言:javascript
复制
docker-compose up -d {container name}

进入容器

代码语言:javascript
复制
docker-compose exec {container name} bash

查看正在运行的容器

代码语言:javascript
复制
docker-compose ps

查看历史所有的容 器

代码语言:javascript
复制
docker-compose ps -a

查看日志文件

代码语言:javascript
复制
docker logs {container name}

重建所有容器

代码语言:javascript
复制
docker-compose build

重建某个容器

代码语言:javascript
复制
docker-compose build {container name}

退出容器

代码语言:javascript
复制
exit               
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 依赖
  • 安装 Laradock
  • 启动 LaraDock
  • Nginx 配置
  • 部署项目
  • 连接 MySQL
  • laravel 中使用 MySQL
  • laradock 常用命令
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档