42 lines
960 B
Docker
42 lines
960 B
Docker
FROM ubuntu
|
|
WORKDIR /app
|
|
COPY . .
|
|
RUN apt-get update && apt-get install -y \
|
|
build-essential \
|
|
git \
|
|
curl \
|
|
libwebkit2gtk-4.1-dev \
|
|
wget \
|
|
file \
|
|
libxdo-dev \
|
|
libssl-dev \
|
|
libayatana-appindicator3-dev \
|
|
librsvg2-dev \
|
|
python3
|
|
|
|
# nvm env vars
|
|
RUN mkdir -p /usr/local/nvm
|
|
ENV NVM_DIR /usr/local/nvm
|
|
# IMPORTANT: set the exact version
|
|
ENV NODE_VERSION v22.9.0
|
|
RUN curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
|
|
RUN /bin/bash -c "source $NVM_DIR/nvm.sh && nvm install $NODE_VERSION && nvm use --delete-prefix $NODE_VERSION"
|
|
# add node and npm to the PATH
|
|
ENV NODE_PATH $NVM_DIR/versions/node/$NODE_VERSION/bin
|
|
ENV PATH $NODE_PATH:$PATH
|
|
RUN npm -v
|
|
RUN node -v
|
|
|
|
# Get Rust
|
|
RUN curl https://sh.rustup.rs -sSf | bash -s -- -y
|
|
ENV PATH="/root/.cargo/bin:${PATH}"
|
|
|
|
# Get tauri
|
|
RUN cargo install tauri-cli
|
|
|
|
# Get trunk
|
|
RUN cargo install trunk
|
|
|
|
# Build app
|
|
WORKDIR /app/client
|
|
ENTRYPOINT ["cargo", "tauri", "build"] |