zoukankan      html  css  js  c++  java
  • docker+compose+nginx+php

    Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。

    我用docker做什么?

    快速搭建开发所需环境,测试实验新组件(如rabbitmq,kafka).避免因安装而浪费太多时间,我的目的是快速尝试使用。

    安装docker

    brew cask install docker
    

    docker-compose

    Compose 是一个用户定义和运行多个容器的 Docker 应用程序。在 Compose 中你可以使用 YAML 文件来配置你的应用服务。然后,只需要一个简单的命令,就可以创建并启动你配置的所有服务。

    目录结构

    2018-08-07-14-17-25

    一组服务建立一个目录

    配置文件

    version: '2'
    services:
      php7.2:
        image: php:7.2-fpm
        ports:
          - "9000:9000"
        volumes: 
          - ./php:/usr/local/etc/php
          - /Users/caowenpeng/www:/www
      nginx:
        image: nginx
        ports: 
          - "80:80"
        volumes:
          - /Users/caowenpeng/www:/www
          - ./nginx:/etc/nginx
    
    

    启动

    docker-compose up -d
    

    常用命令

    命令 说明
    up 创建和启动容器
    ps 列出所有容器
    down 停止并删除容器,镜像,挂载
    start 启动服务
    stop 停止服务
    restart 重启服务

    第一次使用up,之后使用start,如果再次使用up将会重新创建容器,一些对容器的修改将会丢失

    其他问题

    进入容器

     docker-compose exec php7.2 bash
    

    进入容器后会发现只能用少量命令,连ps等都没有,这个时候需要安装一些程序

    apt-get update  ##更新元
    apt-get install procps  ## 安装 ps
    

    安装php-rdkafka拓展

    apt-get install wget
    wget https://github.com/edenhill/librdkafka/archive/master.zip
    
    apt-get install unzip
    
    unzip master.zip
    
    cd librdkafka
    
    ./configure 
    
    make
    
    make install 
    
    pecl install http://pecl.php.net/get/rdkafka-3.0.4.tgz
    
    #在php.ini 配置启用 rdkafka拓展
    
    
    
    
  • 相关阅读:
    iOS API 概述
    iOS开发的一些奇巧淫技3
    iOS开发的一些奇巧淫技1&2
    iOS-一键拨号
    iOS层次架构
    简单block 和 代理
    iOS开发-单例GCD
    简单的归档、接档
    通知中心与本地通知
    安装linux centos 7.7 遇到 DRM:Pointer to TMDS table invalid
  • 原文地址:https://www.cnblogs.com/maitian2013/p/14516922.html
Copyright © 2011-2022 走看看