虚机建论坛,一键转容器

Bella

虚机建论坛,一键转容器

Discuz简介

作为国内最大的社区软件及服务提供商,Comsenz旗下的 Discuz! 开发组具有丰富的 web应用程序设计经验,尤其在论坛产品及相关领域,经过长期创新性开发,掌握了一整套从算法,数据结构到产品安全性方面的领先技术。使得 Discuz! 无论在稳定性、负载能力、安全保障等方面都居于国内外同类产品领先地位。

那么本篇文章将讲讲如何在hcaas上使用2.0版本的虚机搭建Discuz论坛

前置条件

• LNMP环境 (如果没有搭建LNMP环境可以参考官方教程:HCaaS容器虚机使用之搭建一套LNMP

• 一台容器虚机(参考用户文档:创建容器虚拟机

• Discuz压缩包

搭建Discuz论坛

检查完LNMP环境确保正常后就可以开始搭建Discuz了,点击虚机的终端开始搭建Discuz论坛
image.png

1.下载Discuz压缩包

首先是下载Discuz,Discuz的压缩包可以在官网下载自己需要的版本:http://www.discuz.net/forum.php

这里使用的是3.3的UTF8版本:

[root@localhost ~]# cd /usr/local/src/
[root@localhost /usr/local/src]# wget http://download.comsenz.com/D...

解压:

[root@localhost /usr/local/src]# unzip Discuz_X3.3_SC_UTF8.zip

解压后会有以下几个目录:

[root@localhost /usr/local/src]# ls
Discuz_X3.3_SC_UTF8.zip readme upload utility


2.配置Discuz

首先将Nginx之前的默认页文件给删掉,然后将以上解压的upload目录下所有的文件拷贝到Nginx默认站点的根目录下(我这里的跟目录是/home/wwwroot/default/):

[root@localhost /usr/local/src]# rm -f /home/wwwroot/default/index.php
[root@localhost /usr/local/src]# ls /home/wwwroot/default/
[root@localhost /usr/local/src]# cp -r upload /* /home/wwwroot/default/
[root@localhost /usr/local/src]# ls /home/wwwroot/default/
admin.php config data home.php misc.php search.php uc_client
api connect.php favicon.ico index.php plugin.php source uc_server
api.php cp.php forum.php install portal.php static userapp.php archiver crossdomain.xml group.php member.php robots.txt template

注意:这里的根目录就是LNMP搭建完成后80端口的根目录

接着复制80端口处的链接
image.png

复制的链接粘贴到浏览器中访问Discuz的配置页面

若出现下图所示503报错情况
image.png

则需手动将路径指向index.php即可,如下图(打码处是我们的80端口的映射端口)
image.png

3.安装Discuz

最终访问成功后会显示如下页面,点击同意进入下一步:
image.png

然后就会进入目录、文件的权限检查界面,但是会发现这些目录或文件权限不足,所以都是不可写的状态:

image.png

这里我们写个脚本给这些目录赋予权限,页面中显示的目录路径都是相对路径,所以这个脚本仍然需要放在站点的根目录下:

[root@localhost ~]# cd /home/wwwroot/default/
[root@localhost /home/wwwroot/default]# vim fileList.txt # 先把路径都放在一个文本文件中./config
./data
./data/cache
./data/avatar
./data/plugindata
./data/download
./data/addonmd5
./data/template
./data/threadcache
./data/attachment
./data/attachment/album
./data/attachment/forum
./data/attachment/group
./data/log
./uc_client/data/cache
./uc_server/data/
./uc_server/data/cache
./uc_server/data/avatar
./uc_server/data/backup
./uc_server/data/logs
./uc_server/data/tmp uc_server/data/view
[root@localhost /data/wwwroot/default]# vim filePermission.sh

!bin/bash

写个简单的循环脚本就搞定了

for file in cat ./fileList.txt
do
chmod 777 $file
done
[root@localhost /data/wwwroot/default]# bash filePermission.sh

执行完脚本后刷新页面就会发现状态都变为可写了
image.png

没问题后就点击页面下方的”下一步“:
image.png

A-选择“全新安装 Discuz! X (含 UCenter Server)”

如果你之前没有安装过Discuz就选择此项。

B-选择“仅安装 Discuz! X (手工指定已经安装的 UCenter Server )”

如果你之前安装过Discuz,现在只是升级的话,选择此项并保证之前的 UCenter 是 UCenter 1.6.0 版本,如果之前安装的 UCenter Server 没有进行升级操作的话,一般为 1.5.1 或 1.5.2 版本,你需要首先升级 Ucenter 到 1.6.0版本, 否则安装程序会提示错误,无法继续。因为我是没安装过的所以这里以全新安装 Discuz为例。

点击“下一步”,进入安装数据库的界面,如下图所示:
image.png

4.完成安装

安装完成后点击访问即可,如果你不需要安装Discuz推荐的应用的话可直接点击【您的论坛已完成安装,点击访问】

image.png

随后即可访问到论坛首页了
image.png

将论坛服务转移到容器

由于虚机配置SLB较麻烦,且不可挂载PVC,实在令人头疼,而虚机2.0版本以后直接使用的虚机转容器功能就可以轻松解决了

关于该功能的详细说明,请查看官方的用户文档:虚拟机转容器

1.论坛转移到容器

大致配置方法与文档中差不多,有一点需要强调,就是点击【添加持久化路径】时,需输入刚刚配置的站点根目录
image.png

注意:若这里没有配置持久化路径,那么转容器后数据将不会保存(服务会保存下来)

2.验证容器论坛服务

找到转化后的容器工作负载
image.png

点击80端口即可直接访问到Discuz论坛
image.png

更新论坛数据

细心的同学会发现,虚机转化为容器后,则是单独的两个服务,之间并没有什么关联,对于比较擅长玩容器的同学,直接删掉虚机就好;可对于习惯虚机的同学就不太友好

这时可使用【升级镜像】的方法,将虚机的服务数据更新到容器中

1.添加虚机中的论坛数据
image.png

此时查看容器中的论坛发现刚刚创建的用户数据并没有到容器中
image.png

2.升级镜像

此时点击【升级镜像】菜单项,等待加载
image.png

3.数据更新完成

待升级镜像加载完成后,此时再次访问容器的论坛,即可登陆查看之前虚机里的用户数据了
image.png

阅读 46
1 声望
0 粉丝
0 条评论
1 声望
0 粉丝
宣传栏