remove multi-arch for now
This commit is contained in:
parent
a8436c2d6c
commit
c4f03ebc2f
|
|
@ -58,7 +58,7 @@ jobs:
|
||||||
uses: docker/build-push-action@v5
|
uses: docker/build-push-action@v5
|
||||||
with:
|
with:
|
||||||
context: .
|
context: .
|
||||||
platforms: linux/amd64,linux/arm64,linux/arm/v7
|
platforms: linux/amd64 #,linux/arm64,linux/arm/v7
|
||||||
push: true
|
push: true
|
||||||
tags: ${{ steps.meta.outputs.tags }}
|
tags: ${{ steps.meta.outputs.tags }}
|
||||||
labels: ${{ steps.meta.outputs.labels }}
|
labels: ${{ steps.meta.outputs.labels }}
|
||||||
|
|
|
||||||
30
Dockerfile
30
Dockerfile
|
|
@ -1,31 +1,25 @@
|
||||||
# Build stage - compile dependencies
|
# Build stage - install dependencies
|
||||||
FROM python:3.11-slim AS builder
|
FROM python:3.11-slim AS builder
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
# Install build dependencies (only in this stage)
|
# Install Python dependencies to a virtual environment
|
||||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
# (Most packages have pre-built wheels for amd64, no compilation needed!)
|
||||||
gcc \
|
|
||||||
libssl-dev \
|
|
||||||
libffi-dev \
|
|
||||||
python3-dev \
|
|
||||||
cargo \
|
|
||||||
rustc \
|
|
||||||
&& rm -rf /var/lib/apt/lists/*
|
|
||||||
|
|
||||||
# Install Python dependencies
|
|
||||||
COPY requirements.txt .
|
COPY requirements.txt .
|
||||||
RUN pip install --no-cache-dir --upgrade pip && \
|
RUN python -m venv /opt/venv && \
|
||||||
pip install --no-cache-dir --prefix=/install -r requirements.txt
|
/opt/venv/bin/pip install --no-cache-dir --upgrade pip && \
|
||||||
|
/opt/venv/bin/pip install --no-cache-dir -r requirements.txt
|
||||||
|
|
||||||
# Final stage - minimal runtime image
|
# Final stage - minimal runtime image (no build tools!)
|
||||||
FROM python:3.11-slim
|
FROM python:3.11-slim
|
||||||
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
|
|
||||||
# Copy installed Python packages from builder
|
# Copy only the virtual environment from builder (no bloat!)
|
||||||
# (python:3.11-slim already has all needed runtime libraries)
|
COPY --from=builder /opt/venv /opt/venv
|
||||||
COPY --from=builder /install /usr/local
|
|
||||||
|
# Use the virtual environment
|
||||||
|
ENV PATH="/opt/venv/bin:$PATH"
|
||||||
|
|
||||||
# Copy application files
|
# Copy application files
|
||||||
COPY backend ./backend
|
COPY backend ./backend
|
||||||
|
|
|
||||||
|
|
@ -46,8 +46,6 @@ NoteDiscovery is a **lightweight, self-hosted note-taking application** that put
|
||||||
Use the pre-built image directly from GHCR - no building required!
|
Use the pre-built image directly from GHCR - no building required!
|
||||||
|
|
||||||
> **💡 Tip**: Always use `ghcr.io/gamosoft/notediscovery:latest` to get the newest features and fixes. Images are automatically built when PRs are merged to main.
|
> **💡 Tip**: Always use `ghcr.io/gamosoft/notediscovery:latest` to get the newest features and fixes. Images are automatically built when PRs are merged to main.
|
||||||
>
|
|
||||||
> **🖥️ Multi-Architecture Support**: Images are built for `x86_64`, `ARM64` (Raspberry Pi 3/4/5), and `ARM v7` (older Raspberry Pi models). Docker will automatically pull the correct version for your device.
|
|
||||||
|
|
||||||
> **📁 Important - Volume Mapping**: The container needs local folders/files to work:
|
> **📁 Important - Volume Mapping**: The container needs local folders/files to work:
|
||||||
> - **Required**: `data` folder (your notes will be stored here)
|
> - **Required**: `data` folder (your notes will be stored here)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue