利用 Docker 一鍵搭建 LNMP 環境

duiying發表於2019-03-15

自己一直在用的環境部署方案(自己部署過N次了), 整個部署流程10幾 ~ 20幾分鐘左右, 挺方便的
https://github.com/duiying/Docker-LNMP
找工作ing, 覺得不錯的求給個star, 感謝

利用 Docker-Compose 編排 LNMP開發環境

清單

注: 完整版(docker-compose up -d)

  • PHP7.2
  • Nginx
  • MySQL5.6
  • Redis
  • phpMyAdmin
  • phpRedisAdmin

注: 精簡版(docker-compose -f docker-compose-simplify.yml up -d)

  • PHP7.2
  • Nginx
  • MySQL5.6
  • Redis

    目錄結構

    Docker-LNMP
    |----docker                             Docker目錄
    |--------config                         配置檔案目錄
    |------------proxy                      nginx配置檔案目錄
    |--------files                          DockerFile檔案目錄
    |------------cgi                        php-fpm DockerFile檔案目錄
    |----------------Dockerfile             php-fpm DockerFile檔案
    |----------------docker-entrypoint.sh   php-fpm 啟動指令碼
    |------------proxy                      nginx DockerFile檔案目錄
    |----------------Dockerfile             nginx DockerFile檔案
    |----------------docker-entrypoint.sh   nginx 啟動指令碼
    |--------log                            日誌檔案目錄
    |------------cgi                        php-fpm日誌檔案目錄
    |------------proxy                      nginx日誌檔案目錄
    |----www                                應用根目錄
    |--------index.php                      PHP例程
    |----README.md                          說明檔案
    |----docker-compose.yml                 docker compose 配置檔案(完整版: LNMP+Redis+phpMyAdmin+phpRedisAdmin)
    |----docker-compose-simplify.yml        docker compose 配置檔案(精簡版: LNMP+Redis)

    準備

    # 安裝docker和docker-compose
    yum -y install epel-release 
    yum -y install docker docker-compose
    # 啟動docker服務
    service docker start

    安裝

    # 克隆專案
    git clone https://github.com/duiying/Docker-LNMP.git
    # 進入目錄
    cd Docker-LNMP
    # 容器編排
    docker-compose up -d

    測試

    執行成功

    Creating cgi ... done
    Creating proxy ... done
    Creating mysql ...
    Creating phpmyadmin ...
    Creating phpredisadmin ...
    Creating cgi ...
    Creating proxy ...

    訪問IP, 效果圖如下
    效果圖

    可能遇到的問題

    # Error資訊
    The "https://packagist.phpcomposer.com/packages.json" file could not be down
    # 解決方案
    這是由於composer中國映象失效, 修改Docker-LNMP/docker/files/cgi/Dockerfile
    https://packagist.phpcomposer.com 改為 https://packagist.laravel-china.org

    更新日誌

  • cgi容器支援crontab

Docker常用命令

刪除所有容器
docker rm -f $(docker ps -aq)
刪除所有映象
docker rmi $(docker images -q)

相關文章