diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 000000000..b07a97ce3 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,9 @@ +FROM mcr.microsoft.com/playwright:focal +WORKDIR /app +COPY . . +RUN rm package-lock.json +RUN npm install +RUN npx playwright install +RUN npm run build +ENTRYPOINT ["npm", "run"] +CMD ["test"] \ No newline at end of file diff --git a/package.json b/package.json index cc435fde7..fcdec3c52 100644 --- a/package.json +++ b/package.json @@ -43,7 +43,14 @@ "prepare": "npm run build", "pub:next": "cross-env RELEASE_TAG=next sh build/release.sh", "pub": "sh build/release.sh", - "postinstall": "opencollective-postinstall" + "postinstall": "opencollective-postinstall", + "docker:build": "docker build -f Dockerfile -t docsify-test:local .", + "docker:clean": "docker rmi docsify-test:local", + "docker:rebuild": "npm run docker:clean && npm run docker:build", + "docker:test": "docker run --rm -it --ipc=host --mount type=bind,source=$(pwd)/test,target=/app/test docsify-test:local test", + "docker:test:e2e": "docker run --rm -it --ipc=host --mount type=bind,source=$(pwd)/test,target=/app/test docsify-test:local test:e2e", + "docker:test:integration": "docker run --rm -it --ipc=host --mount type=bind,source=$(pwd)/test,target=/app/test docsify-test:local test:integration", + "docker:test:unit": "docker run --rm -it --ipc=host --mount type=bind,source=$(pwd)/test,target=/app/test docsify-test:local test:unit" }, "husky": { "hooks": {