Optimize database on startup
This commit is contained in:
parent
9a3ec36336
commit
ef6353aa60
17
Dockerfile
17
Dockerfile
|
@ -1,18 +1,21 @@
|
||||||
FROM ubuntu:trusty
|
FROM ubuntu:bionic
|
||||||
|
|
||||||
EXPOSE 4050
|
EXPOSE 4050
|
||||||
EXPOSE 4051
|
EXPOSE 4051
|
||||||
|
|
||||||
RUN apt-get update && \
|
RUN apt-get update && \
|
||||||
apt-get install -y wget && \
|
apt-get install -y wget && \
|
||||||
apt-get install -y openjdk-7-jre-headless wget supervisor && \
|
apt-get install -y openjdk-8-jre-headless wget sudo
|
||||||
wget -O /tmp/subsonic.deb https://s3-eu-west-1.amazonaws.com/subsonic-public/download/subsonic-6.1.beta2.deb && \
|
|
||||||
|
RUN wget -qO /tmp/subsonic.deb https://s3-eu-west-1.amazonaws.com/subsonic-public/download/subsonic-6.1.beta2.deb && \
|
||||||
dpkg -i /tmp/subsonic.deb && \
|
dpkg -i /tmp/subsonic.deb && \
|
||||||
useradd subsonic && \
|
useradd subsonic && \
|
||||||
mkdir /var/subsonic/lucene2 && \
|
mkdir /var/subsonic/lucene2 && \
|
||||||
chown -R subsonic:subsonic /var/subsonic
|
chown -R subsonic:subsonic /var/subsonic && \
|
||||||
|
mkdir /tools && \
|
||||||
|
wget -qO /tools/hsqldb-1.8.0.5.jar http://repo1.maven.org/maven2/hsqldb/hsqldb/1.8.0.5/hsqldb-1.8.0.5.jar && \
|
||||||
|
wget -qO /tools/sqltool-2.0.0.jar http://repo1.maven.org/maven2/org/hsqldb/sqltool/2.0.0/sqltool-2.0.0.jar
|
||||||
|
|
||||||
ADD supervisor.conf /etc/supervisor/conf.d/supervisor.conf
|
ADD start /start
|
||||||
ADD subsonic.conf /etc/supervisor/conf.d/subsonic.conf
|
ENTRYPOINT ["/start"]
|
||||||
|
|
||||||
ENTRYPOINT ["supervisord"]
|
|
||||||
|
|
|
@ -0,0 +1,16 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
set -ex
|
||||||
|
|
||||||
|
# Run database optimization (if the db already exists)
|
||||||
|
if [ -f /var/subsonic/db/subsonic.properties ] ; then
|
||||||
|
cd /var/subsonic/db/
|
||||||
|
sudo -Hu subsonic java -cp :/tools/sqltool-2.0.0.jar:/tools/hsqldb-1.8.0.5.jar org.hsqldb.cmdline.SqlTool --inlineRc=url=jdbc:hsqldb:file:subsonic --driver org.hsqldb.jdbcDriver --sql "SHUTDOWN COMPACT;"
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
||||||
|
# Start the main service
|
||||||
|
cd /usr/share/subsonic
|
||||||
|
chown -R subsonic:subsonic /var/subsonic
|
||||||
|
sudo -Hu subsonic java -Xmx256m -Dsubsonic.home=/var/subsonic -Dsubsonic.host=0.0.0.0 -Dsubsonic.port=4051 -Dsubsonic.httpsPort=4050 -Dsubsonic.contextPath=/ -Dsubsonic.defaultMusicFolder=/var/music -Dsubsonic.defaultPodcastFolder=/var/music/Podcast -Dsubsonic.defaultPlaylistFolder=/var/playlists -Djava.awt.headless=true -verbose:gc -jar subsonic-booter-jar-with-dependencies.jar
|
||||||
|
|
|
@ -1,5 +0,0 @@
|
||||||
[program:subsonic]
|
|
||||||
command=java -Xmx256m -Dsubsonic.home=/var/subsonic -Dsubsonic.host=0.0.0.0 -Dsubsonic.port=4051 -Dsubsonic.httpsPort=4050 -Dsubsonic.contextPath=/ -Dsubsonic.defaultMusicFolder=/var/music -Dsubsonic.defaultPodcastFolder=/var/music/Podcast -Dsubsonic.defaultPlaylistFolder=/var/playlists -Djava.awt.headless=true -verbose:gc -jar subsonic-booter-jar-with-dependencies.jar
|
|
||||||
autorestart=true
|
|
||||||
user=subsonic
|
|
||||||
directory=/usr/share/subsonic
|
|
|
@ -1,2 +0,0 @@
|
||||||
[supervisord]
|
|
||||||
nodaemon=true
|
|
Loading…
Reference in New Issue