Oxygen Feedback Enterprise Installation
Oxygen Feedback Docker Images
The Oxygen Feedback Enterprise distribution contains two docker images that run the following services, each in its own container:
- Oxygen Feedback Service
- Oxygen Text Search Service
The Docker images do not include an email server or database server. The recommended solution is to configure these services to run in separate containers. For more information see How to Set Up the Database for Oxygen Feedback Service, How to Set Up the Database for Oxygen Feedback Service and How to Set Up Email Notifications.
Prerequisite
Docker is required. For installation instructions, see the official Docker installation documentation.
Other Requirements
- Operating System
-
- Ubuntu 18 is recommended since it has been thoroughly tested
- Database
-
- PostgreSQL 11, 12
- MySQL 8.0
- CPU
-
- 2 virtual cores
- Memory
-
- 2 GB RAM
- Storage
-
- 20 GB disk storage
- Browser
-
- Google Chrome 78.0 [recommended for optimal performance and user experience]
- Mozilla Firefox 70.0
- Microsoft Edge 44
- macOS Safari 13
- Chrome for Android 78.0 [mobile devices]
- Safari Mobile iOS 13 [mobile devices]
Tip: For more details, see: Browser Compatibility.
Volumes
The Oxygen Feedback Service and Oxygen Text Search Service containers use host-mounted volumes to store persistent data:
Host path | Container path | Details |
---|---|---|
./oxygen-feedback-home | /oxygen-feedback-home/ | Oxygen Feedback configuration files and data. |
./logs | /oxygen-feedback-enterprise/logs | Log files. |
./lib/mysql-connector-java.jar | /oxygen-feedback-enterprise/lib/mysql-connector-java.jar | The MySQL JDBC driver (if you are using a MySQL DB instance for Oxygen Feedback). |
Host path | Container path | Details |
---|---|---|
./workspace | /oxygen-text-search-service/workspace/ | Oxygen Text Search Service workspace. |
./logs | /oxygen-text-search-service/logs | Log files. |
Installation
1. Download Kit
Download the Oxygen Feedback Enterprise installation kit.
2. Create the Feedback User
Sample code:
useradd feedback
3. Create Installation Directory
Create a directory and unzip the downloaded kit to this new directory. The application files are stored in this directory.
sudo mkdir /home/feedback/oxygen-feedback
sudo chown feedback: /home/feedback/oxygen-feedback
cd /home/feedback/oxygen-feedback
# Copy the downloaded archive here
unzip oxygen-feedback-enterprise.zip
export OXYGEN_FEEDBACK_INSTALL_DIR=/home/feedback/oxygen-feedback/oxygen-feedback-3.0
4. Load Docker Images
- Oxygen Feedback Service
- Oxygen Text Search Service
cd $OXYGEN_FEEDBACK_INSTALL_DIR/docker-images
sh load-docker-images.sh
5. Set Up License
- Go to
$OXYGEN_FEEDBACK_INSTALL_DIR/oxygen-feedback-home and create a
new file named
licensekey.txt.
cd $OXYGEN_FEEDBACK_INSTALL_DIR/oxygen-feedback-home touch licensekey.txt
- Copy and paste your license key inside the
licensekey.txt file using a text editor or
use:
cat >> licensekey.txt # Paste license # Press CTRL-D
6. Configure Oxygen Feedback
- How to Set Up the Database
- Set Up Application Properties
- Set Up Email Notifications
- How to Configure Connection to Oxygen Text Search Service
- [Optional] How to Configure an HTTP Proxy
- [Optional] How to Set up LDAP Authentication
- [Optional] How to Set up OAuth Authentication
- [Optional] How to Enable Google reCAPTCHA
- [Optional] How to Enable GZIP Compression in Oxygen Feedback
- [Optional] How to Run Oxygen Feedback Over HTTPS
7. Configure docker-compose.yml
- Oxygen Feedback Service
- Oxygen Text Search Service
version: '3'
services:
feedback-service:
image: oxygenxml/oxygen-feedback-enterprise:3.0
container_name: oxygen-feedback-enterprise
volumes:
# Home Dir
- type: bind
source: ./oxygen-feedback-home
target: /oxygen-feedback-home
- type: bind
source: ./logs
target: /oxygen-feedback-enterprise/logs
# Only if Oxygen Feedback is connected to a MySQL DB
- type: bind
source: ./lib/mysql-connector-java.jar
target: /oxygen-feedback-enterprise/lib/mysql-connector-java.jar
ports:
- "8081:8080"
- "8443:8443"
depends_on:
- text-search-service
text-search-service:
image: oxygenxml/oxygen-text-search-service:1.1
container_name: oxygen-text-search-service
ports:
- "8888:8888"
environment:
- server.port=8888
- spring.datasource.url=
- spring.datasource.username=
- spring.datasource.password=
- http.proxyHost=
- http.proxyPort=
- https.proxyHost=
- https.proxyPort=
- http.nonProxyHosts=localhost|oxygen-feedback-enterprise
- semantic.search.configuration.server.url=http://oxygen-feedback-enterprise:8081
volumes:
- type: bind
source: ./workspace
target: /oxygen-text-search-service/workspace/
- type: bind
source: ./logs
target: /oxygen-text-search-service/logs/
Oxygen Text Search Service environment variables:
- Database configuration - see How to Set Up the Database for Oxygen Text Search Service:
-
spring.datasource.url - The URL of the Oxygen Text Search Service database that has the following format:
jdbc:postgresql://<hostname>:<port>/<database>
For example:jdbc:postgresql://localhost:5432/otss
Note: Oxygen Text Search Service only supports PostgreSQL databases. - spring.datasource.username - The username used to access the database.
- spring.datasource.password - The password used to access the database.
-
- HTTP Proxy configuration - see How to Configure an HTTP Proxy for Oxygen Text Search Service:
- http.proxyHost - The hostname of the HTTP proxy server.
- http.proxyPort - The port number of the HTTP proxy server.
- https.proxyHost - The hostname of the HTTPS proxy server.
- https.proxyPort - The port number of the HTTPS proxy server
- https.nonProxyPort - The list of hosts that will be bypassed by the proxy server
semantic.search.configuration.server.url
property should be listed in
the http.nonProxyHosts
list.8. Start the Containers
cd $OXYGEN_FEEDBACK_INSTALL_DIR
docker-compose up -d