diff --git a/.prod b/.prod index 6ab6215..af63c7e 100644 --- a/.prod +++ b/.prod @@ -1,6 +1,6 @@ DATABASE_URL="sqlite:/data/db/sqlite.db?mode=rwc" IMAGES_DIR="/data/images" -CORS_URL="*" +CORS_URL="https://booksman.vinodjam.com" MEILI_URL="http://meili:7700" MEILI_KEY="asdasdasd" -BACKEND_URL="http://localhost:8081" +BACKEND_URL="https://booksman.vinodjam.com" diff --git a/Dockerfile b/Dockerfile index 07b761b..65eedd9 100644 --- a/Dockerfile +++ b/Dockerfile @@ -5,41 +5,53 @@ RUN apk add --no-cache openssl-dev musl-dev WORKDIR /usr/src/app -RUN rustup target add wasm32-unknown-unknown -#RUN export CARGO_BUILD_JOBS = 1 ENV CARGO_BUILD_JOBS=1 -RUN cargo install trunk - -RUN mkdir frontend && mkdir frontend/src && mkdir backend && mkdir backend/src && mkdir backend/api/ && mkdir backend/entity/ && mkdir backend/migration/ && mkdir backend/orm/ && mkdir backend/search/ && mkdir backend/api/src && mkdir backend/entity/src && mkdir backend/migration/src && mkdir backend/orm/src && mkdir backend/search/src && mkdir frontend/css +RUN mkdir backend && mkdir backend/src && mkdir backend/api/ && mkdir backend/entity/ && mkdir backend/migration/ && mkdir backend/orm/ && mkdir backend/search/ && mkdir backend/api/src && mkdir backend/entity/src && mkdir backend/migration/src && mkdir backend/orm/src && mkdir backend/search/src COPY ./dummy.rs ./dummy.rs -RUN cp dummy.rs /usr/src/app/frontend/src/main.rs && cp dummy.rs /usr/src/app/backend/src/main.rs && cp dummy.rs /usr/src/app/backend/api/src/main.rs && cp dummy.rs /usr/src/app/backend/entity/src/lib.rs && cp dummy.rs /usr/src/app/backend/migration/src/lib.rs && cp dummy.rs /usr/src/app/backend/orm/src/lib.rs && cp dummy.rs /usr/src/app/backend/search/src/lib.rs +RUN cp dummy.rs /usr/src/app/backend/src/main.rs && cp dummy.rs /usr/src/app/backend/api/src/main.rs && cp dummy.rs /usr/src/app/backend/entity/src/lib.rs && cp dummy.rs /usr/src/app/backend/migration/src/lib.rs && cp dummy.rs /usr/src/app/backend/orm/src/lib.rs && cp dummy.rs /usr/src/app/backend/search/src/lib.rs -COPY ./frontend/Cargo.toml /usr/src/app/frontend COPY ./backend/Cargo.toml /usr/src/app/backend COPY ./backend/api/Cargo.toml /usr/src/app/backend/api/Cargo.toml COPY ./backend/entity/Cargo.toml /usr/src/app/backend/entity/Cargo.toml COPY ./backend/migration/Cargo.toml /usr/src/app/backend/migration/Cargo.toml COPY ./backend/orm/Cargo.toml /usr/src/app/backend/orm/Cargo.toml COPY ./backend/search/Cargo.toml /usr/src/app/backend/search/Cargo.toml + +RUN cd backend && cargo build --release +COPY . /usr/src/app +RUN cp .prod .env +RUN cd backend && cargo build --release + +####################### +FROM rust:slim as builder-frontend + +WORKDIR /usr/src/app + +RUN rustup target add wasm32-unknown-unknown +ENV CARGO_BUILD_JOBS=1 +RUN mkdir frontend && mkdir frontend/src && mkdir frontend/css +#RUN cargo install --locked trunk +RUN cargo install wasm-bindgen-cli && cargo install --locked trunk + +COPY ./dummy.rs /usr/src/app/frontend/src/main.rs +COPY ./frontend/Cargo.toml /usr/src/app/frontend COPY ./frontend/index.html /usr/src/app/frontend/ COPY ./frontend/css/index.css /usr/src/app/frontend/css COPY ./frontend/Trunk.toml /usr/src/app/frontend/ -RUN cd frontend && trunk build --release -RUN cd backend && cargo build --release - +RUN cd frontend && cargo install && trunk build --release COPY . /usr/src/app RUN cp .prod .env -RUN cd frontend && trunk build --release -RUN cd backend && cargo build --release +RUN cd frontend && cargo install && trunk build --release +####################### FROM alpine:latest WORKDIR /usr/src/app COPY --from=builder /usr/src/app/backend/target/release/backend /usr/src/app/booksman #COPY ./dist /usr/src/dist -COPY --from=builder /usr/src/app/dist /usr/src/dist +COPY --from=builder-frontend /usr/src/app/dist /usr/src/dist COPY --from=builder /usr/src/app/.env /usr/src/app/.env RUN chmod +x /usr/src/app/booksman