For Prefect 2.0, how do I correctly pass the env v...
# prefect-community
y
For Prefect 2.0, how do I correctly pass the env variable EXTRA_PIP_PACKAGES to the runtime infrastructure? I tried below, but am still running into an error that s3fs is not installed - which is required to pull storage from S3
a
no EXTRA_PIP_PACKAGES supported atm, you would need to build a custom image you could start with a simple one as this:
Copy code
FROM prefecthq/prefect:2-python3.9
COPY requirements.txt .
RUN pip install -r requirements.txt
y
when referencing a docker image, are only images on docker hub supported, or can I use private images in github container registery?
k
btw,
gcsfs
is still not included in the default image, right?
r
As for the docker registry that is used, I believe the docker client will pull from the environment variable of the system it is running on. https://github.com/PrefectHQ/prefect/blob/main/src/prefect/infrastructure/docker.py#L359 https://docker-py.readthedocs.io/en/stable/client.html
🙏 1
🙌 1
y
@Rob Freedy If I use prefect 2.0 with managed orion cloud (not self hosted), and have an agent deployed to EKS on AWS, how would I specify in the infrastructure block of a deployment to use a private docker image stored in github docker registry? Is there any documentation/examples I have missed?
a
if your agent is running on AWS EKS and your image is pushed to ECR, then it should "just work" since AWS, by default, attaches the ECR permissions to all nodes deployed on EKS
(at least that'S the case when you deploy with eksctl) if not, you can easily attach the IAM role and you should be good to go
y
@Anna Geller Unfortunately, images are not stored in AWS ECR 😕 Our docker images are stored in github docker repository.