麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > PHP > 正文

自己搭建一個 Laravel 的 Docker的開發環境的方法

2020-03-22 20:32:41
字體:
來源:轉載
供稿:網友
這篇文章給大家分享的內容是關于自己搭建一個 Laravel 的 Docker的開發環境,有一定的參考價值,有需要的朋友可以參考一下。

好久沒寫東西,今天說一說怎么自建一個 Laravel 運行的 Docker 環境。

市面上最出名的莫過于「laradock」https://github.com/laradock/laradock

Docker PHP development environment.
使用參考:http://laradock.io

既然是「自建」,那我們可以參考這個,最小化滿足 Laravel 運行的需要。

下面是我羅列出的基本條件:

軟件:PHP 7.2、Nginx、html' target='_blank'>MySQL、Composer、NPM or Yarn 等等;

使用國內鏡像;使用國內鏡像;使用國內鏡像;

易于擴展使用,如隨時可以切換 PHP 版本,或者 Apache 和 Nginx 切換使用。

Docker-Compose

要達到可擴展行,和「laradock」一樣,使用 Docker-Compose 編排的方式,將核心的幾個 image 組裝在一起。

php-fpm

這里我們使用的是「DaoCloud」加速鏡像 —— 7.2-fpm-alpine。

該版本既用 PHP 7.2 版本,而且 alpine 最小化系統,可以基于此,安裝環境需要的額外工具:如,composer、nodejs、python、yarn 等。

FROM daocloud.io/php:7.2-fpm-alpineMAINTAINER coding01 [email protected] RUN sed -i s/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g /etc/apk/repositoriesRUN apk add --no-cache --virtual .build-deps / $PHPIZE_DEPS / curl-dev / imagemagick-dev / libtool / libxml2-dev / postgresql-dev / sqlite-dev / apk add --no-cache / curl / git / imagemagick / mysql-client / postgresql-libs / pecl install imagick / docker-php-ext-enable imagick / docker-php-ext-install / curl / iconv / mbstring / pdo / pdo_mysql / pdo_pgsql / pdo_sqlite / pcntl / tokenizer / xml / zip / curl -s https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin/ --filename=composer / apk del -f .build-deps# 修改 composer 為國內鏡像RUN composer config -g repo.packagist composer https://packagist.laravel-china.org# install prestissimoRUN composer global require hirak/prestissimo # install laravel envoyRUN composer global require laravel/envoy #install laravel installerRUN composer global require laravel/installer RUN sed -i s/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g /etc/apk/repositoriesRUN apk update apk add -u nodejs libpng-dev pythonENV PATH /root/.yarn/bin:$PATHRUN apk update / apk add curl bash binutils tar / rm -rf /var/cache/apk/* / /bin/bash / touch ~/.bashrc / curl -o- -L https://yarnpkg.com/install.sh | bash / yarn config set registry https://registry.npm.taobao.org / npm install -g cnpm --registry=https://registry.npm.taobao.orgWORKDIR /var/www

其中安裝 alpine 系統插件,我們使用 mirrors.aliyun.com 阿里云鏡像。

php:7.2-fpm-alpine 具體使用,可以參考:https://dashboard.daocloud.io/packages/019c8dce-ec80-4468-bddc-254fc62ef5c7

nginx

我們使用 nginx,主要是將網站的配置文件載入 nginx 中。

FROM daocloud.io/nginx:1.13-alpineMAINTAINER coding01 [email protected] ADD vhost.conf /etc/nginx/conf.d/default.confWORKDIR /var/www

剩下就是連接這些 images。最后看看 docker-compose.yml 文件內容:

version: 2 services: # The Application app: build: context: ./ dockerfile: app.dockerfile working_dir: /var/www volumes: - ../:/var/www environment: - DB_PORT=3306  - DB_HOST=database  - REDIS_HOST=redis  - REDIS_PORT=6379  # The Web Server web: build: context: ./ dockerfile: web.dockerfile working_dir: /var/www volumes_from: - app ports: - 8080:80 # The Database database: image: daocloud.io/mysql:5.7.4 volumes: - dbdata:/var/lib/mysql environment: - MYSQL_DATABASE=homestead  - MYSQL_USER=homestead  - MYSQL_PASSWORD=secret  - MYSQL_ROOT_PASSWORD=secret  ports: - 3306:3306  redis: image: daocloud.io/library/redis:4.0.10-alpine command: redis-server --appendonly yesvolumes: dbdata:
測試一遍創建 Laravel 項目
composer create-project laravel/laravel demo

