| FROM mcr.microsoft.com/playwright:focal | |
| # Skip Playwright browser downloads | |
| ENV PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD=1 | |
| # Set timezone | |
| ENV TZ=Asia/Jakarta | |
| RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone | |
| WORKDIR /app | |
| # Clone repository | |
| RUN --mount=type=secret,id=GITHUB_REPO,required=true \ | |
| git clone $(cat /run/secrets/GITHUB_REPO) . | |
| # Install dependencies | |
| RUN npm install | |
| # Install Playwright dependencies and browsers | |
| RUN npx playwright install --with-deps | |
| # Set environment variable for the app port | |
| ENV PORT=7860 | |
| # Expose the port | |
| EXPOSE 7860 | |
| # Start the application | |
| CMD ["node", "app.js"] |