+16
.dockerignore
+16
.dockerignore
+7
-11
Dockerfile
+7
-11
Dockerfile
···
1
1
# Description: Dockerfile for the Skywatch Tools
2
-
FROM node:lts
3
-
RUN curl -fsSL https://bun.sh/install | bash
4
-
ENV PATH="/root/.bun/bin:${PATH}"
5
-
6
-
# Create app directory
2
+
FROM oven/bun:1 AS base
7
3
WORKDIR /app
8
-
COPY package*.json bun.lockb ./
9
4
10
-
# Install app dependencies
11
-
RUN bun i
5
+
# Install dependencies (cached layer)
6
+
COPY package.json bun.lockb ./
7
+
RUN bun install --frozen-lockfile
12
8
13
-
# Bundle app source
9
+
# Copy application code
14
10
COPY . .
15
11
16
-
# Expose the port the app runs
12
+
# Expose the metrics port
17
13
EXPOSE 4101
18
14
19
-
# Serve the app
15
+
# Run the application
20
16
CMD ["bun", "run", "start"]