Add in `docker-compose` files

This commit is contained in:
Justin Moore 2024-10-18 13:39:58 -05:00
parent 8ddca6303d
commit 5f00fa41eb
3 changed files with 65 additions and 0 deletions

1
.gitignore vendored
View File

@ -1,2 +1,3 @@
/.vscode
/target /target
.env .env

23
dkr/app.dockerfile Normal file
View File

@ -0,0 +1,23 @@
# FIXME: Use mariner once they support the latest Rust.
# FROM mcr.microsoft.com/cbl-mariner/base/rust:1 as builder
FROM rust:1-bullseye AS builder
COPY Cargo.lock /build/
COPY Cargo.toml /build/
COPY src /build/src
# Build the default page
WORKDIR /build
RUN cargo build --release
RUN mkdir -p /app && mv target/release/nederlandskie /app/
# FROM mcr.microsoft.com/cbl-mariner/distroless/base:2.0
FROM debian:bullseye-slim
COPY --from=builder /app /app
WORKDIR /app
EXPOSE 8000
ENTRYPOINT [ "/app/nederlandskie" ]

41
docker-compose.yaml Normal file
View File

@ -0,0 +1,41 @@
version: '3.8'
services:
db:
image: mcr.microsoft.com/cbl-mariner/base/postgres:14
restart: always
environment:
- POSTGRES_USER=postgres
- POSTGRES_PASSWORD=postgres
ports:
- '5432:5432'
networks:
- backend
volumes:
- ./sql:/docker-entrypoint-initdb.d
- db:/var/lib/postgresql/data
api:
build:
context: .
dockerfile: dkr/app.dockerfile
command: 'launch'
image: nederlandskie
depends_on:
- db
ports:
- 8000:8000
networks:
- backend
# environment:
# DATABASE_URL: 'postgres://postgres:postgres@db/nederlandskie'
volumes:
- ./.env:/app/.env
links:
- db
networks:
backend:
volumes:
db:
driver: local