Docker下梦织CMS的部署

摘要:Docker的广泛应用相对于传统的虚拟机而言提高了资源的利用率,推广后docker的影响不容忽视,在启动速度、硬盘、内存、运行密度、性能、隔离性和迁移性方面都有很大的提高。本次在centos7下使用不同容器搭建lamp环境后部署开源的CMS。分别在两个容器里用yum下载httpd、mysql,并在httpd内安装PHP7.1版本。测试apache通过后下载CMS镜像并部署。

关键词:Docker Lamp CMS

要求:
1.熟练掌握centos7版本下docker的安装、删除,启动、停止,docker镜像的安装、删除。
2.掌握容器端口的各个映射方式,及容器互联的操作方法。
3.掌握不同容器下lamp的搭建。
4.Lamp搭建在容器中搭建后掌握CMS镜像的保存、授权、部署。
一、 过程:
1.docker容器的创建,启动,停止,并查询docker容器的状态。
命令:yum install docker #下载docker
所有容器
容器的启动和停止

2.docker镜像的安装、删除、状态。
所有镜像

3.通过docker exec -it 2db /bin/bash 命令进入容器,安装httpd、php7.1。并测试apache是否成功。
命令:
docker pull docker.io/centos/mysql-57-centos7 #下载mysql镜像
docker run -d --name=mysql -e MYSQL_ROOT_PASSWORD=123456 docker.io/centos/mysql-57-centos7 #创建mysql容器创建用户root 口令123456
docker run --name=httpd -d -u root -P --link mysql centos/httpd #创建httpd容器并连接数据库
docker exec -it httpd /bin/bash #进入httpd容器
[root@2db3229c1b25 /]# yum install -y epel-release
[root@2db3229c1b25/]#rpm -ivh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm
[root@2db3229c1b25 /]# yum update -y
[root@2db3229c1b25 /]# yum install -y gcc make openssl openssl-devel
[root@2db3229c1b25 /]# yum install -y --enablerepo=remi --enablerepo=remi-php71 php php-devel php-mbstring php-mcrypt php-mysqlnd php-pdo php-gd
[root@2db3229c1b25 /]# yum clean all
[root@2db3229c1b25 /]# rm -rf /var/cache/yum
[root@2db3229c1b25 /]# cd /var/www/html/
[root@2db3229c1b25 html]# vi index.php
在里面输入:

<?php phpinfo(); ?>

成功页面

出现以上页面表示安装成功。
4.在容器里安装MySQL,并授权CMS,账户为“root”,口令:“123456”。
命令:
Grant all on . to “root”@"%" identified by “123456”;
截图如下:
更改密码

5.下载织梦CMS镜像,火狐浏览器寻找官网并下载UTF8版本。
下载页面

6.将织梦CMS镜像复制到docker内
口令:
Docker cp DedeCMS-V5.7 –UTF8-SP2.tar.gz httpd:/
复制口令

7.1. 给更改httpd.conf文件并对目录授权
口令 :vi /etc/httpd/conf/httpd.conf
更改文件配置
更改参数

7.2.
口令:chmod 777 dede
权限操作

  1. 安装DedeCMS,并连接数据库

连接数据库
连接数据库

三、结果展示:
![结果1![](https://img-blog.csdnimg.cn/20210123165641274.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L1llbGxsaQ==,size_16,color_FFFFFF,t_70)
结果2

四、 实注意事项

  1. 实验过程中centos7系统中命令行有严格的格式要求,有无空格以及命令的准确性需要注意。
  2. docker安装httpd后安装的php版本不匹配无法识别导致网页不通,需要安装PHP7.1版本
  3. 安装前需要进入docker更改 /etc/httpd/conf/htttpd.conf文件并授权目录否则无法识别。

五、 参考文献
[1]查找最快docker镜像
https://github.com/silenceshell/docker_mirror
[2] docker部署httpd+php7.1
https://blog.csdn.net/BingZhongDeHuoYan/article/details/79424340
[3] Linux下安装DedeCMS及安全设置 http://help.dedecms.com/install-use/server/2012/0510/2312.html