Prepare the test database:
- docker compose run --rm web bundle exec rails db:test:prepare
+ docker compose run --rm web bundle exec rails db:test:prepare
Run the test suite:
docker compose run --rm web bundle exec rails test:all
+If you encounter errors about missing assets, precompile the assets:
+
+ docker compose run --rm web bundle exec rake assets:precompile
+
### Loading an OSM extract
This installation comes with no geographic data loaded. You can either create new data using one of the editors (Potlatch 2, iD, JOSM etc) or by loading an OSM extract. Here an example for loading an OSM extract into your Docker-based OSM instance.
-FROM ubuntu:22.04
+FROM debian:bookworm
ENV DEBIAN_FRONTEND=noninteractive
# 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 \
- git-core \
- gpg-agent \
- libarchive-dev \
- libffi-dev \
- libgd-dev \
- libpq-dev \
- libsasl2-dev \
- libvips-dev \
- libxml2-dev \
- libxslt1-dev \
- libyaml-dev \
- locales \
- postgresql-client \
- ruby \
- ruby-dev \
- ruby-bundler \
- software-properties-common \
- tzdata \
- unzip
-
-# Install Node.js 18 and npm
-RUN curl -fsSL https://deb.nodesource.com/setup_18.x | bash - \
- && apt-get install -y nodejs
+ && apt-get install --no-install-recommends -y \
+ build-essential \
+ curl \
+ default-jre-headless \
+ file \
+ git-core \
+ gpg-agent \
+ libarchive-dev \
+ libffi-dev \
+ libgd-dev \
+ libpq-dev \
+ libsasl2-dev \
+ libvips-dev \
+ libxml2-dev \
+ libxslt1-dev \
+ libyaml-dev \
+ locales \
+ postgresql-client \
+ ruby-dev \
+ ruby-bundler \
+ tzdata \
+ unzip \
+ nodejs \
+ npm \
+ osmosis \
+ ca-certificates \
+ firefox-esr
# 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/*
-
-# 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
+RUN npm install --global yarn
ENV DEBIAN_FRONTEND=dialog