Dockerfile to package the 'redoc-cli' tool as a docker image

This commit is contained in:
David Oram 2018-08-23 06:34:23 +12:00
parent 17386036c5
commit fec72ac0ea

View File

@ -1,25 +1,30 @@
# To build: # Package the 'redoc-cli' as a docker image.
# - Must be in the project root directory
# - docker build -f cli/Dockerfile .
# #
# To run # To build:
# - docker run --rm -i -t <image> --help # $ cd <Redoc project directory>
# $ docker build -t redoc-cli -f cli/Dockerfile .
#
# To run:
# To display the command line options:
# $ docker run --rm -it redoc-cli redoc-cli --help
# .. will display the comand line help
#
# To the `swagger.yml` file in the current directory, and output 'redoc-static.html'
# $ docker run --rm -it -v $PWD:/data redoc-cli redoc-cli bundle swagger.yml
FROM node:alpine FROM node:alpine
# Needs python, alpine-sdk to build node packages
RUN apk update && apk add --no-cache git python alpine-sdk nodejs RUN apk update && apk add --no-cache git python alpine-sdk nodejs
# generate bundle
WORKDIR /build WORKDIR /build
COPY . /build COPY . /build
#RUN cd cli && npm run compile:cli
RUN yarn install --frozen-lockfile --ignore-optional --ignore-scripts
RUN npm run bundle && npm run compile:cli
RUN npm install typescript RUN yarn install --frozen-lockfile --ignore-optional --ignore-scripts && \
RUN npm install iltorb npm run bundle && npm run compile:cli && \
RUN npm install -g redoc-cli npm install typescript && \
npm install iltorb && \
npm install -g redoc-cli
ENTRYPOINT ["redoc-cli"] WORKDIR /data