diff --git a/README.md b/README.md index 75d7927..a011e2c 100644 --- a/README.md +++ b/README.md @@ -1 +1,4 @@ -# docker-stacks \ No newline at end of file +# docker-stacks + +Config files for my docker setup with stack files (`.yaml`) and dockerfiles (`.dockerfile`) for creating the images in the [`dockerfiles/`](dockerfiles/) folder. + diff --git a/dockerfiles/alpine-git-python.dockerfile b/dockerfiles/alpine-git-python.dockerfile new file mode 100644 index 0000000..0e0841b --- /dev/null +++ b/dockerfiles/alpine-git-python.dockerfile @@ -0,0 +1,28 @@ +# Use an official Alpine-based Python image as your base +FROM python:3.9-alpine + +# Set the working directory +WORKDIR /app + +# Install git and other build dependencies (if your Python packages require compilation) +# It's good practice to install build dependencies and then remove them in the same RUN layer +# to keep the final image size down. +RUN apk add --no-cache git openssh-client # openssh-client if you need to clone private repos via SSH + +# Install Python build dependencies (e.g., for packages with C extensions) +# Common ones include build-base, libffi-dev, openssl-dev. +# Add more as needed based on your requirements.txt. +RUN apk add --no-cache --virtual .build-deps \ + build-base \ + libffi-dev \ + openssl-dev \ + # Add any other -dev packages your Python libraries might need + # e.g., if you have psycopg2, you'd need postgresql-dev + # if you have Pillow, you might need zlib-dev, jpeg-dev, etc. + && pip install --upgrade pip + +# Install Python dependencies +RUN pip install --no-cache-dir requests bs4 pytz pyyaml dateparser loguru + +# Remove build dependencies to keep the image small +RUN apk del .build-deps diff --git a/dockerfiles/alpine-hugo.dockerfile b/dockerfiles/alpine-hugo.dockerfile new file mode 100644 index 0000000..dbac0a2 --- /dev/null +++ b/dockerfiles/alpine-hugo.dockerfile @@ -0,0 +1,31 @@ +# Use Alpine Linux as the base image (lightweight and secure) +FROM alpine:latest + +# Set maintainer label (good practice for research reproducibility) +LABEL maintainer="Tobias Nauen" + +# Install system dependencies (Git, Bash, and Hugo) +RUN apk add --no-cache \ + git \ + bash \ + wget \ + go \ + gzip +# && wget -O /tmp/hugo.deb https://github.com/gohugoio/hugo/releases/download/v0.111.3/hugo_extended_0.111.3_linux-amd64.deb \ +# && apk add --no-cache --virtual .build-deps dpkg \ +# && dpkg -i /tmp/hugo.deb \ +# && rm /tmp/hugo.deb \ +# && apk del .build-deps \ +# && hugo version + +ENV GOPATH=/go +ENV PATH="$PATH:$GOPATH/bin" + +RUN go version + +RUN apk add --no-cache --repository=https://dl-cdn.alpinelinux.org/alpine/edge/community hugo + +RUN hugo version + +# Set working directory (adjust as needed) +WORKDIR /app diff --git a/dockerfiles/nginx-alibi.dockerfile b/dockerfiles/nginx-alibi.dockerfile new file mode 100644 index 0000000..af8ecaa --- /dev/null +++ b/dockerfiles/nginx-alibi.dockerfile @@ -0,0 +1,9 @@ +FROM nginx:latest + +RUN apt-get update + +RUN apt-get install -y \ + git \ + brotli + +RUN rm -rf /var/lib/apt/lists/*