diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 0000000..f06235c --- /dev/null +++ b/.dockerignore @@ -0,0 +1,2 @@ +node_modules +dist diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml deleted file mode 100644 index 6721575..0000000 --- a/.github/workflows/deploy.yml +++ /dev/null @@ -1,47 +0,0 @@ -name: Build & Deploy - -on: - push: - branches: ["main"] - - pull_request: - branches: ["main"] - -jobs: - build-and-deploy: - runs-on: ubuntu-latest - - strategy: - matrix: - node-version: [18.x] - - steps: - - uses: actions/checkout@v3 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v3 - with: - node-version: ${{ matrix.node-version }} - cache: "npm" - - run: npm ci - - run: npm run build --if-present - - run: npm run test --if-present - - - uses: a7ul/tar-action@v1.1.0 - with: - command: c - cwd: "./" - files: | - index.js - core.js - note_validator.js - package.json - dist/ - captain-definition - outPath: deploy.tar - - - name: Deploy App to CapRover - uses: caprover/deploy-from-github@v1.0.1 - with: - server: "${{ secrets.CAPROVER_SERVER }}" - app: "${{ secrets.APP_NAME }}" - token: "${{ secrets.APP_TOKEN }}" diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..a12a489 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,13 @@ +FROM node:18-alpine as build +WORKDIR /app +COPY . . +RUN npm install +RUN npm run build + +FROM node:18-alpine as run +WORKDIR /app +COPY --from=build /app/package*.json /app/index.js /app/note_validator.js /app/core.js /usr/src/app/ +COPY --from=build /app/dist/ /usr/src/app/dist/ +RUN npm install --omit=dev +CMD npm run start +EXPOSE 80 diff --git a/captain-definition b/captain-definition deleted file mode 100644 index c6f7a53..0000000 --- a/captain-definition +++ /dev/null @@ -1,4 +0,0 @@ -{ - "schemaVersion": 2, - "templateId": "node/18.17.1" -} diff --git a/docker-compose.yml b/docker-compose.yml new file mode 100644 index 0000000..8f386de --- /dev/null +++ b/docker-compose.yml @@ -0,0 +1,8 @@ +version: "3" + +services: + anopaper: + build: . + ports: + - "80:80" + restart: unless-stopped