注:為了做測試,可以將 vendor 文件夾和 composer.lock 文件刪除。

git clone

在 demo 項目相同文件夾下,git clone 我們自建的「laraveldocker」:

git clone https://github.com/fanly/laraveldocker.git
修改 docker-compose.yml

將 docker-compose.yml 文件的路徑執行我們的項目:

app: build: context: ./ dockerfile: app.dockerfile working_dir: /var/www volumes: - ../:/var/www
build

在 laraveldocker 下執行構建命令:

docker-compose up


整個速度還是蠻快的


接下來進入容器內

docker exec -it de075c525528 bash

我們看看安裝插件的效果:


使用的是 https://packagist.laravel-china.org 國內鏡像。

注:該鏡像是由 Laravel China 社區聯合 又拍云 與 優帆遠揚 共同合作推出的公益項目,旨在為廣大 PHP 用戶提供穩定和高速的 Composer 國內鏡像服務。

值得推薦使用

參考:http://laravel-china.org/topics/4484/composer-mirror-use-help

使用 yarn 或者 cnpm 安裝插件:


生成 Laravel key secret:

cp .env.example .envphp artisan key:generateApplication key [base64:4A7VK6MEX7FakPLDSLji97kz/nyWUAWhW4wYn3gefsY=] set successfully.

運行下看看效果吧:

我們接下來看看數據庫連接吧,修改 .env:

DB_CONNECTION=mysqlDB_HOST=databaseDB_PORT=3306DB_DATABASE=homesteadDB_USERNAME=homesteadDB_PASSWORD=secret

我們使用 php artisan make:auth 來生成布局、注冊和登錄視圖以及所有的認證接口的路由。同時它還會生成 HomeController 來處理應用的登錄請求。使用 php artisan migrate 來載入數據。


我們看看數據表:


至此,說明我們連接 MySQL 數據庫 OK.

總結

在學習過程中,使用別人做好的 Dockerfile,雖可以直接拿來使用,但如果能自給自足,那最好不過了。

通過自建 docker 開發環境過程中,也能讓自己學到更多。接下來還會不斷完善,最小化滿足開發需要。

相關推薦:

TP5中URL訪問模式的解析

Nginx配置的詳細代碼

以上就是自己搭建一個 Laravel 的 Docker的開發環境的方法的詳細內容,PHP教程

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 成人在线视频播放 | 亚洲精品成人18久久久久 | 亚洲情视频 | 成人在线视频在线观看 | 99视频网址 | 精品偷拍久久 | 欧美国产精品久久 | 欧美日韩亚洲精品一区二区三区 | 久久精品亚洲国产奇米99 | 成人在线观看一区二区 | 日本欧美一区二区三区在线观看 | 成人一级黄色大片 | 亚洲成人涩涩 | 大学生a级毛片免费视频 | 末成年女av片一区二区 | av不卡免费观看 | 在线观看免费毛片视频 | 免费一级肉体全黄毛片 | 国产小视频在线观看 | 午夜神马福利视频 | 亚洲精品com | 欧美一级做性受免费大片免费 | 素人视频在线观看免费 | 国产1区2区3区中文字幕 | 国产中文99视频在线观看 | 亚洲特黄 | 看免费一级毛片 | 特黄一级小说 | 中文字幕在线播放不卡 | 色播视频在线播放 | 成人黄视频在线观看 | 国产精品91在线 | 色女人在线 | 亚洲精品午夜国产va久久成人 | 一级免费毛片 | 成人毛片免费在线 | 九九热色 | 免费一级特黄欧美大片勹久久网 | 国产精品亚洲yourport | 美女黄网站免费观看 | 午夜精品小视频 |