diff options
author | Ben Sturmfels <ben@sturm.com.au> | 2019-11-19 12:53:48 +1100 |
---|---|---|
committer | Ben Sturmfels <ben@sturm.com.au> | 2019-11-19 12:53:48 +1100 |
commit | 868918690b448ecae0fd464b1787f8eaa9ce77df (patch) | |
tree | 09497f4066d28be9cce497d70425cbc498ef9cf5 /Dockerfile-python2 | |
parent | 48208c278c62781bd6d9acd9540e364550506162 (diff) | |
download | mediagoblin-868918690b448ecae0fd464b1787f8eaa9ce77df.tar.lz mediagoblin-868918690b448ecae0fd464b1787f8eaa9ce77df.tar.xz mediagoblin-868918690b448ecae0fd464b1787f8eaa9ce77df.zip |
Document and improve Docker handling of mounted source code directory.
Diffstat (limited to 'Dockerfile-python2')
-rw-r--r-- | Dockerfile-python2 | 41 |
1 files changed, 8 insertions, 33 deletions
diff --git a/Dockerfile-python2 b/Dockerfile-python2 index 849ca8ae..82e91bc8 100644 --- a/Dockerfile-python2 +++ b/Dockerfile-python2 @@ -1,16 +1,9 @@ # A Dockerfile for MediaGoblin hacking. - -# docker build -t mediagoblin-python2 -f Dockerfile-python2 . -# docker build -t mediagoblin -# docker run -it -p 6543:6543 -v ~/ws/mediagoblin/mediagoblin:/opt/mediagoblin/mediagoblin -v ~/ws/mediagoblin/extlib:/opt/mediagoblin/extlib mediagoblin-python2 -# docker stop [container-name/id] -# docker start [container-name/id] -# docker kill [container-name/id] +# +# See Dockerfile-debian-python3-sqlite for documentation. FROM debian:buster -# Install bootstrap and configure dependencies. Currently requires virtualenv -# rather than the more modern python3-venv (should be fixed). RUN apt-get update && apt-get install -y \ automake \ git \ @@ -19,7 +12,6 @@ npm \ python-dev \ virtualenv -# Install make and runtime dependencies. RUN apt-get install -y \ python-alembic \ python-celery \ @@ -35,7 +27,6 @@ python-six \ python-sphinx \ python-webtest -# Install audio dependencies. RUN apt-get install -y \ gstreamer1.0-libav \ gstreamer1.0-plugins-bad \ @@ -47,56 +38,40 @@ python-gst-1.0 \ python-numpy \ python-scipy -# Install video dependencies. RUN apt-get install -y \ gir1.2-gst-plugins-base-1.0 \ gir1.2-gstreamer-1.0 \ gstreamer1.0-tools \ python-gi -# Create working directory. RUN mkdir /opt/mediagoblin RUN chown -R www-data:www-data /opt/mediagoblin WORKDIR /opt/mediagoblin -# Create /var/www because Bower writes some cache files into /var/www during -# make, failing if it doesn't exist. RUN mkdir /var/www RUN chown root:www-data /var/www RUN chmod g+w /var/www +RUN groupadd --system mediagoblin --gid 1024 && adduser www-data mediagoblin + USER www-data -# Clone MediaGoblin for use during the install. Could alternately copy across -# just the files needed to run bootstrap/configure/make. -RUN git clone git://git.savannah.gnu.org/mediagoblin.git -b master . +RUN git clone --depth=1 git://git.savannah.gnu.org/mediagoblin.git -b master . RUN git submodule init && git submodule update RUN ./bootstrap.sh RUN VIRTUALENV_FLAGS='--system-site-packages' ./configure RUN make -# Re-run installation of Python dependencies - seems to install more things that -# didn't get installed with make. That shouldn't happen. -RUN ./bin/python setup.py develop --upgrade - -# Only supported on Python 2. RUN ./bin/pip install scikits.audiolab -# Patch to fix the config defaults that are failing at runtime. Needed here -# since we're running `dbupdate` during the Docker build. -COPY mediagoblin/init/config.py /opt/mediagoblin/mediagoblin/init/config.py - RUN echo '[[mediagoblin.media_types.audio]]' >> mediagoblin.ini RUN echo '[[mediagoblin.media_types.video]]' >> mediagoblin.ini -RUN cat mediagoblin.ini - -# Using default sqlite database for now. RUN ./bin/gmg dbupdate - RUN ./bin/gmg adduser --username admin --password a --email admin@example.com RUN ./bin/gmg makeadmin admin -# You can change this to /bin/bash if you'd prefer a shell. -CMD ["./lazyserver.sh", "--server-name=broadcast"] +EXPOSE 6543/tcp + +CMD ["./lazyserver.sh", "--server-name=broadcast"] |