公司内部中搭建wiki服务做项目管理系统

tomcat+mysql+xwiki搭建开源wiki系统

xwiki是使用java语言编写的开源wiki系统

xwiki有多种版本,standalone的版本可以直接下载之后独立安装,默认集成了jetty运行,但是这种方式安装xwiki,运行速度比较慢,在大部分的情况下不能满足企业的需求。

在linux系统上实现部署xwiki也有多种方式:

其中serlet container就有许多:
    tomcat
    glassfish

jboss等

关系型数据库的选择也是比较广泛的,在此使用tomcat和mysql

第一步:下载xwiki的war包

wget http://download.forge.ow2.org/xwiki/xwiki-enterprise-web-6.3.war

第二步:安装jdk
    安装jdkde要点主要就是环境变量
    导出JAVA_HOME
    JRE_HOME

1. 导出可执行程序到PATH变量

tar -zxvf jdk-8u73-linux-x64.tar.gz

mv jdk1.8.0_73 /usr/local/jdk
    echo "JAVA_HOME=/usr/local/jdk" >>/etc/profile
    echo "CLASSPATH=.:$JAVA_HOME/lib.tools.jar" >>/etc/profile
    echo "PATH=/usr/local/jdk/bin:/bin:/sbin:/usr/sbin:/bin:/usr/bin:/root/bin" >>/etc/profile
    echo "export JAVA_HOME CLASSPATH PATH" >>/etc/profile
    source /etc/profile

2.查看jdk的版本

usr/local/jdk/bin/java -version
     java version "1.8.0_73"
    Java(TM) SE Runtime Environment (build 1.8.0_73-b02)
    Java HotSpot(TM) 64-Bit Server VM (build 25.73-b02, mixed mode)

第三步:安装tomcat(/usr/local/tomcat/)
    tar   -zxvf   apache-tomcat-6.0.32.tar.gz  -C     /usr/local/
    cd /usr/local/
    mv  apache-tomcat-6.0.32     tomcat
1.tomcat的命令
    cd  tomcat
    bin/startup.sh   启动服务命令
    bin/shutdown.sh   停止服务命令
    webapps/ROOT/   网页目录
    conf   配置文件存放目录

2.查看端口

netstat  -untnalp | grep :8080
    cd /usr/local/tomcat/webapps/
    mkdir xwiki
    mv xwiki-enterprise-web-6.3.war /usr/local/tomcat/webapps/xwiki/
    unzip xwiki-enterprise-web-6.3.war

第四步:安装mysql(数据库存放目录 /usr/local/mysql/data/)
安装配置工具cmake
 [[email protected] cmake-2.8.10.2]# ./bootstrap   --prefix=/usr/local/cmake
[[email protected] cmake-2.8.10.2]# make
[[email protected] cmake-2.8.10.2]# make install

[[email protected] local]# /usr/local/cmake/bin/cmake  --version
cmake version 2.8.10.2

使用camke配置安装源码mysql
tar -zxvf mysql-5.5.13.tar.gz
cd mysql-5.5.13

/usr/local/cmake/bin/cmake   -DCMAKE_INSTALL_PREFIX=/usr/local/mysql    -DSYSCONFDIR=/etc   -DMYSQL_DATADIR=/home/mysql  -DMYSQL_TCP_PORT=3306   -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock   -DMYSQL_USER=mysql   -DEXTRA_CHARSETS=all   -DWITH_READLINE=1   -DWITH_SSL=system   -DWITH_EMBEDDED_SERVER=1   -DENABLED_LOCAL_INFILE=1   -DWITH_INNOBASE_STORAGE_ENGINE=1

make

make install

  1. 初始化授权库
    cd /usr/local/mysql
    ./scripts/mysql_install_db --user=mysql
    ls /usr/local/mysql/data/mysql/ -l
  2. chmod 777 data

创建mysql数据库的主配置文件
    cd   mysql-5.5.13/support-files/
    cp  my-medium.cnf   /etc/my.cnf

3.启动数据库服务
    /usr/local/mysql/bin/mysqld_safe   --user=mysql     &

4.使用数据库管理员从数据库服务器本机登录(没密码)
    /usr/local/mysql/bin/mysql    -uroot    -p

5.设置数据库管理员从本机登录的密码
    /usr/local/mysql/bin/mysqladmin   -hlocalhost    -uroot     password     "123"

kill   -9   %1  
    pkill    -9    mysqld
    /usr/local/mysql/bin/mysqld_safe   --user=mysql     &

/usr/local/mysql/bin/mysql     -uroot    -p123  (不加密码无法登录)

6.把mysql命令所在的路径添加到系统环境变量PATH里
    export  PATH=/usr/local/mysql/bin:$PATH

vim /etc/bashrc
    export  PATH=/usr/local/mysql/bin:$PATH
    :wq

7.给源码mysql服务编写启动脚本
    cd    mysql-5.5.13/support-files/
    cp   mysql.server    /etc/init.d/mysqldd
    chmod   +x    /etc/init.d/mysqldd

chkconfig --add mysqldd
    chkconfig --list mysqldd
    mysqldd       0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭

