I have installed Airflow 2.0 using Docker on AWS and trying to pull my own private docker image GitLab container registry using DockerOperator but getting permission denied.
How I can pull my docker image from GitLab and How I can create a connection for the Docker image GitLab registry?
Dag file link Docker yml file link
My dag Code:
java_test_scheduler = DockerOperator(
task_id='Java-hello-world-test-scheduler',
image='registry.gitlab.com/mobinalhassan/jamay_aeronova:latest',
auto_remove=True,
force_pull=True,
dag=dag
)
I also tried by adding docker volums:
- /var/run/docker.sock:/var/run/docker.sock
- $HOME/.ssh:/root/.ssh:ro
- $HOME/.docker:/root/.docker
Error:
sock.connect(self.unix_socket) PermissionError: [Errno 13] Permission denied
Your dag is missing dag_conn_id definition when pulling from private docker registry:
If a login to a private registry is required prior to pulling the image, a Docker connection needs to be configured in Airflow and the connection ID be provided with the parameter docker_conn_id.https://airflow.apache.org/docs/apache-airflow-providers-docker/stable/_api/airflow/providers/docker/operators/docker/index.html