Openfire version: 4.6.4
openfire-docker is a docker image based on Ubuntu 18.04 that implements Openfire from Ignite Realtime.
You only need a stable version of docker docker
.
To begin updating the system if necessary:
sudo apt-get update && sudo apt-get upgrade
Install Docker at the latest stable version:
sudo apt-get install docker-ce docker-ce-cli containerd.io
To start download or build the "openfire-docker
" image (the recommended method is to do a pull request to Dockerhub).
- Methode 1 : Pull from Dockerhub
docker pull endmove/openfire:latest
- Methode 2 : build from Github
docker build -t endmove/openfire:latest github.com/EndMove/openfire-docker
Create the Docker container, open the ports and connect the volumes.
docker create -i -t \
--name=openfire \
--publish 9090:9090 \
--publish 5222:5222 \
--publish 7777:7777 \
--volume /home/openfire/data:/var/lib/openfire \
--restart unless-stopped \
endmove/openfire:latest
Command to start the container
docker start openfire
Command to stop the container
docker stop openfire
Command to remove openfire
docker rm -f openfire
This Openfire installation script provides two important volume locations to track and keep the installation up to date and in a safe place.
To access the configuration files and store the users, data and plugins (during an update for example) it is important to store these files outside the container in a safe and secure space.
# in container location:
/var/lib/openfire
# recommended docker volume:
--volume /home/openfire:/var/lib/openfire
To benefit from error tracking it is recommended to keep an access to the folder containing all log files of Openfire.
# in container location:
/var/log/openfire
# recommended docker volume:
--volume /home/openfire/log:/var/log/openfire
Try to use the 'Certificate Manager Plugin', automatically installed during installation.
To benefit from the SSL certificate of your server under Openfire place it under the name
ssl.pem
in this volume. Note: all communications between Openfire and users except those from the web interface ports: 9091 & 9090 are managed and encrypted using RSA, by Openfire automatically.
# in container location:
/usr/share/openfire/ssl
# recommended docker volume:
--volume /home/certificate/cert:/usr/share/openfire/ssl:ro
This is an example of the contents of the file /home/certificate/cert
.
└── ssl.pem
When an update of Openfire is available and I updated the repository you just have to remove and install again the container to migrate to the new version.
WARNING: this requires that you store the Openfire data as recommended above.
- Log file available out of container.
- Configuration file, security and embedded-database available out of the container.
- Makes available all the ports available in Openfire version 4.6.2.
- Includes certificate manager plugin with hotdeploy.
- Allows the import of SSL certificates that are external to the container (By using certificate manager).