anchor.diff:  RUN bundle install --without=development
   
   
  -## Stage 3: BLAST+ binaries.
  +## Stage 2: BLAST+ binaries.
   # We will copy them from NCBI's docker image.
   FROM ncbi/blast:${BLAST_VERSION} AS ncbi-blast
   
  -
  -## Stage 4: Puting it together.
  -FROM ruby:2.7-slim-buster
  +## Stage 3: Puting it together.
  +FROM ruby:2.7-slim-buster AS final
   
   LABEL Description="Intuitive local web frontend for the BLAST bioinformatics tool"
   LABEL MailingList="https://groups.google.com/forum/#!forum/sequenceserver"
  
positive.code: EXPOSE 4567
  COPY . .
  
  COPY --from=node /usr/src/app/public/sequenceserver-*.min.js public/
  COPY --from=node /usr/src/app/public/css/sequenceserver.min.css public/css/
  
  # Generate config file with default configs and database directory set to /db.
  # Setting database directory in config file means users can pass command line
  # arguments to SequenceServer without having to specify -d option again.
  
negative.code: ENV PATH=/sequenceserver/bin:${PATH}
  ENTRYPOINT ["bundle", "exec"]
  CMD ["sequenceserver"]
  
  ## Stage 4 (optional) minify CSS & JS.
  FROM node:15-alpine3.12 AS node
  
  RUN apk add --no-cache git
  WORKDIR /usr/src/app
  COPY ./package.json .
  RUN npm install
  ENV PATH=${PWD}/node_modules/.bin:${PATH}
  COPY public public
  RUN npm run-script build
  
  ## Stage 5 (optional) minify
  FROM final AS minify
  
  COPY --from=node /usr/src/app/public/sequenceserver-*.min.js public/
  COPY --from=node /usr/src/app/public/css/sequenceserver.min.css public/css/
  
  FROM final
  