Centos7的Docker容器里部署xwiki
来源:互联网 发布:linux 社区 编辑:程序博客网 时间:2024/05/17 00:04
环境先知:
CentOS 7
xwiki 9.7
tomcat 7.0.76
Docker 1.12.6
1.运行一个CentOS7镜像的容器.
-p指定端口,指定8080是因为tomcat默认是8080,196e0ce0c9fb是镜像的uuid,后面的/usr/sbin/inie则是为了在容器里面可以使用 systemctl命令来管理服务.
docker run -i -t -d -p 8080 --name xwiki 196e0ce0c9fb /usr/sbin/init
进入容器内部,exec保证了退出容器也不会导致容器停止工作,也是与docker attach命令的区别.
docker exec -ti xwiki /bin/bash
2.安装Java环境
yum install java -y
编辑配置文件
vi /etc/profile
在profile文件底部追加如下:
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.144-0.b01.el7_4.x86_64export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$JAVA_HOME/bin:${PATH}
刷新配置文件使它生效.
source /etc/profile
3.安装MySQL服务.
yum install mysql -y
yum install mysql-devel -y
上面的两个服务可以安装,但是CentOS7以后不能直接安装mysql-server服务,需要我们先下载,如下:
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm
yum install mysql-community-server
启动MySQL服务
systemctl start mysqld
创建xwiki需要的数据库.根据官网上的教程.
mysql> create database xwiki default character set utf8 collate utf8_bin;
并未这个数据库创建一个用户.
mysql> grant all privileges on *.* to xwiki@localhost identified by 'xwiki';
4.安装Tomcat
yum install tomcat -y
下载Tomcat 的web管理器,没有这个的话无法通过浏览器访问程序的,很关键.
yum install tomcat-webapps tomcat-admin-webapps -y
cd /usr/share/tomcat/webapps
这时我们需要将准备好的war包传上来,或者直接从网上下一个.
wget http://download.forge.ow2.org/xwiki/xwiki-9.7.war
然后先启动Tomcat一下,让它把war包解开.
systemctl start tomcat
然后停止Tomcat
systemctl stop tomcat
然后删除war包,防止下次启动的时候从新解压.
rm xwiki-enterprise-web-6.3.war
然后切换到解压的工作目录
cd xwiki-enterprise-web-6.3
可能有的朋友需要了解我现在所处的路径
/usr/share/tomcat/webapps/xwiki-enterprise-web-6.3
cd WEB-INF/
我们要替换此文件夹下的两个文件.来完成xwiki与mysql数据库的连接,并设置为UTF-8,避免中文乱码.
hibernate.cfg.xml 需要修改的地方:
将自带的hsql注释掉,将mysql的地方取消注释,并改为以下内容:
<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> <property name="hibernate.connection.charSet">UTF-8</property> <property name="hibernate.connection.useUnicode">true</property> <property name="hibernate.connection.characterEncoding">utf8</property> <mapping resource="xwiki.hbm.xml"/> <mapping resource="feeds.hbm.xml"/> <mapping resource="activitystream.hbm.xml"/> <mapping resource="instance.hbm.xml"/>
图片展示:
修改xwiki.cfg如下:
将其中的xwiki.encoding=UTF-8取消注释.
然后修改Tomcat的UTF-8格式:
cd /usr/share/tomcat/conf
vi server.xml
修改为如下:
5.启动Tomcat,使用浏览器访问xwiki.
systemctl start tomcat
访问的端口不是输入ip:8080,需要输入容器对应的宿主机的接口,此接口可以通过 docker ps命令获得.
最终出现欢迎界面就算成功了.
附上几位有价值的链接
http://blog.csdn.net/lzwjavaphp/article/details/40185585
http://jingyan.baidu.com/article/e4d08ffd6b01310fd3f60d5b.html
- Centos7的Docker容器里部署xwiki
- docker centos7 容器问题
- CentOS7.0部署Docker
- CentOS7 Docker环境部署
- CentOS7安装部署Docker
- Docker多容器部署
- 容器部署解决方案Docker
- 容器部署解决方案Docker
- Centos7创建支持ssh服务器的docker容器
- Docker部署Rancher Server-centos7
- docker容器里安装ssh
- CENTOS: Docker的Tomcat容器里的reboot
- Docker 容器部署 Consul 集群
- docker容器部署apollo方法
- 使用docker部署nginx容器
- 容器部署解决方案Docker详解
- docker部署shipyard容器管理工具
- Docker容器里的进程为什么要前台运行
- 抽屉布局+Fragment+TabLayout上导航栏+PullToRefreshListView+轮播图+PullToRefreshGridView
- mybatis报Could not find result map java.lang.Integer之类的错误
- JavaScript Dom 编程艺术学习笔记之DOM操作
- 【第四周项目1】 建立单链表
- 第四周项目1
- Centos7的Docker容器里部署xwiki
- Xamarin.Forms XAML的辅助功能Code Snippet
- 实现分页功能
- tensowflow报错tensorflow.python.framework.errors_impl.InvalidArgumentError<exception str
- MySQL数据库(三)_视图_虚表
- MySQL BETWEEN 用法
- Unity技巧总结01 屏幕截图
- Android 开源项目及其开源工具集合
- mysql设置定时任务