Newer
Older
# Stage 1: Jbrowse config file generated
FROM quay.io/biocontainers/jbrowse2:2.15.3--hbbc3ce4_0 as jbrowse_base
WORKDIR /app
COPY jbrowse_script_base.sh .
RUN ./jbrowse_script_base.sh \
&& rm jbrowse_script_base.sh
RUN rm -rf annelids/node_modules
# Stage 2: Json processing
FROM ghcr.io/jqlang/jq:1.7.1 as jbrowse_builder
WORKDIR /app/annelids
COPY --from=jbrowse_base /app/annelids/ /app/annelids/
COPY default_session.json tracks.json ./
RUN --argfile base default_session.json '.defaultSession = $base' < config.json > config.json
# | jq --argfile base tracks.json '. += $base' > config.json \
# && rm default_session.json tracks.json
# Stage 3: Load into nginx
FROM nginx:alpine
WORKDIR /usr/share/nginx/html
RUN rm -rf ./*
COPY --from=jbrowse_builder /app/annelids/ .
ENTRYPOINT ["nginx", "-g", "daemon off;"]