目录[-]

在物联网软件通讯设计中,准备采用xmpp协议,经过对比评测准备采用openfire搭建服务端,在客户端采用gloox框架,在此对服务端配置做详细的记录。


1、安装docker

1、确认内核版本支持docker且内核版本高于3.10

 uname -r

2、安装必要的系统工具:

sudo yum install -y yum-utils device-mapper-persistent-data lvm2 

3、添加软件源

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

4、更新yum缓存

sudo yum makecache fast 

5、安装Docker-ce

 sudo yum -y install docker-ce

6.    启动docker 后台服务

sudo systemctl start docker

7.    测试运行docker

docker run hello-world 

8.    进入容器

docker exec -it id /bin/bash

如果步骤七成功运行,则证明docker已经在机器上成功安装,则可以继续下载并运行镜像。


2、下载并运行openfire镜像

1、下载open-fire镜像

docker pull sameersbn/openfire:3.10.3-19

2、查看存在的docker镜像

docker image ls

3、运行docker镜像

docker run -P sameersbn/openfire:3.10.3-19

4、在后台运行docker镜像

常规的docker运行方式,在关闭终端后docker也即停止运行,如果需要保持docker在后台一直运行,需要增加`-i`和`-t`标注。

方案:

docker run -i -t sameersbn/openfire:3.10.3-19

3、配置docker中的openfire

1、端口映射

应用运行在内容内,如果要让外部也可以访问这些应用,需要将服务器端口号映射到docker容器的端口号。docker 可以通过 -P 或 -p 来进行端口映射,区别在于采用 -P 标记时,docker会随机映射服务器端口号到内部容器端口号。采用 -p 标记时,可以指定要映射的IP和端口号,但是一个端口号只能绑定在一个容器上。

docker run -itd -p 3478:3478 -p 3479:3479 -p 5222:5222 -p 5223:5223 -p 5229:5229 -p 7070:7070 -p 7443:7443 -p 7777:7777 -p 9090:9090 -p 9091:9091 sameersbn/openfire --name xmpp.test.com


2、查看端口映射

docker ps 

4、登陆openfire管理台

1、确认服务器ip地址

ifconfig

2、登陆管理台

2.1、如果是在本地登陆,则直接在浏览器中使用127.0.0.1加端口号登陆即可

127.0.0.1:32769

2.2、如果是远端登陆,则使用服务器地址加端口号即可

47.100.100.100:32769