-
Notifications
You must be signed in to change notification settings - Fork 4
/
Dockerfile.base
55 lines (44 loc) · 1.63 KB
/
Dockerfile.base
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
# syntax=docker/dockerfile:1
# Dockerfile.base
FROM python:3.11-buster
# Set the title, GitHub repo URL, version, and author
ARG TITLE="Meeseeks Base" \
VERSION="1.0.0" \
AUTHOR="Krishnakanth Alagiri"
LABEL org.opencontainers.image.source="https://github.com/bearlike/Personal-Assistant" \
org.opencontainers.image.version=$VERSION \
org.opencontainers.image.vendor=$AUTHOR \
org.opencontainers.image.licenses="[email protected]" \
org.opencontainers.image.licenses="MIT"
LABEL maintainer=$AUTHOR \
title=$TITLE \
url=$GITHUB_REPO_URL \
version=$VERSION
# Virtualens are redundant for Dockerfile.
ENV POETRY_NO_INTERACTION=1 \
POETRY_CACHE_DIR=/tmp/poetry_cache \
POETRY_VIRTUALENVS_CREATE=false
# Update and install necessary software
RUN apt-get update && apt-get install -y \
build-essential \
curl \
software-properties-common \
git \
&& rm -rf /var/lib/apt/lists/*
# Set the working directory to /app (assuming project root)
WORKDIR /app
# Copy the repo contents to the Docker image
COPY . /app
# Install Poetry
RUN pip install 'poetry>=1.8,<1.9'
# Install the core dependencies
RUN poetry install
# Set default environment variables for Meeseeks (common ones)
ENV CACHE_DIR='/tmp/meeseeks_cache' \
DEFAULT_MODEL='gpt-3.5-turbo' \
LOG_LEVEL=DEBUG \
ENVMODE=dev \
VERSION=${VERSION} \
COLOREDLOGS_FIELD_STYLES='asctime=color=240;name=45,inverse' \
COLOREDLOGS_LEVEL_STYLES='info=220;spam=22;debug=34;verbose=34;notice=220;warning=202;success=118,bold;error=124;critical=background=red' \
COLOREDLOGS_LOG_FORMAT='%(asctime)s [%(name)s] %(levelname)s %(message)s'