摘要: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

在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:/

6.1:给更改httpd.conf文件并对目录授权

口令 :vi /etc/httpd/conf/httpd.conf

6.2  授权口令: chmod 777 dede

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

二:成果展示:

三:注意事项:

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

Docker下梦织CMS的部署的更多相关文章

  1. 设想 Docker 下部署 KVM

    设想 Docker 下部署 KVM 一.安装 $ yum -y install kvm # kvm base , must $ yum -y install libvirt -y # libvirtd ...

  2. 在Docker下部署Nginx

    在Docker下部署Nginx 在Docker下部署Nginx,包括: 部署一个最简单的Nginx,可以通过80端口访问默认的网站 设置记录访问和错误日志的路径 设置静态网站的路径 通过proxy_p ...

  3. docker环境下solrcloud+zookeeper集群部署教程

    前言:两个月前的16年11月份完成的配置,使用的solr6.1和zookeeper3.4,刚刚写成blog,目前版本可能有小版本的变化. 本例完成结果为:在docker环境下部署solrcloud集群 ...

  4. 织梦(DEDE)CMS V5.3 覆盖任意变量导致远程包含漏洞

    漏洞版本: 织梦(DEDE)CMS V5.3 漏洞描述: 织梦内容管理系统,最强大的中文开源CMS网站管理项目,使用PHP+MySQL架构. 在文件include/common.inc.php中: f ...

  5. docker下部署spring boot

    第 5 章 Docker + Spring Boot: 快速搭建和部署Java Web应用 0.你需要: JDK 1.8 : java -version Maven 3.0+ : mvn -v Git ...

  6. 从Docker 到Jenkins 到Ansible的部署经验

    从Docker 到Jenkins 到Ansible的部署经验 工作中,除了开发功能,还负责系统的部署工作.我从频繁的部署工作中,逐渐找到了一些偷懒的方法.从传统的Java -jar命令启动服务,到通过 ...

  7. Docker 入门 第六部分:部署app

    目录 Docker 入门 第六部分:部署app 先决条件 介绍 选择一个选项 Docker CE(Cloud provider) Enterprise(Cloud provider)这里不做介绍 En ...

  8. Docker下的Spring Cloud三部曲之一:极速体验

    版权声明:欢迎转载,请注明出处,谢谢. http://blog.csdn.net/boling_cavalry/article/details/79177930   目录(?)[+]   从本章开始, ...

  9. 国外10个ASP.Net C#下的开源CMS

    国外10个ASP.Net C#下的开源CMS https://blog.csdn.net/peng_hai_lin/article/details/8612895   1.Ludico Ludico是 ...

随机推荐

  1. Java 面试知识点【背诵版 240题 约7w字】

    -- 转载自牛客网 是瑶瑶公主吖 Java 基础 40 语言特性 12 Q1:Java 语言的优点? ① 平台无关性,摆脱硬件束缚,"一次编写,到处运行". ② 相对安全的内存管理 ...

  2. Azure Terraform(一)入门简介

    一,引言 众所周知,当企业将项目整体架构资源迁移到云上,云基础设施架构师就要根据现有项目搭建整体项目的基础设施资源的架构,然后我们的云运维工程师就要根据设计好基础设施的架构图来创建云上资源,但是在构筑 ...

  3. apk获取sha1值的方法

    安卓应用都使用一个签名证书(.keystore或.jks文件)签名,签名证书可以由jdk生成.证书生成后,证书就有其sha1值. 使用此证书打包后的安卓应用,也有其一样的sha1值.md5值和sha2 ...

  4. 常用的linux指令

    a.cd /home 进入 '/ home' 目录' b.cd .. 返回上一级目录 c.cd ../.. 返回上两级目录 d.mkdir dir1 创建一个叫做 'dir1' 的目录' e.mkdi ...

  5. Redis如何做内存优化?

    1.缩减键值对象 缩减键(key)和值(value)的长度, key长度:如在设计键时,在完整描述业务情况下,键值越短越好. value长度:值对象缩减比较复杂,常见需求是把业务对象序列化成二进制数组 ...

  6. 用Margin还是用Padding的区别

    用margin还是用padding这个问题是每个学习CSS进阶时的必经之路. CSS边距属性定义元素周围的空间.通过使用单独的属性,可以对上.右.下.左的外边距进行设置.也可以使用简写的外边距属性同时 ...

  7. Linux 网络排错检查思路

    Linux 网络排错检查思路 graph TD A[当网络不通时] --> B{ping想要访问的地址,<br>如www.runoob.com} B --> |不通| C{pi ...

  8. 微信小程序 - bilibili模仿

    今天真是个大坑,onLoad => 写成了OnLoad 程序一直没法执行, 晚上下班的时候,在微信的小程序中,this不可以直接访问data中的值,得this.data才能访问..

  9. String -- 从源码剖析String类

    几乎所有的 Java 面试都是以 String 开始的,String 源码属于所有源码中最基础.最简单的一个,对 String 源码的理解也反应了你的 Java 基础功底. String 是如何实现的 ...

  10. transmission protocol

    传输层主要定义了主机应用程序间端到端的连通性,它一般包含四项基本功能 . 将应用层发往网络层的数据分段或将网络层发往应用层的数据段合并 建立端到端的链接,主要是建立逻辑连接以传送数据流 将数据段从一台 ...