Add draft Fedora dockerfile.
authorBen Sturmfels <ben@sturm.com.au>
Mon, 20 Apr 2020 02:51:27 +0000 (12:51 +1000)
committerBen Sturmfels <ben@sturm.com.au>
Mon, 20 Apr 2020 02:51:27 +0000 (12:51 +1000)
Dockerfile-debian-python3-sqlite
Dockerfile-fedora-python3-sqlite [new file with mode: 0644]

index 5ee7d3be765cab98a4538d352a96eb4417a06edf..5a4c0356e1aed20d2ec95cb56a68abfc90e97523 100644 (file)
@@ -93,6 +93,11 @@ gir1.2-gstreamer-1.0 \
 gstreamer1.0-tools \
 python3-gi
 
+# Install document (PDF-only) dependencies.
+# TODO: Check that PDF tests aren't skipped.
+RUN apt-get install -y \
+poppler-utils
+
 # Create working directory.
 RUN mkdir /opt/mediagoblin
 RUN chown -R www-data:www-data /opt/mediagoblin
diff --git a/Dockerfile-fedora-python3-sqlite b/Dockerfile-fedora-python3-sqlite
new file mode 100644 (file)
index 0000000..8171987
--- /dev/null
@@ -0,0 +1,90 @@
+# A Dockerfile for MediaGoblin hacking.
+#
+# See Dockerfile-debian-python3-sqlite for documentation.
+
+FROM fedora:31
+
+RUN yum -y update
+RUN yum -y install \
+automake \
+gcc \
+git \
+make \
+nodejs \
+npm \
+python3-devel \
+virtualenv
+
+RUN yum -y install \
+findutils \
+python3-alembic \
+python3-celery \
+python3-jsonschema \
+python3-kombu \
+python3-lxml \
+python3-migrate \
+# Fedora only
+python3-pillow \
+python3-py \
+python3-pytest \
+python3-pytest-xdist \
+python3-six \
+python3-snowballstemmer \
+python3-sphinx \
+# Not in Fedora
+# python3-sphinxcontrib.websupport \
+python3-webtest \
+# Fedora only
+which
+
+# RUN apt-get install -y \
+# gstreamer1.0-libav \
+# gstreamer1.0-plugins-bad \
+# gstreamer1.0-plugins-base \
+# gstreamer1.0-plugins-good \
+# gstreamer1.0-plugins-ugly \
+# libsndfile1-dev \
+# python3-gst-1.0 \
+# python3-numpy \
+# python3-scipy
+
+# RUN apt-get install -y \
+# gir1.2-gst-plugins-base-1.0 \
+# gir1.2-gstreamer-1.0 \
+# gstreamer1.0-tools \
+# python3-gi
+
+# RUN apt-get install -y \
+# poppler-utils
+
+RUN groupadd www-data
+RUN groupadd --system mediagoblin --gid 1024
+RUN adduser www-data -g www-data -G mediagoblin
+
+RUN mkdir /opt/mediagoblin
+RUN chown -R www-data:www-data /opt/mediagoblin
+WORKDIR /opt/mediagoblin
+
+RUN mkdir --mode=g+w /var/www
+RUN chown root:www-data /var/www
+
+USER www-data
+
+RUN git clone --depth=1 git://git.savannah.gnu.org/mediagoblin.git -b master .
+
+RUN ./bootstrap.sh
+RUN VIRTUALENV_FLAGS='--system-site-packages' ./configure --with-python3
+RUN make
+
+# RUN echo '[[mediagoblin.media_types.audio]]' >> mediagoblin.ini
+# RUN echo '[[mediagoblin.media_types.video]]' >> mediagoblin.ini
+
+# Fedora only
+RUN ./bin/pip install certifi
+RUN ./bin/gmg dbupdate
+RUN ./bin/gmg adduser --username admin --password a --email admin@example.com
+RUN ./bin/gmg makeadmin admin
+
+EXPOSE 6543/tcp
+
+CMD ["./lazyserver.sh", "--server-name=broadcast"]