美文网首页PHP - Docker开发库社区Docker容器
卡夫的Mac 05 - Mac下使用docker-compose

卡夫的Mac 05 - Mac下使用docker-compose

作者: 7c03aed0f01f | 来源:发表于2017-08-23 09:56 被阅读291次

    视频地址

    学徒卡夫 - 卡夫的Mac 05 - Mac下使用Docker-composer配置PHP环境
    https://www.bilibili.com/video/av13703830/

    以后应该用不到之前的镜像与容器,所以这里我清空下

    docker stop 容器ID/Name
    
    # 删除所有容器
    docker rm `docker ps -a -q`
    
    # 删除所有的镜像
    docker rmi $(docker images -q)
    

    安装 Docker

    https://www.docker.com/docker-mac

    安装 docker-compose

    curl -L https://get.daocloud.io/docker/compose/releases/download/1.13.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
    chmod +x /usr/local/bin/docker-compose
    

    使用LaraDock项目搭建PHP开发环境

    LaraDock 官网
    http://laradock.io/introduction/

    什么是LaraDock

    LaraDock 和 Laravel Homestead 类似,只不过运行在 Docker 而非 Vagrant 中。LaraDock 可以让我们在数秒之内轻松在 Docker 中运行 Laravel 应用。

    LaraDock 致力于让开发过程变得简单,包含了一个已经预包装好的Docker映像以便为我们提供一流的开发环境而不需要再手动安装PHP、Nginx、MySQL、Redis以及其他运行Laravel应用可能要用到的软件或工具。

    1. 下载源码
    cd ~
    git clone https://github.com/Laradock/laradock.git
    
    1. 配置项目路径
    mkdir -p wwwroot  # 创建目录
    mkdir -p wwwroot/data  # 创建网站目录
    mkdir -p wwwroot/public   # 创建用于 HTTP服务软件的公共目录
    
    1. 修改 .env 配置文件
    cd ~/laradock
    # 拷贝一份正式的配置文件
    cp env-example .env
    vi .env
    
    # 修改配置项
    APPLICATION=../wwwroot  #项目目录
    DATA_SAVE_PATH=../wwwroot/data  #数据目录,比如mysql
    WORKSPACE_INSTALL_NODE=true     #node 开启
    PHP_FPM_INSTALL_ZIP_ARCHIVE=true    #zip 开启
    PHP_FPM_INSTALL_OPCACHE=false       #opcache 生产环境再打开
    
    1. 实例化容器
    # 运行nginx、mysql容器、(PHP容器自动运行)
    # -d 是不监听,后台运行的意思
    docker-compose up -d nginx mysql phpmyadmin
    

    配置一个Laravel项目测试

    vi /etc/host
    # 加入
    127.0.0.1   laravel.cc
    
    # 复制一份Laravel项目
    /Users/kafu/wwwroot/laravel
    

    加载依赖

    # 进入 workspace 容器(也叫工作空间容器)
    docker-compose exec workspace bash
    
    # 更换composer源
    composer config -g repo.packagist composer https://packagist.phpcomposer.com
    
    # 进入项目目录
    cd laravel/
    
    # composer 更新项目
    composer install --no-plugins --no-scripts
    

    添加 laravel项目的 nginx配置文件

    # vi ~/laradock/nginx/sites/laravel.cc.conf
    server {
        listen 80;
        listen [::]:80;
        server_name laravel.cc;
        root /var/www/laravel/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;
            include fastcgi_params;
        }
        location ~ /\.ht {
            deny all;
        }
        location /.well-known/acme-challenge/ {
            root /var/www/letsencrypt/;
            log_not_found off;
        }
        error_log /var/log/nginx/laravel_error.log;
        access_log /var/log/nginx/laravel_access.log;
    }
    
    # 退出容器
    exit
    
    # 重启 nginx 容器,应用配置
    docker-composer restart nginx
    
    # 访问测试域名
    

    http://laravel.cc

    注释

    # 有些容器 bash进不去 就进sh,比如
    docker-compose exec pgadmin sh
    

    相关文章

      网友评论

        本文标题:卡夫的Mac 05 - Mac下使用docker-compose

        本文链接:https://www.haomeiwen.com/subject/cqqddxtx.html