docker封装的confluence显示中文乱码

简介: 学习

一手干净资源的docker,未安装任何插件

直接上步骤不多废话

如果是在虚拟机KVM部署上的

直接按流程一走,docker部署按流程二走

流程一

1、先安装想要的字体, 如微软雅黑, 宋体等, windows/font下拷到linux/usr/share/fonts,

linux中,字体库的存放位置是/usr/share/fonts目录,新建个目录比如windowsfonts放中文字体

1)添加中文字体

中文字体文件在我们的windows系统中就可以找到,打开c盘下的Windows/Fonts目录:

如上图,我们只需要将我们需要的字体拷贝出来并上传至linux服务器/usr/share/fonts/windowsfonts目录即可

2)修改文件夹权限

紧接着需要修改windowsfonts目录的权限:

chmod -R 755 /usr/share/fonts/windowsfonts

3)编辑配置文件

增加字体文件路径

vi /etc/fonts/fonts.conf

#添加我的路径

/usr/share/fonts/windowsfonts

4)刷新内存中的字体缓存

fc-cache

查看字体列表

fc-list

至此,安装中文字体完成。

2、在confluence的安装目录, /opt/atlassian/confluence/bin下找到setenv.sh, 找到CATALINA_OPTS, 加入一行

#fontpath=/usr/share/fonts/windowsfonts/目录为放置中文字体的目录

CATALINA_OPTS=”-Dconfluence.document.conversion.fontpath=/usr/share/fonts/windowsfonts/ ${CATALINA_OPTS}”

3、清空confluencehomeviewfile目录和shared-home/dcl-document目录里的所有缓存文档文件,

不清空的话, confluence预览旧文件时还是会显示方框,只有新文件才会正常.

rm -rf /var/atlassian/confluence/viewfile/temp

rm -rf /var/atlassian/confluence/shared-home/dcl-document

4、重启confluenceOK

流程二

第一步先下载vim否则没办法打开文件

当执行vim编辑时,出现如下问题:

提示:vim:command not found。vim命令未找到。

1、然后当你再执行apt-get install vim时,显示如下:

apt-get install vim

2、这时,我们需要去同步对应的安装源索引。才可进行安装

apt-get update

这个命令的作用是:同步 /etc/apt/sources.list 和 /etc/apt/sources.list.d 中列出的源的索引,这样才能获取到最新的软件包。

3、安装完成之后,然后进行安装vim

apt-get install vim

安装成功

如下的操作并不是在Confluence所在主机上进行,而是需要进入到Confluence容器中操作

docker exec -it confluence /bin/bash

1.复制并安装字体

在Confluence服务器上新建一个字体目录:

mkdir /usr/share/fonts/windowsfonts/

从window的C:\Windows\Fonts下复制所有字体文件到上面新建的目录,上一步操作可以理解成把宿主机的文件复制到容器指定目录下

或者这样,在容器的宿主机挂载目录下创建一个保存字体的文件夹,然后进入到容器中,把这个文件夹里的字体复制到上面新建的目录。

具体操作是把Windows上的fonts文件拷贝复制到宿主机的/usr/share/fonts/windowsfonts(没有这个目录去mkdir一个)

cd /usr/share/fonts/windowsfonts

docker cp windowsfonts/ confluence:/usr/share/fonts/windowsfonts

将字体库都复制到docker上

2.修改字体配置文件,新增上一步新建的目录

vim /etc/fonts/fonts.conf 
  <dir>/usr/share/fonts</dir>
  <dir>/usr/share/fonts/windowsfonts/</dir>  # 新增这行
  <dir>/usr/share/X11/fonts/Type1</dir> 
  <dir>/usr/share/X11/fonts/TTF</dir> 
  <dir>/usr/local/share/fonts</dir>
  <dir prefix="xdg">fonts</dir>
  <!-- the following element will be removed in the future -->
  <dir>~/.fonts</dir>

3.修改setenv.sh 文件

