Andrew Fletcher published: 3 August 2022 2 minutes read
The following the CKAN source install docs from start to finish including solr. At this point, the site should load but you'll get solr errors. Make the following solr updates:
Go the the directory
/etc/systemd/system
Check if there is a directory jetty9.service.d. In my situation there was, but if it doesn't exist
sudo mkdir /etc/systemd/system/jetty9.service.d
Now review or add a file solr.conf with
[Service]
ReadWritePaths=/var/lib/solr
sudo nano /etc/solr/solr-jetty.xml and replace with
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">
<!-- Context configuration file for the Solr web application in Jetty -->
<Configure class="org.eclipse.jetty.webapp.WebAppContext">
<Set name="contextPath">/solr</Set>
<Set name="war">/usr/share/solr/web</Set>
<!-- Set the solr.solr.home system property -->
<Call name="setProperty" class="java.lang.System">
<Arg type="String">solr.solr.home</Arg>
<Arg type="String">/usr/share/solr</Arg>
</Call>
<!-- Enable symlinks -->
<!-- Disabled due to being deprecated
<Call name="addAliasCheck">
<Arg>
<New class="org.eclipse.jetty.server.handler.ContextHandler$ApproveSameSuffixAliases"/>
</Arg>
</Call>
-->
</Configure>
Restart jetty9
systemctl daemon-reload
sudo service jetty9 restart
If the command 'systemctl daemon-reload', requires a password and you don't have it try
sudo reboot
Finally you might need to edit the port from 8080 to 8983
/etc/jetty9/start.ini
And change
# What host to listen on (leave commented to listen on all interfaces)
#jetty.host=myhost.com
# HTTP port to listen on
# Enable authbind in /etc/default/jetty9 to use a port lower than 1024
jetty.port=8080
# HTTP idle timeout in milliseconds
http.timeout=30000
Changing jetty.port=8983, as follows
# HTTP port to listen on
# Enable authbind in /etc/default/jetty9 to use a port lower than 1024
jetty.port=8983
Related articles
Andrew Fletcher
•
06 Jan 2025
How to set up password authentication with Apache or Nginx on Ubuntu
Securing sensitive content is essential for protecting data integrity and user privacy. One effective way to implement security is by restricting access to specific directories or resources using either Apache or Nginx authentication tools. This provides a comprehensive reference for configuring...
Andrew Fletcher
•
21 Nov 2024
How to update your Ubuntu server efficiently
Maintaining your Ubuntu server is essential to ensure it operates smoothly, stays secure, and benefits from the latest features. Whether you're managing a server for personal projects or enterprise-level applications, regularly updating your system is a critical best practice. Here’s a...
Andrew Fletcher
•
14 Nov 2024
Best practices for business efficiency and security in managing user accounts in Ubuntu
In today’s digital landscape, effective management of user accounts is pivotal for maintaining both operational efficiency and security within an organisation. Ubuntu, a popular Linux distribution, offers robust tools and commands that enable administrators to oversee user accounts seamlessly. This...