跳到主要内容
版本:v7

应用部署

春松客服适应各种部署方式,本文使用 Docker 和 Docker compose 的方式,适合体验、开发、测试和上线春松客服,此种方式简单快捷。

重要提示:部署应用后,必须按照《系统初始化》initdoc文档进行系统初始化,再使用,不做初始化,会造成坐席无法分配等问题。

准备条件

前提

项目说明
操作系统Linux (CentOS 7.x, Ubuntu 16.04+ 等),推荐使用 Ubuntu LTS
Docker 版本Docker version 1.13.x 及以上
Docker Compose 版本version 1.23.x 及以上
防火墙端口8035, 8036
其他软件git
内存开发测试 >= 8GB | 生产环境 >= 16GB
CPU 颗数开发测试 >= 2 | 生产环境 >= 4
硬盘>= 20GB

安全组

如果使用云主机,要考虑到不同云服务提供商的安全组设置,允许 8035 和 8036 端口下行。

克隆代码

git clone -b master https://github.com/cskefu/cskefu.git cskefu
cd cskefu
cp sample.env .env # 使用文本编辑器打开 .env 文件,并按照需求需改配置

以上命令中,master 代表春松客服源码仓库的 master 分支,目前是 cskefu/cskefu 的 v7 版本代码,分支说明。

分支说明目前对应版本
master当前稳定版本v7.x
develop当前开发版本v8.x

克隆代码时,按照需要指定分支信息;本部署文档针对春松客服 v7.x 版本。

配置项

以下为部署相关的环境变量,可以在 .env 中覆盖默认值。

KEY默认值说明
COMPOSE_FILEdocker-compose.yml服务编排描述文件,保持默认值
COMPOSE_PROJECT_NAMEcskefu服务实例的容器前缀,可以用其它字符串
MYSQL_PORT8037MySQL 数据库映射到宿主机器使用的端口
REDIS_PORT8041Redis 映射到宿主机器的端口
ES_PORT18039ElasticSearch RestAPI 映射到宿主机器的端口
ES_PORT28040ElasticSearch 服务发现端口映射到宿主机器的端口
CC_WEB_PORT8035春松客服 Web 服务地址映射到宿主机器的端口
CC_SOCKET_PORT8036春松客服 SocketIO 服务映射到宿主机器的端口
ACTIVEMQ_PORT18051ActiveMQ 端口
ACTIVEMQ_PORT28052ActiveMQ 端口
ACTIVEMQ_PORT28053ActiveMQ 端口
DB_PASSWD123456数据库密码,设置到 MySQL, Redis, ActiveMQ
LOG_LEVELINFO日志级别,可使用 WARN, ERROR, INFO, DEBUG

以上配置中,端口的各默认值需要保证在宿主机器上还没有被占用;数据库的密码尽量复杂;CC_WEB_PORT 和 CC_SOCKET_PORT 这两个值尽量不要变更;生产环境下 LOG_LEVEL 使用至少 WARN 的级别

以下为一些业务功能相关配置的环境变量:

KEY默认值说明
TONGJI_BAIDU_SITEKEYplaceholder使用百度统计 记录和查看页面访问情况,默认不记录
EXTRAS_LOGIN_BANNERoff登录页上方展示通知的内容,默认(off)不展示
EXTRAS_LOGIN_CHATBOXoff登录页支持加入一个春松客服网页渠道聊天按钮,比如 https://oh-my.cskefu.com/im/xxx.html,默认(off)不展示

管理命令

启动服务

cd cskefu                        # 进入下载后的文件夹
docker-compose pull # 拉取镜像
docker-compose up -d contact-center # 启动服务

查看服务状态

docker-compose ps

查看服务日志

docker-compose logs -f contact-center

登陆系统

在日志中,查看到如下类似信息,代表服务已经启动。

INFO  c.c.socketio.SocketIOServer - SocketIO server started at port: 8036 [nioEventLoopGroup-2-1]
INFO com.chatopera.cc.Application - Started Application in 35.319 seconds (JVM running for 42.876) [main]

然后,从浏览器打开 http://YOUR_IP:CC_WEB_PORT/ 访问服务。 默认管理员账号: admin 密码: admin1234

关闭服务

docker-compose down

重启服务

docker-compose restart

无网络访问条件下部署

利用其他机器

首先,找一个网络条件好的电脑或服务器,安装 docker。

下载镜像

然后,在新的电脑下载镜像。

方法,执行命令:

docker pull IMAGE_NAME

IMAGE_NAME 参考 docker-compose.yml 中各服务的 image, 比如: docker pull cskefu/contact-center:develop

春松客服包含多个 image。

导出镜像

下载好 image 后,导出 image,将所有 image 使用下面命令导出为 tgz 文件

docker save cskefu/contact-center:develop > cc.docker.tgz

上传镜像

将所有导出的 image tgz 文件上传到目标部署的服务器 即网络条件不好的机器,比如用 FTP 工具或 SCP 命令。

安装镜像

上传到目标机器后,安装镜像 docker load < cc.docker.tgz

安装成功后,会提示。

启动服务

启动春松客服,参考本章以上内容。

cd cskefu # 源文件下载地址
docker-compose up -d contact-center

下一步