-
-
Notifications
You must be signed in to change notification settings - Fork 15
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
31 changed files
with
2,479 additions
and
655 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
# Using a more specific version to ensure reproducibility | ||
FROM node:16-alpine3.17 as base | ||
|
||
# Add Git, Python3, make, g++ in a single RUN command | ||
RUN apk add --no-cache git python3 make g++ \ | ||
&& yarn cache clean | ||
|
||
# Set build context and work directories | ||
ARG BUILD_CONTEXT | ||
WORKDIR /app | ||
|
||
# Copy just the relevant package.json and yarn.lock files | ||
COPY package.json yarn.lock* ./ | ||
COPY $BUILD_CONTEXT/package.json ./$BUILD_CONTEXT/ | ||
|
||
# Install dependencies | ||
RUN yarn install --pure-lockfile --non-interactive | ||
|
||
#------------------------- | ||
|
||
FROM base as builder | ||
|
||
# Copy source code and build configurations | ||
COPY tsconfig.json ./ | ||
COPY $BUILD_CONTEXT/tsconfig.json $BUILD_CONTEXT/ | ||
COPY $BUILD_CONTEXT/src $BUILD_CONTEXT/src/ | ||
|
||
WORKDIR /app/ | ||
RUN yarn build | ||
|
||
#------------------------- | ||
|
||
FROM node:16-alpine3.17 as prod | ||
|
||
ARG BUILD_CONTEXT | ||
ARG NODE_ENV | ||
|
||
# Meta-data and labels | ||
LABEL org.opencontainers.image.source="https://github.com/dotabod/backend" \ | ||
org.opencontainers.image.description="Dotabod container: ${BUILD_CONTEXT}" \ | ||
org.opencontainers.image.licenses="AGPL-3.0" | ||
|
||
# Create unprivileged user and switch to it | ||
RUN adduser -D dotadockeruser | ||
USER dotadockeruser | ||
|
||
# Copy relevant build artifacts | ||
WORKDIR /app | ||
COPY --from=builder --chown=dotadockeruser /app/package.json /app/tsconfig.json ./ | ||
COPY --from=builder --chown=dotadockeruser /app/$BUILD_CONTEXT/package.json ./$BUILD_CONTEXT/ | ||
COPY --from=builder --chown=dotadockeruser /app/$BUILD_CONTEXT/dist $BUILD_CONTEXT/dist/ | ||
|
||
# Create required directories | ||
RUN mkdir -p $BUILD_CONTEXT/src/steam/volumes | ||
|
||
# Copy node_modules | ||
COPY --from=base --chown=dotadockeruser /app/node_modules ./node_modules | ||
|
||
# Environment and CMD | ||
WORKDIR /app/$BUILD_CONTEXT | ||
ENV NODE_ENV=$NODE_ENV | ||
CMD yarn docker:$NODE_ENV |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
import { io } from 'socket.io-client' | ||
|
||
import { logger } from '../utils/logger.js' | ||
|
||
export const steamSocket = io('ws://steam:5035') | ||
|
||
steamSocket.on('connect', () => { | ||
logger.info('We alive on dotabod steam server!') | ||
}) |
Oops, something went wrong.