|
4 | 4 | # |
5 | 5 | # A new version of source-declarative-manifest is built for every new Airbyte CDK release, and their versions are kept in sync. |
6 | 6 | # |
| 7 | +# Most of the below is in common with the Python Connector Base Image |
| 8 | +# - https://github.com/airbytehq/airbyte/blob/master/docker-images/Dockerfile.python-connector-base |
| 9 | +# |
| 10 | +# We moved off of the Python base image in Aug 2025, in order to decouple the Python version used by |
| 11 | +# Python connectors and the Manifest-Only executions. (Python connectors require additional testing |
| 12 | +# to to external library dependencies.) |
| 13 | + |
| 14 | +# https://hub.docker.com/_/python/tags?name=3.13.7-slim-bookworm |
| 15 | +ARG BASE_IMAGE=docker.io/python:3.13.7-slim-bookworm@sha256:9b8102b7b3a61db24fe58f335b526173e5aeaaf7d13b2fbfb514e20f84f5e386 |
| 16 | +FROM ${BASE_IMAGE} |
| 17 | + |
| 18 | +# Set the timezone to UTC |
| 19 | +RUN ln -snf /usr/share/zoneinfo/Etc/UTC /etc/localtime |
| 20 | + |
| 21 | +# Set-up groups, users, and directories |
| 22 | +RUN adduser --uid 1000 --system --group --no-create-home airbyte |
| 23 | + |
| 24 | +# Create the cache airbyte directories and set the right permissions |
| 25 | +RUN mkdir --mode 755 /airbyte && \ |
| 26 | + mkdir --mode 755 /custom_cache && \ |
| 27 | + mkdir /secrets && \ |
| 28 | + mkdir /config && \ |
| 29 | + mkdir /nonexistent && \ |
| 30 | + chown airbyte:airbyte /airbyte && \ |
| 31 | + chown -R airbyte:airbyte /custom_cache && \ |
| 32 | + chown -R airbyte:airbyte /secrets && \ |
| 33 | + chown -R airbyte:airbyte /config && \ |
| 34 | + chown -R airbyte:airbyte /nonexistent && \ |
| 35 | + chown -R airbyte:airbyte /tmp |
| 36 | + |
| 37 | +ENV POETRY_VIRTUALENVS_CREATE=false |
| 38 | +ENV POETRY_VIRTUALENVS_IN_PROJECT=false |
| 39 | +ENV POETRY_NO_INTERACTION=1 |
| 40 | + |
| 41 | +# Create and set up pip cache directory |
| 42 | +# TODO: Remove this block if not needed. |
| 43 | +ENV PIP_CACHE_DIR=/pip_cache |
| 44 | +RUN mkdir -p ${PIP_CACHE_DIR} && chown -R airbyte:airbyte ${PIP_CACHE_DIR} |
| 45 | + |
| 46 | +# Install pip and poetry |
| 47 | +RUN pip install --upgrade \ |
| 48 | + pip==24.0 \ |
| 49 | + setuptools==78.1.1 \ |
| 50 | + poetry==1.8.4 |
7 | 51 |
|
8 | | -FROM docker.io/airbyte/python-connector-base:4.0.2@sha256:9fdb1888c4264cf6fee473649ecb593f56f58e5d0096a87ee0b231777e2e3e73 |
| 52 | +# Install system dependencies |
| 53 | +RUN apt-get update && \ |
| 54 | + apt-get upgrade -y && \ |
| 55 | + apt-get dist-upgrade -y && \ |
| 56 | + apt-get clean |
| 57 | +RUN apt-get install -y socat=1.7.4.4-2 |
9 | 58 |
|
10 | 59 | WORKDIR /airbyte/integration_code |
11 | 60 |
|
|
0 commit comments