Skip to content

Commit

Permalink
build fixes
Browse files Browse the repository at this point in the history
  • Loading branch information
cogentapps committed Apr 15, 2023
1 parent eb58d90 commit 8ec99ab
Show file tree
Hide file tree
Showing 4 changed files with 50 additions and 31 deletions.
1 change: 1 addition & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
**/node_modules
58 changes: 43 additions & 15 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,40 +1,68 @@
FROM node:19-alpine AS build
FROM node:19-bullseye-slim AS build

RUN addgroup -S app && adduser -S app -G app
RUN mkdir /app && chown app:app /app

RUN apk add --update --no-cache git

USER app
RUN apt-get update && \
apt-get install -y \
git

# Set working directory
WORKDIR /app

# Copy package.json and tsconfig.json
COPY ./app/package.json ./
COPY ./app/tsconfig.json ./

# Install Node.js dependencies
RUN npm install

# Copy craco.config.js, public, and src directories
COPY ./app/craco.config.js ./craco.config.js
COPY ./app/public ./public
COPY ./app/src ./src

# Set environment variables
ENV NODE_ENV=production
ENV REACT_APP_AUTH_PROVIDER=local

# Build the application
RUN npm run build

FROM node:19-alpine AS server

RUN addgroup -S app && adduser -S app -G app
FROM nvidia/cuda:12.1.0-devel-ubuntu20.04 AS server

# Set the working directory
WORKDIR /app

COPY ./server/package.json ./
COPY ./server/tsconfig.json ./

RUN apk add --update --no-cache python3 py3-pip make g++ git
# Update the package index and install required dependencies
RUN apt-get update && \
apt-get install -y \
curl \
build-essential \
libssl-dev \
libffi-dev \
python3-dev \
python3-pip \
openssl

RUN mkdir /usr/local/nvm
ENV NVM_DIR /usr/local/nvm
ENV NODE_VERSION 19.9.0
RUN curl https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash \
&& . $NVM_DIR/nvm.sh \
&& nvm install $NODE_VERSION \
&& nvm alias default $NODE_VERSION \
&& nvm use default

ENV NODE_PATH $NVM_DIR/v$NODE_VERSION/lib/node_modules
ENV PATH $NVM_DIR/versions/node/v$NODE_VERSION/bin:$PATH

# Copy package.json and requirements.txt into the working directory
COPY ./server/package.json ./server/requirements.txt ./server/tsconfig.json ./

# Install Node.js dependencies from package.json
RUN npm install

# Install Python dependencies from requirements.txt
RUN pip3 install --no-cache-dir -r requirements.txt

# Copy the rest of the application code into the working directory
COPY ./server/src ./src

RUN CI=true sh -c "cd /app && mkdir data && npm run start && rm -rf data"
Expand Down
6 changes: 6 additions & 0 deletions app/craco.config.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
const cracoWasm = require("craco-wasm");
const webpack = require("webpack");
const path = require("path");

module.exports = {
plugins: [
Expand All @@ -26,12 +27,17 @@ module.exports = {
fallback: {
buffer: require.resolve("buffer"),
},
alias: {
'@ffmpeg/ffmpeg': path.resolve(__dirname, 'src/stub.js')
},
},
plugins: [
new webpack.ProvidePlugin({
Buffer: ["buffer", "Buffer"],
}),
],
ignoreWarnings: [/Failed to parse source map/],
cache: false,
},
},
}
16 changes: 0 additions & 16 deletions docker-compose.yml

This file was deleted.

0 comments on commit 8ec99ab

Please sign in to comment.