SmartPhoneLover Posted November 30, 2021 Share Posted November 30, 2021 (edited) This docker template was created based on an already available official docker image WebSite: https://www.openkm.com/es/ Forum: https://forum.openkm.com/ User Guide: https://docs.openkm.com/kcenter/view/okm-6.3-com/administration-guide.html Documentation: https://docs.openkm.com/kcenter/view/okm-6.3-com/using-docker.html DockerHub: https://hub.docker.com/r/openkm/openkm-ce GitHub: https://github.com/openkm/document-management-system My Repository: https://github.com/SmartPhoneLover/unraid-docker-templates DESCRIPTION This is a docker template for OpenKM Community Edition, an Open Source Document Management System (DMS). It provides a web interface for managing nonspecific files. OpenKM is a management solution that allows businesses to control the production, storage, management and distribution of electronic documents, yielding greater effectiveness and the ability to reuse information and to control the flow of the documents. The CE version of OpenKM doesn't have any trial period or something similar. It's the Open Source version (free) developed and maintained by the public community, but with the lack of some of the features that are only available in the Cloud or Professional editions (paid). But, with some little tricks and programming skills, the user can modify its source code (public). Here you can see a comparision table of the different versions of OpenKM: https://www.openkm.us/en/comparison-of-versions.html NOTES • The default credentials are: okmAdmin/admin (Administrator). • Run the following cmds before building the container: 'mkdir /mnt/user/appdata/openkm-ce', 'curl https://raw.githubusercontent.com/SmartPhoneLover/unraid-docker-templates/main/templates/dependencies/openkm-ce/OpenKM.cfg --output /mnt/user/appdata/openkm-ce/OpenKM.cfg', 'curl https://raw.githubusercontent.com/SmartPhoneLover/unraid-docker-templates/main/templates/dependencies/openkm-ce/server.xml --output /mnt/user/appdata/openkm-ce/server.xml'. • It's highly recommended to configure a static docker tag, as manual backup/restoration is required when upgrading to a newer version. • To use OpenKM in dev mode, leave the template as it is. No configuration is required (embedded db used). • Make sure to read the official doc carefully before installing it for production. Specially, database configuration and data migration (backup/restore) sections. • Both, 'OpenKM.cfg' and 'server.xml' files, MUST be present and properly configured before creating the container, if you decide to go ahead by this way. • The 'Repository (data)' is the storage location for all the data (docs) uploaded through the platform. • The '/HOST_SWAP' directory is mapped to the internal storage of the container to allow communication between the container and the host. It will be usefull in case of exporting repo (zip) or any file from within the platform, to the host. VERSION 1.1 (2022-07-01) If you are going to report a bug or request something to be added/modified, please, take into consideration that I will only be able to apply changes for the work I own only. For example, if I create a docker template for an already existing docker image (not created by me), I won't be able to do more for that image than forward your report or request to the owner of the project. Edited July 1, 2022 by SmartPhoneLover 1 Quote Link to comment
rollerpalmer Posted February 14, 2022 Share Posted February 14, 2022 Could the openKM.cg and server.xml be the same as shown in the documentation page of openKM https://docs.openkm.com/kcenter/view/okm-6.3-com/using-docker.html ? Also, in order to connect an external database. In this unraid template, Is it possible to add those variables below to connect a MariaDB DB? - MYSQL_DATABASE=okmdb - MYSQL_USER=openkm - MYSQL_PASSWORD=openkm - MYSQL_ROOT_PASSWORD=openkm Thank you in advance. Quote Link to comment
SmartPhoneLover Posted July 1, 2022 Author Share Posted July 1, 2022 (edited) CHANGELOG v1.1 (2022-07-01) - New: Added TZ (timezone) variable. - Fix: Not being able to start Catalina.sh and/or error connecting to DB. - Other: Switched from static to latest tag. (be careful when upgrading) - Other: 'OpenKM.cfg' and 'server.xml' files updated with more detailed information. - Other: Other minor changes on the template. Edited July 1, 2022 by SmartPhoneLover Quote Link to comment
SmartPhoneLover Posted July 1, 2022 Author Share Posted July 1, 2022 On 2/14/2022 at 9:06 PM, rollerpalmer said: Could the openKM.cg and server.xml be the same as shown in the documentation page of openKM https://docs.openkm.com/kcenter/view/okm-6.3-com/using-docker.html ? Also, in order to connect an external database. In this unraid template, Is it possible to add those variables below to connect a MariaDB DB? - MYSQL_DATABASE=okmdb - MYSQL_USER=openkm - MYSQL_PASSWORD=openkm - MYSQL_ROOT_PASSWORD=openkm Thank you in advance. Sorry for the late reply. You have the following variables available: DATABASE_DRIVER, DATABASE_URL, DATABASE_USER, DATABASE_PASSWORD and DATABASE_DIALECT. https://docs.openkm.com/kcenter/view/okm-7.1/using-docker.html I didn't add them to the template because... A: The 'hibernate.hbm2ddl' property needs to be changed manually to 'update' when upgrading OpenKM. So, it will be easier if you have your own file browser (ie.: FileBrowser), than installing 'nano' inside the container. Just from my point of view. B: I don't have any problem on adding all possible variations of DATABASE_DRIVER, DATABASE_URL and DATABASE_DIALECT to be selectable from inside the template, but the user will have to edit the string manually (copy, paste, edit). So, I think it's more convenient to include that on both config files, as comments. Quote Link to comment
kilobit Posted October 18, 2022 Share Posted October 18, 2022 (edited) I dont get it... its not working on my end. Base install, I have created a database and ran the commands in your instructions. upon start I get this error and no webpage. I am assuming I can enter the database info via the web gui? am I doing something wrong?? [1;33m# This file was edited by SmartPhoneLover, for the OpenKM-CE docker template for unRAID.[0m [1;33m# The original 'OpenKM.cfg' file is available on 'https://docs.openkm.com/kcenter/view/okm-6.3-com/using-docker.html'.[0m [1;33m[0m [1;33m# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -[0m [1;33m# OpenKM Hibernate configuration values[0m [1;33m# It acts as a 'bridge' between the Java JDBC types and SQL types.[0m [1;33m# Uncomment the corresponding line.[0m [1;33mhibernate.dialect=org.hibernate.dialect.H2Dialect[0m [1;33m#hibernate.dialect=org.hibernate.dialect.HSQLDialect[0m [1;33m#hibernate.dialect=org.hibernate.dialect.Oracle10gDialect[0m [1;33m#hibernate.dialect=org.hibernate.dialect.SQLServerDialect[0m [1;33m#hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect[0m [1;33m#hibernate.dialect=org.hibernate.dialect.MySQL5Dialect[0m [1;33m#hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect[0m [1;33m[0m [1;33m# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -[0m [1;33m# Configuration property used on Hibernate database schema generation process.[0m [1;33m# Posible values: create (new instance), update (upgrade instance), none (no changes done).[0m [1;33mhibernate.hbm2ddl=create[0m [1;33m[0m [1;33m# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -[0m [1;33m# Other OpenKM settings.[0m [1;33m# Logback configuration file[0m [1;33mlogback.config=logback.xml[0m [1;33m[0m [1;33m# Visit 'https://www.openkm.com/wiki/index.php/Application_configuration' to know more property settings you can use to fully customize OpenKM. Some of these options can also be configured within OpenKM too (Administrator account).[0m 2022-10-18 16:57:03,666 CRIT Supervisor is running as root. Privileges were not dropped because no user is specified in the config file. If you intend to run as root, you can set user=root in the config file to avoid this message. 2022-10-18 16:57:03,666 INFO Included extra file "/etc/supervisor/conf.d/custom.conf" during parsing 2022-10-18 16:57:03,671 INFO RPC interface 'supervisor' initialized 2022-10-18 16:57:03,671 CRIT Server 'inet_http_server' running without any HTTP authentication checking 2022-10-18 16:57:03,671 INFO RPC interface 'supervisor' initialized 2022-10-18 16:57:03,671 CRIT Server 'unix_http_server' running without any HTTP authentication checking 2022-10-18 16:57:03,671 INFO supervisord started with pid 1 2022-10-18 16:57:04,673 INFO spawned: 'xvfb' with pid 10 2022-10-18 16:57:04,674 INFO spawned: 'tomcat' with pid 11 2022-10-18 16:57:05,545 INFO exited: tomcat (exit status 1; not expected) 2022-10-18 16:57:06,546 INFO success: xvfb entered RUNNING state, process has stayed up for > than 1 seconds (startsecs) 2022-10-18 16:57:06,547 INFO spawned: 'tomcat' with pid 61 2022-10-18 16:57:06,712 INFO exited: tomcat (exit status 1; not expected) 2022-10-18 16:57:08,715 INFO spawned: 'tomcat' with pid 109 2022-10-18 16:57:08,880 INFO exited: tomcat (exit status 1; not expected) 2022-10-18 16:57:11,884 INFO spawned: 'tomcat' with pid 157 2022-10-18 16:57:12,043 INFO exited: tomcat (exit status 1; not expected) 2022-10-18 16:57:13,044 INFO gave up: tomcat entered FATAL state, too many start retries too quickly Edited October 18, 2022 by kilobit Quote Link to comment
SmartPhoneLover Posted October 18, 2022 Author Share Posted October 18, 2022 (edited) 24 minutes ago, kilobit said: I dont get it... its not working on my end. Base install, I have created a database and ran the commands in your instructions. upon start I get this error and no webpage. I am assuming I can enter the database info via the web gui? am I doing something wrong?? Are you saying that you executed the lines from the 'OpenKM.cfg' file witin the container's terminal? If yes, wrong. These are config files, not lines to be executed from the terminal window. I added a note telling the user to configure the files according to your setup: - Both, 'OpenKM.cfg' and 'server.xml' files, MUST be present and properly configured before creating the container, if you decide to go ahead by this way. So, after downloading the files to the corresponding location (this is done by the 'curl' cmd), and also configuring the DB container/server, you will have to open both files and adjust them according to your setup. Check this page as an example: https://docs.openkm.com/kcenter/view/okm-6.3-com/using-docker.html There's no code to run from terminal, apart from configuring the files. But, you can use the terminal to install dependices and make changes to OpenKM, but this is another discussion. Edited October 18, 2022 by SmartPhoneLover Quote Link to comment
kilobit Posted October 18, 2022 Share Posted October 18, 2022 (edited) Thanks for your fast reply. First I created the directory and used curl to get both files into the newly created directory (copy and pasted your commands into my appdatafolder) File Mappings: /opt/tomcat/conf/server.xml --> /mnt/user/appdata/openkm-ce/server.xml /opt/tomcat/repository --> /mnt/user/appdata/openkm-ce/repository /HOST_SWAP --> /mnt/user/appdata/openkm-ce/swap/ /opt/tomcat/OpenKM.cfg --> /mnt/user/appdata/openkm-ce/OpenKM.cfg Then installed the docker on unraid and tried to go into webui.. but nothing is there and I posted the logs. I havent used any custom commands or anything and I have verified both files were downloaded... Im going to botch this install and try again, I will post back. **No I didnt execute anything inside the docker console. Edited October 18, 2022 by kilobit Quote Link to comment
kilobit Posted October 18, 2022 Share Posted October 18, 2022 reinstalled and thought it might be a permissions issue with those 2 downloaded files being root:root. Logged into the console and checked access and it is visable so looked into the internal logs and see this: 19-Oct-2022 00:33:04.024 SEVERE [main] org.apache.tomcat.util.digester.Digester.fatalError Parse Fatal Error at line 4 column 6: The processing instruction target matching "[xX][mM][lL]" is not allowed. org.xml.sax.SAXParseException; systemId: file:/opt/tomcat/conf/server.xml; lineNumber: 4; columnNumber: 6; The processing instruction target matching "[xX][mM][lL]" is not allowed. Not seeing anything strange about the server.xml file so not sure whats up with this. Quote Link to comment
eav86 Posted November 23, 2022 Share Posted November 23, 2022 Sadly i got the same issue as kilobit, however i created the files beforehand and everything thats. but got the same log with "tomcat spawned, exited" etc. i thought the H2 database was automaticly installed and need no further config. or did i miss something there ? Quote Link to comment
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.