subsonic: better init

This commit is contained in:
Wonderfall 2016-09-17 01:43:22 +02:00
parent e6e161e4f7
commit d70b0c8de7
2 changed files with 11 additions and 10 deletions

View File

@ -2,24 +2,29 @@ FROM alpine:3.4
MAINTAINER Wonderfall <wonderfall@schrodinger.io> MAINTAINER Wonderfall <wonderfall@schrodinger.io>
ARG VERSION=6.0 ARG VERSION=6.0
ENV GID=991 UID=991 ENV GID=991 UID=991
WORKDIR /subsonic WORKDIR /subsonic
RUN echo "@commuedge https://nl.alpinelinux.org/alpine/edge/community" >> /etc/apk/repositories \ RUN echo "@community https://nl.alpinelinux.org/alpine/v3.4/community" >> /etc/apk/repositories \
&& apk -U add \ && apk -U add \
ffmpeg \ ffmpeg \
openjdk8-jre@commuedge \ su-exec \
tini@commuedge \ openjdk8-jre@community \
tini@community \
&& wget -qO- http://subsonic.org/download/subsonic-${VERSION}-standalone.tar.gz | tar zxf - \ && wget -qO- http://subsonic.org/download/subsonic-${VERSION}-standalone.tar.gz | tar zxf - \
&& rm -f /var/cache/apk/* && rm -f /var/cache/apk/*
COPY run.sh /usr/local/bin/run.sh COPY run.sh /usr/local/bin/run.sh
RUN chmod +x /usr/local/bin/run.sh RUN chmod +x /usr/local/bin/run.sh
EXPOSE 4040 EXPOSE 4040
VOLUME /data /musics /playlists /podcasts VOLUME /data /musics /playlists /podcasts
LABEL description "Open source media streamer" \ LABEL description "Open source media streamer" \
subsonic "Subsonic v$VERSION" subsonic "Subsonic v$VERSION"
CMD ["/sbin/tini","--","run.sh"] CMD ["run.sh"]

View File

@ -1,15 +1,12 @@
#!/bin/sh #!/bin/sh
addgroup -g ${GID} subsonic && adduser -h /subsonic -s /bin/sh -D -G subsonic -u ${UID} subsonic
mkdir -p /data/transcode mkdir -p /data/transcode
ln -s /usr/bin/ffmpeg /data/transcode/ffmpeg ln -s /usr/bin/ffmpeg /data/transcode/ffmpeg
ln -s /usr/bin/lame /data/transcode/lame ln -s /usr/bin/lame /data/transcode/lame
chown -R subsonic:subsonic /data /playlists /subsonic chown -R $UID:$GID /data /playlists /subsonic
sleep 7 # avoid 503 exec su-exec $UID:$GID tini -- \
exec su subsonic << EOF
java -Xmx200m \ java -Xmx200m \
-Dsubsonic.home=/data \ -Dsubsonic.home=/data \
-Dsubsonic.host=0.0.0.0 \ -Dsubsonic.host=0.0.0.0 \
@ -21,4 +18,3 @@ java -Xmx200m \
-Dsubsonic.defaultPlaylistFolder=/playlists \ -Dsubsonic.defaultPlaylistFolder=/playlists \
-Djava.awt.headless=true \ -Djava.awt.headless=true \
-jar subsonic-booter-jar-with-dependencies.jar -jar subsonic-booter-jar-with-dependencies.jar
EOF