[[email protected] support-files]# netstat -untlap | grep :3306
tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      38572/mysqld       
[[email protected] support-files]# pkill  -9  mysqld
[1]+  已杀死               /usr/local/mysql/bin/mysqld_safe --user=mysql
[[email protected] support-files]# netstat -untlap | grep :3306
service  mysqldd status
 service  mysqldd start
service  mysqldd status
service  mysqldd stop
service  mysqldd start

更改包大小:默认是1M,WiKi导入超过1M的文件会出错。

vi /etc/my.cnf

更改max_allowed_packet = 1M为max_allowed_packet = 32M创建XWiki的数据库:

 8.创建xwiki的数据库:

mysql -uroot -p
    mysql> create database xwiki
    mysql> grant all privileges on xwiki.* to [email protected] identified by ‘xwiki‘;

不要使用MyISAM存储引擎,因为MyISAM不支持事务处理,推荐使用InnoDB存储引擎。

vi /etc/my.cnf

[client]
#password       = your_password
port            = 3306
socket          = /tmp/mysqld.sock
default-character-set=utf8

[mysqld]
port            = 3306
socket          = /tmp/mysqld.sock
skip-external-locking
key_buffer_size = 16M
max_allowed_packet = 32M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
default-storage-engine=INNODB

第五步:下载wiki和MySQL连接工具
    下载MySQL JDBC Driver Jar放到/data/app_platform/xwiki_tomcat/webapps/xwiki/WEB-INF/lib目录下
    wget http://repo1.maven.org/maven2/mysql/mysql-connector-java/5.1.34/mysql-connector-java-5.1.34.jar
    mv mysql-connector-java-5.1.34.jar /usr/local/tomcat/webapps/xwiki/WEB-INF/lib/
    cd  /usr/local/tomcat/webapps/wiki/WEB-INF/lib/
    cp -p hibernate.cfg.xml hibernate.cfg.xml-bak
    vi  hibernate.cfg.xml   删除所有多余的配置文件。
    [[email protected] WEB-INF]# cat hibernate.cfg.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
  "-//Hibernate/Hibernate Configuration DTD//EN"
  "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
  <session-factory>
    <!-- MySQL configuration.
         Uncomment if you want to use MySQL and comment out other database configurations.
    -->
    <property name="connection.url">jdbc:mysql://localhost/xwiki</property>
    <property name="connection.username">xwiki</property>
    <property name="connection.password">xwiki</property>
    <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
    <property name="dialect">org.hibernate.dialect.MySQL5InnoDBDialect</property>
    <property name="dbcp.ps.maxActive">20</property>
    <mapping resource="xwiki.hbm.xml"/>
    <mapping resource="feeds.hbm.xml"/>
    <mapping resource="activitystream.hbm.xml"/>
    <mapping resource="instance.hbm.xml"/>

</session-factory>
</hibernate-configuration>

1.XWIKI字符集编码配置
   修改 web.xml文件
 /data/app_platform/xwiki_tomcat/webapps/xwiki/WEB-INF/xwiki.cfg

#-# The encoding to use when transformin strings to and from byte arrays. This causes the jvm encoding to be ignored,
#-# since we want to be independend of the underlying system.
xwiki.encoding=UTF-8
2.修改hibernate.cfg.xml
     hibernate.cfg.xml中添加
<property name="connection.useUnicode">true</property>
<property name="connection.characterEncoding">UTF-8</property>

