FROM node:22 
#alpine3.19

# install typescript
RUN npm install -g typescript

# install rust for adblock npm package
# Install Rust using rustup in non-interactive mode
RUN curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y

# Ensure that the Rust binaries are in PATH
ENV PATH="/root/.cargo/bin:${PATH}"

# Confirm installation by printing Rust and Cargo versions
RUN rustc --version && cargo --version

# Add my software to the docker env
RUN mkdir /crabrawler
COPY . /crabrawler

WORKDIR /crabrawler

# Install all dependencies and Launch Worker
RUN npm i
ENTRYPOINT npm run launchScheduler
