基於docker快速搭建多平臺laravel環境-laradock

基於docker快速搭建多平臺laravel環境-laradock

現在docker技術越來越火,docker的應用也越來越多。

我們爲什麼要用docker呢,因爲它能提供你一個純淨的環境,能統一所有開發人員的環境,公司的技術有很多人,那每個人裝的環境都可能不一樣,你是php7.3,他是php7.0,你是mysql8.0,他是mysql5.6,這些環境上的差異有時候會導致代碼的錯誤。

還有環境這東西裝一次就夠用了,你家裏的電腦環境和公司的環境也有可能不一致。使用docker裝環境之後,我們可以裝完之後打包起來,在任何一個docker上運行這個配置文件都可以生成相同的環境。

下載安裝

git clone https://github.com/Laradock/laradock.git

把這個庫克隆下來以後,進入目錄

cd [your work]/laradock

複製env-example文件到.env文件

cp env-example .env

修改.env配置

DB_HOST=mysql
REDIS_HOST=redis

在.env中配置工作目錄,如果你的目錄wwwroot和laradock目錄同級則這樣設置

APP_CODE_PATH_HOST=../wwwroot

配置nginx文件,打開 ./nginx/sites/default.conf,修改下面兩行

/var/www目錄相當於上面配置的…/wwwroot目錄

server_name your server name;
root /var/www/[your dir]/public;

使用

啓動docker 程序

docker-compose up -d nginx redis mysql

如果啓動中報錯

ERROR: Service ‘mysql’ failed to build: Get https://registry-1.docker.io/v2/: net/http: request canceled while waiting for connection (Client.Timeout exceeded while awaiting headers)

報這種錯誤,那麼你需要一個docker鏡像加速器了,可以使用daocloud的加速器。

https://www.daocloud.io/mirror#accelerator-doc

按照配置添加完以後再次運行命令就可以了

.env文件參數介紹

PHP_VERSION=7.3 這個參數是php的版本,默認php7.3

PHALCON_VERSION=3.4.5 phalcon的版本

PHP_INTERPRETER=php-fpm php解釋器,默認php-fpm

nginx 配置

NGINX_HOST_HTTP_PORT=80 //nginx http 端口
NGINX_HOST_HTTPS_PORT=443 //nginx https 端口
NGINX_HOST_LOG_PATH=./logs/nginx/ //nginx 日誌
NGINX_SITES_PATH=./nginx/sites/ //nginx 配置
NGINX_PHP_UPSTREAM_CONTAINER=php-fpm //nginx 使用php-fpm連接php
NGINX_PHP_UPSTREAM_PORT=9000 //php端口
NGINX_SSL_PATH=./nginx/ssl/ //ssl

mysql配置

MYSQL_VERSION=5.7 mysql版本 默認是8.0 建議修改成5.7
MYSQL_DATABASE=default 數據庫
MYSQL_USER=default 用戶名
MYSQL_PASSWORD=secret 密碼
MYSQL_PORT=3306 mysql 端口
MYSQL_ROOT_PASSWORD=root mysql root 密碼
MYSQL_ENTRYPOINT_INITDB=./mysql/docker-entrypoint-initdb.d

REDIS_PORT=6379 redis端口

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章