cp /opt/atlassian/confluence/bin/setenv.sh  /root/setenv.sh_20180114
vim /opt/atlassian/confluence/bin/setenv.sh
#搜索`CATALINA_OPTS`, 在原有行的基础上追加如下行:
CATALINA_OPTS="-Dconfluence.document.conversion.fontpath=/usr/share/fonts/windowsfonts/ ${CATALINA_OPTS}"


4.清空缓存文件(在容器中操作)

#清空文件
rm -rf /var/atlassian/application-data/confluence/viewfile/*
rm -rf /var/atlassian/application-data/confluence/thumbnails/*
rm -rf /var/atlassian/application-data/confluence/shared-home/dcl-document/*
rm -rf /var/atlassian/application-data/confluence/shared-home/dcl-document_hd/*
rm -rf /var/atlassian/application-data/confluence/shared-home/dcl-thumbnail/*

不清空缓存文件的话, confluence预览旧文件时还是会显示方框,只有新文件才会正常

所有操作完成以后需要重启confluence服务

docker restart confluence

目录
相关文章
|
关系型数据库 MySQL Java
|
NoSQL 关系型数据库 MySQL
Docker-compose封装mysql和redis并初始化数据
Docker-compose封装mysql和redis并初始化数据
420 0
|
5月前
|
Docker Python 容器
[docker]封装python的docker镜像
[docker]封装python的docker镜像
109 3
|
5月前
|
Ubuntu Go Docker
[go]封装go的docker镜像
[go]封装go的docker镜像
|
5月前
|
NoSQL Redis 数据安全/隐私保护
[redis]定制封装redis的docker镜像
[redis]定制封装redis的docker镜像
|
5月前
|
搜索推荐 关系型数据库 MySQL
[mysql]定制封装MySQL的docker镜像
[mysql]定制封装MySQL的docker镜像
154 0
|
安全 数据安全/隐私保护 Docker
Docker部署Confluence
如果您不想使用Docker Compose来部署Confluence,可以按照以下步骤手动部署: 1. 安装Docker: - 首先,请确保在服务器上安装了Docker。您可以根据操作系统类型,按照官方文档的指引进行安装。 2. 下载Confluence镜像: - 执行以下命令来拉取Confluence Docker镜像: ``` docker pull atlassian/confluence-server:latest ``` 3. 创建Confluence容器: - 运行以下命令创建一个名为`confluence`的Docker容器:
988 0
|
Kubernetes Cloud Native Java
Docker打包制作openoffice镜像(Dockerfile方式),并处理中文乱码
鉴于目前,云原生k8s的部署方式,越来越广泛。那我们也应该要使用docker的方式部署openoffice。 这个部署的第一步,就是要有一个docker镜像,那我们今天就来讲讲,如何制作openoffice的docker镜像包。 当然啦,openoffice的docker镜像包,我们可以从docker hub仓库,直接拉别人制作好的镜像包。
968 0
|
消息中间件 数据安全/隐私保护 Docker
使用Docker-compose来封装celery4.1+rabbitmq3.7服务,实现微服务架构
大家都知道,Celery是一个简单、灵活且可靠的,处理大量消息的分布式系统,在之前的一篇文章中:[python3.7+Tornado5.1.1+Celery3.1+Rabbitmq3.7.16实现异步队列任务](https://v3u.cn/a_id_99)详细阐述了如何进行安装部署和使用,但是过程太繁琐了,先得安装Erlang,再安装rabbitmq,然后各种配置,最后由于async关键字问题还得去修改三方库的源码,其实我们可以通过docker来将celery服务封装成镜像,如此一来,以后再使用celery或者别的系统依赖celery,我们只需要将该镜像以容器的形式跑服务即可,不需要繁琐的配
使用Docker-compose来封装celery4.1+rabbitmq3.7服务,实现微服务架构
|
前端开发 Java Go
简简单单将Java应用封装成Docker镜像
想必Docker这个词大家都不陌生,是一个非常优秀的虚拟化容器。
223 0

热门文章

最新文章