X-Git-Url: https://git.openstreetmap.org./rails.git/blobdiff_plain/302a53d767a468a7bd4d716a1a0eba8ba38ad09b..93a9f31bf0e1cd3d5aec478aeef65c8132b02bdd:/Dockerfile diff --git a/Dockerfile b/Dockerfile index 37d6edda5..1c5638275 100644 --- a/Dockerfile +++ b/Dockerfile @@ -9,6 +9,8 @@ RUN apt-get update \ curl \ default-jre-headless \ file \ + git-core \ + gpg-agent \ libarchive-dev \ libffi-dev \ libgd-dev \ @@ -17,14 +19,27 @@ RUN apt-get update \ libvips-dev \ libxml2-dev \ libxslt1-dev \ + libyaml-dev \ locales \ - nodejs \ postgresql-client \ - ruby3.0 \ - ruby3.0-dev \ + ruby \ + ruby-dev \ + ruby-bundler \ + software-properties-common \ tzdata \ - unzip \ - yarnpkg \ + unzip + +# Install Node.js 18 and npm +RUN curl -fsSL https://deb.nodesource.com/setup_18.x | bash - \ + && apt-get install -y nodejs + +# Install yarn globally +RUN npm install --global yarn \ + # We can't use snap packages for firefox inside a container, so we need to get firefox+geckodriver elsewhere + && 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/* @@ -40,8 +55,7 @@ WORKDIR /app # Install Ruby packages ADD Gemfile Gemfile.lock /app/ -RUN gem install bundler \ - && bundle install +RUN bundle install # Install NodeJS packages using yarn ADD package.json yarn.lock /app/