3.MySQL的配置文件my.cnf
[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8
character-set-server=utf8
collation-server=utf8_bin

4.管理附件(/var/local/xwiki/)

默认情况下,XWIKI使用数据库存储附件,上传的附件最大为30M左右,同时MySQL的配置文件my.cnf中要设置max_allowed_packet为最大值的3倍左右,因为存储历史版本也会耗费空间
使用文件系统存储可以上传更大的附件,XWIKI使用一个临时目录来存储从数据库中调出的图片或附件。

附件的存储目录在xwiki.properties中设定,不可以随意增加或删除这个目录下的内容,因为每个附件在数据库中都有相应的元数据
#-# Note if the system property xwiki.data.dir is set then this property is not used.
#-# If neither the system property nor this configuration value here are set then the Servlet container‘s temporary
#-# directory is used; This is absolutely not recommended since that directory could be wiped out at any time and you
#-# should specify a value.
environment.permanentDirectory=/var/local/xwiki/

最好在第一次运行XWIKI的时候就设定好附件的存储方式

在xwik.cfg文件中设置
xwiki.store.attachment.hint=file
xwiki.store.attachment.versioning.hint=file
xwiki.store.attachment.recyclebin.hint=file

用管理员登陆的话,需要修改xwiki.cfg,将xwiki.superadminpassword=system 前面#去掉,            用superadmin/system登陆即可。

时间: 2024-10-06 00:40:12

公司内部中搭建wiki服务做项目管理系统的相关文章

centos7中搭建ftp服务

博客搬家: centos7中搭建ftp服务 最近想和同学共享一些文件资源,于是在实验室服务器上搭建个ftp服务,本博客记录一下配置的流程.过程基本是参照别人的方法来做的,博客也是在别人博客基础上修改的,当然排除了一些坑点. 参考:https://www.cnblogs.com/jefflee168/p/6575014.html 1. 安装vsftpd 安装vsftpd: yum install vsftpd -y 启动vsftpd: systemctl start vsftpd 设置开机启动:s

在RHEL中搭建DHCP服务使得windows系统能自动获取IP地址

实验环境: RHEL6.5版本.Windows7系统各一台RHEL6.5版本的IP地址:192.168.100.222 本实验所使用到的一些命令: cd 切换目录 rpm 添加/删除程序功能 cat 查看文件 cp 复制 vim 编辑文件 service 启动/关闭某个程序 ---------------------------------操作步骤---------------------------------------- 一.检查光驱是否已经挂载在mnt目录下. 二.安装DHCP. 三.到

在Linux6.5系统中搭建DHCP服务和中继代理

在Linux6.5系统中搭建DHCP服务和中继代理 在C3(linux6.5)上搭建dhcp服务1) 安装DHCP环境软件包,如下图所示(如找不到/mnt/Packages,说明yum仓库没有搭建,请先搭建yum仓库详情请见http://blog.51cto.com/13842738/2135806)2) 对dhcp配置文件进行更改提示配置模板所在位置配置完成进入末行模式,wq保存并退出至此dhcp服务搭建完成service dhcpd start打开服务器,显示OK表示搭建成功,如下图所示 对

使用Gogs在Windows系统中搭建Git服务

前言 其实也没啥可说的,就是新公司用的svn,各种不习惯,各种出问题,然后上网查了现在流行用Git,然后就想着自己搭建一个GIt服务来做代码管理系统,而且VS2017里面也自带Git相关功能,咱就顺应潮流吧. 正文 上网查资料,一开始找到 GitBlit 这款基于Java开发的Git管理工具,各种折腾后部署成功了.悲催的事情来了,无意中看见网上有人说 GitBlit 容易内存泄漏,而且也确实好久没更新,然后说换成 Gogs 后各种好,布拉布拉一堆,那好吧,咱继续折腾呗.看了资料发现 Gogs 是

linux redhat6.5中 搭建DHCP服务

DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)通常被应用在大型的局域网络环境中,主要作用是集中的管理.分配IP地址,使网络环境中的主机动态的获得IP地址.Gateway地址.DNS服务器地址等信息,并能够提升地址的使用率.实验目标:C3中搭建DHCP 使C1 和C2自动获取IP1:配置二层交换机SW2 添加vlan 10 20 100 并分别将f1/1 f1/2 f1/3加入vlan10 vlan20 vlan100f1/0接口做trunk链

linux redhat6.5 中搭建samba服务

Samba是在Linux和UNIX系统上实现SMB协议的一个免费软件,由服务器及客户端程序构成.SMB(Server Messages Block,信息服务块)是一种在局域网上共享文件和打印机的一种通信协议,它为局域网内的不同计算机之间提供文件及打印机等资源的共享服务.SMB协议是客户机/服务器型协议,客户机通过该协议可以访问服务器上的共享文件系统.打印机及其他资源.通过设置"NetBIOS over TCP/IP"使得Samba不但能与局域网络主机分享资源,还能与全世界的电脑分享资源

Redhat6.5中搭建DHCP服务

DHCP是动态主机配置协议(Dynamic Host Configure Protocol)的缩写.是由Internet工作任务小组设计开发的,专门用于为TCP/IP网络中的计算机自动分配TCP/IP参数的协议.DHCP服务避免了因手动设置IP地址所产生的错误,同时也避免了把一个IP地址分配给多台工作站所造成的地址冲突.DHCP提供了安全.可靠且简单的TCP/IP网络设置,降低了配置IP地址的负担.下面我将结合GNS3和VMware模拟DHCP自动分配IP地址 实验拓扑图如下:三层交换机sw1上

linux redhat6.5中 搭建NFS服务

NFS(Network File System)即网络文件系统,是FreeBSD支持的文件系统中的一种,它允许网络中的计算机之间通过TCP/IP网络共享资源.在NFS的应用中,本地NFS的客户端应用可以透明地读写位于远端NFS服务器上的文件,就像访问本地文件一样. 首先准备两台linux (一台最为服务器 一台作为客户机) 通过搭建NFS 使得客户机能访问服务器 并且文件同步 1:在服务器上配置 #yum install nfs-utils rpcbind -y //安装 nfs-utils r

在kubernets中搭建jenkins服务

安装完kubernets后,不可避免的要在集群中安装一些日常所需要的软件和服务.其中对于运维来说,jenkins是经常使用的一个工具,这里,介绍一下如何在k8s中安装jenkins工具.这也是为将来为jinkins+k8s的ci/cd流程做一个基础的架构环境. 一:首先,检查k8s环境,确保集群可用.然后在各node节点下载jenkins相关的docker镜像. k8s-node1# kubectl get node NAME STATUS ROLES AGE VERSION k8s-node1