看了差不多一周多的dockerfile制作鏡像霉旗,各種網(wǎng)上搜的教程或者視頻,對(duì)于docker命令已經(jīng)很熟練蛀骇,但是其中的docker思想還是混混沌沌厌秒,本篇docker lnmp環(huán)境搭建和部署項(xiàng)目,是一遍一遍手巧摸索出來的擅憔,實(shí)際過程中我是把mysql單獨(dú)拆分出來鸵闪,獨(dú)立制作了MYSQL鏡像,然后啟動(dòng)容器雕欺,項(xiàng)目中數(shù)據(jù)庫配置文件端口號(hào)和地址改下即可岛马。
1.拉取官方的centos:6.9作為基礎(chǔ)鏡像,docker pull centos:6.9
2.查看本機(jī)上的docker鏡像屠列,docker images
3.進(jìn)入鏡像? ?docker run -it centos:6.9 /bin/bash
4.安裝源鏡像??yum install -y epel-release? ?此處可能報(bào)錯(cuò)需要多試幾次啦逆,跟網(wǎng)絡(luò)環(huán)境有關(guān)
5.安裝PHP??yum install -y php php-fpm php-mysql? ?
6.查看php版本? php-fpm版本? php模塊?
php-v
php -fpm -v?
php -m
7.安裝Nginx? ??yum install -y nginx
8.配置PHP fastcgi
配置Nginx以支持PHP,修改 /etc/nginx/conf.d/default.conf 如下:
9.創(chuàng)建 /www 目錄笛洛,并且修改用戶和用戶組為 apache (php-fpm默認(rèn)運(yùn)行用戶和組為apache)
mkdir /www
chown apache:apache /www
ll / | grep www
10.安裝mysql?
yum install -y mysql mysql-server
11.啟動(dòng)mysql??
/etc/init.d/mysqld start
12.給mysql添加root用戶并設(shè)置密碼
/usr/bin/mysqladmin -u root password '123456'
/etc/init.d/mysqld stop
13.編寫啟動(dòng)容器自動(dòng)啟動(dòng)命令(包含mysqld php-fpm nginx)
14.然后向startup.sh寫入如下內(nèi)容:
15.清理不再需要的數(shù)據(jù)以縮減鏡像的尺寸夏志,然后docker commit生成新鏡像
yum remove -y epel-release
yum clean all
16.退出容器(容器內(nèi)是沒辦法執(zhí)行docker命令)
exit
17.查看所有容器
docker ps -a
18.生成鏡像
docker commit dcd4f92bcc35 centos:lnmp2
19.查看鏡像是否生成
docker images
20.測(cè)試鏡像啟動(dòng)容器
docker run -d -p 8849:80 -v /www:/www centos:lnmp /bin/startup.sh
21.部署項(xiàng)目
cd /www
sudo rz CI.zip
sudo unzip CI.zip
22.訪問http://192.168.0.198:8849/index.php