看了差不多一周多的dockerfile制作镜像,各种网上搜的教程或者视频,对于docker命令已经很熟练,但是其中的docker思想还是混混沌沌,本篇docker lnmp环境搭建和部署项目,是一遍一遍手巧摸索出来的,实际过程中我是把mysql单独拆分出来,独立制作了MYSQL镜像,然后启动容器,项目中数据库配置文件端口号和地址改下即可。
1.拉取官方的centos:6.9作为基础镜像,docker pull centos:6.9
2.查看本机上的docker镜像,docker images
3.进入镜像 docker run -it centos:6.9 /bin/bash
4.安装源镜像 yum install -y epel-release 此处可能报错需要多试几次,跟网络环境有关
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.创建 /www 目录,并且修改用户和用户组为 apache (php-fpm默认运行用户和组为apache)
mkdir /www
chown apache:apache /www
ll / | grep www
10.安装mysql
yum install -y mysql mysql-server
11.启动mysql
/etc/init.d/mysqld start
12.给mysql添加root用户并设置密码
/usr/bin/mysqladmin -u root password '123456'
/etc/init.d/mysqld stop
13.编写启动容器自动启动命令(包含mysqld php-fpm nginx)
14.然后向startup.sh写入如下内容:
15.清理不再需要的数据以缩减镜像的尺寸,然后docker commit生成新镜像
yum remove -y epel-release
yum clean all
16.退出容器(容器内是没办法执行docker命令)
exit
17.查看所有容器
docker ps -a
18.生成镜像
docker commit dcd4f92bcc35 centos:lnmp2
19.查看镜像是否生成
docker images
20.测试镜像启动容器
docker run -d -p 8849:80 -v /www:/www centos:lnmp /bin/startup.sh
21.部署项目
cd /www
sudo rz CI.zip
sudo unzip CI.zip
评论