/docker-nginx-php-mysql

php+nginx+php+phpmyadmin docker compose

Primary LanguageShell

Docker-compose Nginx + PHP + Mysql + Redis + Composer

  1. Install Dcoker

    • Docker
      • centos
        $ sudo yum install -y yum-utils
        $ sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
        $ sudo yum install docker-ce docker-ce-cli containerd.io
      • Other systems
    • Docker-compose
      • centos
        $ curl -L https://get.daocloud.io/docker/compose/releases/download/1.26.2/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose
        $ sudo chmod +x /usr/local/bin/docker-compose
        # append to ~/.bashrc
        alias docker-compose="/usr/local/bin/docker-compose"
        
        $ source ~/.bashrc
        
      • Other systems
  2. Start Docker Service (centos)

    $ sudo systemctl start docker
    $ sudo systemctl enable docker
    
  3. Clone project

    • Git git clone https://github.com/KilluaChen/docker-nginx-php-mysql.git
    • Download
  4. Create log dir

    $ cd docker-nginx-php-mysql
    $ mkdir -p logs/error & mkdir -p logs/access
    
  5. Append to /etc/hosts file (Optional)

     # Docker
     127.0.0.1       localhost
     127.0.0.1       test.pma.com
  6. Command

    # Run
    $ docker-compose up
    
    # Start single service
    $ docker-compose up mysql
    
    # Run Daemon
    $ docker-compose up -d
    
    # Stop
    $ docker-compose stop
    
    # Delete
    $ docker-compose down
  7. Visit

  8. multi-version PHP

    • 在Docker-compose 里面添加多个php-fpm服务,并定义成不同service 名称
    • 在nginx 配置中,修改fastcgi_pass.监听不同的service即可完成多版本PHP
  9. zsh alias

    alias dis="docker images"
    alias dps="docker ps"
    alias ds="/home/data/docker-nginx-php-mysql && docker-compose"
  10. PS