]> git.openstreetmap.org Git - rails.git/blobdiff - Dockerfile
Standardise on openstreetmap-website instead of rails port
[rails.git] / Dockerfile
index 6b9110e92941d84ae599b8b92aaf5f65d8830e59..aae65c2bb9765dcc7b1ee8900fa53d56107a5ae6 100644 (file)
@@ -2,19 +2,20 @@ FROM ubuntu:20.04
 
 ENV DEBIAN_FRONTEND=noninteractive
 
 
 ENV DEBIAN_FRONTEND=noninteractive
 
-# Install system packages
-RUN apt-get update && \
   apt-get install --no-install-recommends -y \
+# Install system packages then clean up to minimize image size
+RUN apt-get update \
&& apt-get install --no-install-recommends -y \
       build-essential \
       curl \
       default-jre-headless \
       build-essential \
       curl \
       default-jre-headless \
+      file \
       firefox-geckodriver \
       firefox-geckodriver \
-      imagemagick \
       libarchive-dev \
       libffi-dev \
       libarchive-dev \
       libffi-dev \
-      libmagickwand-dev \
+      libgd-dev \
       libpq-dev \
       libsasl2-dev \
       libpq-dev \
       libsasl2-dev \
+      libvips-dev \
       libxml2-dev \
       libxslt1-dev \
       locales \
       libxml2-dev \
       libxslt1-dev \
       locales \
@@ -23,13 +24,14 @@ RUN apt-get update && \
       ruby2.7 \
       ruby2.7-dev \
       tzdata \
       ruby2.7 \
       ruby2.7-dev \
       tzdata \
-      yarnpkg && \
-    apt-get clean && \
-    rm -rf /var/lib/apt/lists/*
+      unzip \
+      yarnpkg \
+ && apt-get clean \
+ && rm -rf /var/lib/apt/lists/*
 
 
-# Install current Osmosis
-RUN curl -OL https://github.com/openstreetmap/osmosis/releases/download/0.47.2/osmosis-0.47.2.tgz && \
   tar -C /usr/local -xzf osmosis-0.47.2.tgz
+# Install compatible Osmosis to help users import sample data in a new instance
+RUN curl -OL https://github.com/openstreetmap/osmosis/releases/download/0.47.2/osmosis-0.47.2.tgz \
&& tar -C /usr/local -xzf osmosis-0.47.2.tgz
 
 ENV DEBIAN_FRONTEND=dialog
 
 
 ENV DEBIAN_FRONTEND=dialog
 
@@ -39,9 +41,10 @@ WORKDIR /app
 
 # Install Ruby packages
 ADD Gemfile Gemfile.lock /app/
 
 # Install Ruby packages
 ADD Gemfile Gemfile.lock /app/
-RUN gem install bundler && \
   bundle install
+RUN gem install bundler \
&& bundle install
 
 
-# Install NodeJS packages
+# Install NodeJS packages using yarnpkg
+# `bundle exec rake yarn:install` will not work
 ADD package.json yarn.lock /app/
 ADD package.json yarn.lock /app/
-RUN yarnpkg install
+RUN yarnpkg --ignore-engines install