From 453443bcae5efd1eb0d4a636e613a3c40b9a6409 Mon Sep 17 00:00:00 2001 From: dave Date: Sat, 13 Dec 2014 18:17:38 -0800 Subject: [PATCH] More stuff --- Dockerfile | 98 +++++++++++++++++++++++++++++++----------------- icecast.xml | 2 +- start | 3 ++ supervisord.conf | 12 +++++- 4 files changed, 78 insertions(+), 37 deletions(-) create mode 100644 start diff --git a/Dockerfile b/Dockerfile index 0f42fa3..7d16b26 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,66 +1,96 @@ FROM ubuntu:14.04 MAINTAINER Dave P + # Create rduser (password is rduser) -RUN useradd --groups sudo,audio rduser -RUN echo "rduser:rduser" | chpasswd +RUN useradd --create-home --groups sudo,audio rduser ; \ + echo "rduser:rduser" | chpasswd -# Install prereqs for edcast compile -RUN apt-get update -RUN apt-get -y install debconf-utils libjack0 libjack-dev libflac-dev libogg-dev libvorbis-dev libmad0-dev libmp3lame-dev g++ make wget -# Download libfaac manually (copyright?) -RUN wget http://launchpadlibrarian.net/157472510/libfaac-dev_1.28-6_amd64.deb -RUN wget http://launchpadlibrarian.net/157472509/libfaac0_1.28-6_amd64.deb - -# Install libfaac -RUN dpkg -i libfaac0_1.28-6_amd64.deb -RUN dpkg -i libfaac-dev_1.28-6_amd64.deb +# Install edcast_jack prereqs +# Download & install libfaac manually (copyright?) +RUN apt-get update ; \ + apt-get -y install debconf-utils libjack0 libjack-dev libflac-dev libogg-dev libvorbis-dev libmad0-dev libmp3lame-dev g++ make wget ; \ + wget http://launchpadlibrarian.net/157472510/libfaac-dev_1.28-6_amd64.deb ; \ + wget http://launchpadlibrarian.net/157472509/libfaac0_1.28-6_amd64.deb ; \ + dpkg -i libfaac0_1.28-6_amd64.deb ; \ + dpkg -i libfaac-dev_1.28-6_amd64.deb # Compile & install edcast COPY edcast-jack-3.1.7.tar.gz /tmp/ -RUN tar zxvf /tmp/edcast-jack-3.1.7.tar.gz -RUN cd edcast-jack-3.1.7/ ; ./configure -RUN cd edcast-jack-3.1.7/ ; make -RUN cd edcast-jack-3.1.7/ ; make install +RUN tar zxvf /tmp/edcast-jack-3.1.7.tar.gz ; \ + cd edcast-jack-3.1.7/ ; ./configure ; \ + cd edcast-jack-3.1.7/ ; make ; \ + cd edcast-jack-3.1.7/ ; make install + # Configure icecast -RUN echo "icecast2 icecast2/icecast-setup boolean false" | debconf-set-selections && \ +RUN echo "icecast2 icecast2/icecast-setup boolean false" | debconf-set-selections ; \ apt-get -y install icecast2 COPY icecast /etc/default/icecast -COPY icecast.xml /etc/default/icecast.xml +COPY icecast.xml /etc/icecast2/icecast.xml + +# Install mysql server +RUN echo "mysql-server-5.5 mysql-server/root_password_again password root" | debconf-set-selections ; \ + echo "mysql-server-5.5 mysql-server/root_password password root" | debconf-set-selections ; \ + apt-get -y install mysql-server mysql-client + # Install tryphon repos RUN wget -q -O - http://debian.tryphon.eu/release.asc | apt-key add - COPY tryphon.list /etc/apt/sources.list.d/tryphon.list -# Install rivendell and other goodies -RUN apt-get update -RUN echo "mysql-server-5.5 mysql-server/root_password_again password root" | debconf-set-selections && \ - echo "mysql-server-5.5 mysql-server/root_password password root" | debconf-set-selections && \ - echo "rivendell-server rivendell-server/debconfenable boolean false" | debconf-set-selections && \ - apt-get -y install rivendell rivendell-server rivendell-doc mysql-server jack-rack jamin jackd + +# Install Rivendell and other audio goodies +RUN apt-get update ; \ + echo "mysql-server-5.5 mysql-server/root_password_again password root" | debconf-set-selections ; \ + echo "mysql-server-5.5 mysql-server/root_password password root" | debconf-set-selections ; \ + echo "rivendell-server rivendell-server/debconfenable boolean false" | debconf-set-selections ; \ + apt-get -y install rivendell rivendell-server rivendell-doc mysql-server jack-rack jamin jackd qjackctl COPY rd.conf /etc/rd.conf -# Alsa (is this necessary?) + +# Install Alsa (is this necessary?) RUN apt-get -y install alsa-base alsa-utils -# VNC Server / X desktop -RUN apt-get -y install icewm -RUN apt-get -y install tightvncserver - - - - - - + +# Install VNC Server / X desktop software +RUN apt-get -y install icewm xterm ; \ + apt-get -y install tightvncserver ; \ + su -c "mkdir /home/rduser/.vnc" rduser ; \ + su -c "echo 'rduser' | vncpasswd -f > /home/rduser/.vnc/passwd" rduser ; \ + chmod 700 /home/rduser/.vnc ; \ + chmod 600 /home/rduser/.vnc/passwd + + +# Install SSH server +RUN mkdir /var/run/sshd ; \ + apt-get -y install openssh-server + + +# Install supervisor & start script +RUN apt-get -y install supervisor +COPY supervisord.conf /etc/supervisor/conf.d/supervisord.conf +COPY start /start +RUN chmod +x /start + + +# Expose ssh, vnc, icecast +EXPOSE 22 +EXPOSE 5900 +EXPOSE 8000 + + +# Set boot command +CMD /start +vncserver -geometry 1280x800 :0 diff --git a/icecast.xml b/icecast.xml index 3b144ef..6ffd5a4 100644 --- a/icecast.xml +++ b/icecast.xml @@ -34,7 +34,7 @@ admin - admin + rduser