X-Git-Url: https://git.openstreetmap.org/rails.git/blobdiff_plain/033c3b28b3b2708634f3015449d0c2ed222e26d6..218b140912dd99d87c61d609da42b8507f89ccb8:/Dockerfile diff --git a/Dockerfile b/Dockerfile index 33812d25d..78be28838 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,36 +1,43 @@ -FROM ubuntu:20.04 +FROM ubuntu:22.04 ENV DEBIAN_FRONTEND=noninteractive -# Install system packages +# 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 \ file \ - firefox-geckodriver \ - imagemagick \ + gpg-agent \ libarchive-dev \ libffi-dev \ libgd-dev \ - libmagickwand-dev \ libpq-dev \ libsasl2-dev \ + libvips-dev \ libxml2-dev \ libxslt1-dev \ locales \ - nodejs \ postgresql-client \ - ruby2.7 \ - ruby2.7-dev \ + ruby3.0 \ + ruby3.0-dev \ + software-properties-common \ tzdata \ unzip \ - yarnpkg \ + && curl https://deb.nodesource.com/gpgkey/nodesource.gpg.key | apt-key add - \ + && add-apt-repository -y -U https://deb.nodesource.com/node_18.x \ + && apt-get install --no-install-recommends -y \ + nodejs \ + && npm install --global yarn \ + && add-apt-repository -y ppa:mozillateam/ppa \ + && echo "Package: *\nPin: release o=LP-PPA-mozillateam\nPin-Priority: 1001" > /etc/apt/preferences.d/mozilla-firefox \ + && apt-get install --no-install-recommends -y \ + firefox-geckodriver \ && apt-get clean \ && rm -rf /var/lib/apt/lists/* -# Install current Osmosis +# 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 @@ -45,6 +52,7 @@ ADD Gemfile Gemfile.lock /app/ RUN gem install bundler \ && bundle install -# Install NodeJS packages +# Install NodeJS packages using yarn ADD package.json yarn.lock /app/ -RUN yarnpkg install +ADD bin/yarn /app/bin/ +RUN bundle exec bin/yarn install