CHEFerise docker app to make it more efficient

This commit is contained in:
Nick Bland 2021-11-16 15:50:00 +10:00
parent 0a31ae482b
commit e2c83c817b
No known key found for this signature in database
GPG Key ID: B46CF88E4DAB4A2C
2 changed files with 13 additions and 4 deletions

View File

@ -1,8 +1,17 @@
FROM rust:1.56-slim AS builder FROM lukemathwalker/cargo-chef:latest-rust-1.53.0 AS chef
WORKDIR /app WORKDIR /app
COPY . .
# Create lock file for project to be used in builder
FROM chef AS planner
COPY . .
RUN cargo chef prepare --recipe-path recipe.json
# Build dependancies
FROM chef as builder
COPY --from=planner /app/recipe.json recipe.json
RUN cargo chef cook --release --recipe-path recipe.json
COPY . .
ENV SQLX_OFFLINE true ENV SQLX_OFFLINE true
RUN cargo build --release RUN cargo build --release

View File

@ -15,7 +15,7 @@ async fn main() -> std::io::Result<()> {
let configuration = get_configuration().expect("Failed to read configuration data."); let configuration = get_configuration().expect("Failed to read configuration data.");
// Configure connection to database for our startup // Configure connection to database for our startup
let connection_pool = PgPool::new() let connection_pool = PgPoolOptions::new()
.connect_timeout(std::time::Duration::from_secs(2)) .connect_timeout(std::time::Duration::from_secs(2))
.connect(&configuration.database.connection_string()) .connect(&configuration.database.connection_string())
.expect("Failed to connect to Postgres."); .expect("Failed to connect to Postgres.");