52 lines
1.3 KiB
Docker
52 lines
1.3 KiB
Docker
FROM oven/bun:alpine AS build
|
|
LABEL maintainer="@imnya"
|
|
|
|
# Set the working directory
|
|
COPY app /code/app
|
|
COPY .env /code/app/.env
|
|
|
|
RUN chmod +x /code/app/run.sh
|
|
|
|
WORKDIR /code/app
|
|
RUN mkdir -p /code/app/temp
|
|
|
|
# Install dependencies
|
|
RUN bun install
|
|
|
|
# Build the project
|
|
RUN bun build index.ts --compile --minify --outfile ./run
|
|
|
|
FROM oven/bun:alpine AS runner
|
|
LABEL maintainer="@imnya"
|
|
|
|
# Set the working directory
|
|
WORKDIR /code
|
|
RUN mkdir -p /code/app
|
|
|
|
# Copy the built files from the build stage
|
|
COPY --from=build /code/app/run /code/app/run
|
|
COPY --from=build /code/app/template /code/app/template
|
|
COPY --from=build /code/app/.env /code/app/.env
|
|
COPY --from=build /code/app/run.sh /code/app/run.sh
|
|
|
|
RUN mkdir -p /code/app/temp
|
|
|
|
# Set timezone to Asia/Seoul
|
|
RUN apk add --no-cache tzdata \
|
|
&& cp /usr/share/zoneinfo/Asia/Seoul /etc/localtime \
|
|
&& echo "Asia/Seoul" > /etc/timezone \
|
|
&& apk del tzdata
|
|
|
|
# Cron job
|
|
RUN apk add --no-cache curl
|
|
RUN curl -Lo /code/app/supercronic https://github.com/aptible/supercronic/releases/latest/download/supercronic-linux-amd64 \
|
|
&& chmod +x /code/app/supercronic
|
|
|
|
RUN curl -o /code/app/temp/vts.xlsx https://f.imnya.ng/.today.isangjeong/vts.xlsx
|
|
|
|
RUN mkdir -p /code/app/temp/logs
|
|
|
|
COPY cron /code/app/cron
|
|
RUN chmod +x /code/app/cron
|
|
|
|
CMD ["/code/app/supercronic", "/code/app/cron"]
|