佳木斯湛栽影视文化发展公司

主頁(yè) > 知識(shí)庫(kù) > Docker搭建php環(huán)境教程詳解

Docker搭建php環(huán)境教程詳解

熱門標(biāo)簽:阿里云 網(wǎng)站建設(shè) 百度競(jìng)價(jià)點(diǎn)擊價(jià)格的計(jì)算公式 使用U盤裝系統(tǒng) 美圖手機(jī) 智能手機(jī) 硅谷的囚徒呼叫中心 檢查注冊(cè)表項(xiàng)

docker 安裝

使用官方提供的安裝腳本,安裝最新版的Docker

curl -sSL https://get.docker.com/ | sh

安裝完成后,通過如下命令啟動(dòng)Docker的守護(hù)進(jìn)程,并讓它隨系統(tǒng)啟動(dòng)自動(dòng)加載

sudo service docker start
sudo chkconfig docker on
## 或者
sudo systemctl start docker
sudo systemctl enable docker

添加用戶(jerry)到Docker組

sudo usermod -aG docker jerry

命令筆記(centos),基于docker鏡像2233466866/lnmp

下載鏡像

docker pull 2233466866/lnmp

創(chuàng)建基本目錄

mkdir -p /app/lnmp/default /docker/lnmp/data/mysql /docker/lnmp/conf/vhost /docker/lnmp/logs /docker/lnmp/temp /docker/lnmp/backup

下載容器配置文件到本地相應(yīng)目錄

docker run -itd -v /sys/fs/cgroup:/sys/fs/cgroup:ro --privileged=true --name=lnmp 2233466866/lnmp
docker exec -it lnmp /bin/bash
docker cp lnmp:/etc/my.cnf /docker/lnmp/conf/my.cnf
docker cp lnmp:/usr/local/nginx/conf/nginx.conf /docker/lnmp/conf/nginx.conf
cp /docker/lnmp/conf/my.cnf /docker/lnmp/backup/my.cnf
cp /docker/lnmp/conf/nginx.conf /docker/lnmp/backup/nginx.conf

查看或修改基本配置(代碼目錄,日志保存目錄及vhost目錄配置添加)

my.cnf

[mysqld]
datadir=/data/mysql
socket=/var/lib/mysql/mysql.sock
symbolic-links=0
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid

nginx.conf

user          www;
worker_processes    auto;
worker_cpu_affinity   auto;


worker_cpu_affinity   auto;
pid           logs/nginx.pid;

events {
  worker_connections 102400;
}

http {
  charset       utf-8;
  server_tokens    off;

  log_format main  '$remote_addr - $remote_user [$time_iso8601] "$request" '
            '$status $body_bytes_sent "$http_referer" '
            '"$http_user_agent" "$http_x_forwarded_for"';

  include       mime.types;
  default_type    application/octet-stream;

  client_max_body_size 20M;

  sendfile      on;
  keepalive_timeout  20;

  gzip        on;
  gzip_vary      on;
  gzip_comp_level   1;
  gzip_types     text/css application/javascript application/json image/png image/webp image/apng image/jpeg image/x-icon;

  autoindex_localtime on

  error_log      /logs/z_error.log;
  access_log     /logs/z_$host.log main;

  server {
    listen   80 default;
    root    /www/default;
    return 500;
  }
  include vhost/*.conf;
}

停止并刪除測(cè)試容器

docker stop lnmp
docker rm lnmp

重新創(chuàng)建容器

docker run -dit \
-p 80:80 \
-p 443:443 \
-p 3306:3306 \
-p 9000:9000 \
-e TC="Asia/Shanghai" \
-v /sys/fs/cgroup:/sys/fs/cgroup:ro \
-v /app/lnmp:/www \
-v /docker/lnmp/data/mysql:/data/mysql \
-v /docker/lnmp/conf/my.cnf:/etc/my.cnf \
-v /docker/lnmp/conf/nginx.conf:/usr/local/nginx/conf/nginx.conf \
-v /docker/lnmp/conf/vhost:/usr/local/nginx/conf/vhost \
-v /docker/lnmp/logs:/logs \
--privileged=true \
--name=lnmp \
2233466866/lnmp

mysql 數(shù)據(jù)庫(kù)配置(/etc/my.cnf)

/bin/mysql_secure_installation
cat /var/log/mysqld.log|grep 'A temporary password'
SET PASSWORD = PASSWORD('123456');

php.ini 配置(/usr/local/php7/lib/php.ini)

mysqli.default_socket = /var/lib/mysql/mysql.sock

linux 相關(guān)設(shè)置修改

添加不能登陸的用戶www

groupadd www
useradd -M -g www -s /usr/sbin/nologin www

修改時(shí)區(qū)(/etc/profile)

TZ='Asia/Shanghai'; export TZ
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

多站點(diǎn)配置

www.test.test.conf

server {
  listen   80;
  server_name test.test;

  rewrite ^(.*)$ $scheme://www.test.test$1 permanent;
}
server {
  listen   80;
  server_name www.test.test;

  if ($time_iso8601 ~ "^(\d{4}-\d{2}-\d{2})") {
    set $ttt $1;
  }
  access_log     /logs/$host-$ttt-access.log main;

  root    /www/test;

  location / {
    index  index.php index.html index.htm;
  }

  location ~* \.php {
    include         fastcgi_params;
    fastcgi_index      index.php;
    fastcgi_pass      127.0.0.1:9000;
    fastcgi_split_path_info ^(.+\.php)(.*)$;
    fastcgi_param      PATH_INFO    $fastcgi_path_info;
    fastcgi_param      SCRIPT_NAME   $fastcgi_script_name;
    fastcgi_param      SCRIPT_FILENAME $document_root$fastcgi_script_name;
  }

}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

標(biāo)簽:賀州 山南 湖北 湘潭 通遼 黃山 煙臺(tái) 懷化

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Docker搭建php環(huán)境教程詳解》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266
    南漳县| 香港| 大新县| 铅山县| 平湖市| 沙湾县| 安西县| 威宁| 元氏县| 乐业县| 岳西县| 乌什县| 雅江县| 通河县| 朝阳市| 壤塘县| 长阳| 涡阳县| 化州市| 永顺县| 玉林市| 岳阳县| 皮山县| 南涧| 贡觉县| 陆川县| 仪征市| 吕梁市| 乐山市| 临猗县| 泾源县| 崇仁县| 铜陵市| 腾冲县| 阜城县| 炎陵县| 华阴市| 麻江县| 阜平县| 溧水县| 渑池县|