我在EC2实例上运行气流,并且正在安排启动码头集装箱的一些任务。我怎么做?我需要在我的气流容器上安装码头吗?下一步是什么?我有一个yaml文件,用于旋转容器,它来自于puckel/airflow泊坞窗图片运行码头集装箱的泊坞窗内的气流
回答
您可以通过将卷附加到容器中,从气流泊坞窗容器中旋转泊坞窗容器。
例子:
docker run -v /var/run/docker.sock:/var/run/docker.sock:ro -v /path/to/bin/docker:/bin/docker:ro your_airflow_image
您可能还需要附上由码头工人所需的一些库。这取决于您运行Docker的系统。只需阅读在容器中运行docker命令时获得的错误消息,它就会指示您需要附加的东西。
您的气流容器将拥有对主机上运行的Docker的完全访问权限。 因此,如果您启动码头集装箱,它们将运行在运行气流容器的主机上。
感谢您的回复。我有一个添加更多的东西 - 当我有一个完整的解决方案时,我会追加答案。我在运行Ubuntu Xenial的EC2实例上运行它。我的码头容器是建立在debian之上的。概率。出于这个原因,我不得不在我的Dockerfile中添加docker二进制文件并启动守护进程。我现在正在获得权限被拒绝的错误,所以下一步就是将气流作为用户添加到嵌套的docker实例,以便它可以触发docker run。 –
@AshishMarkanday您不能将docker二进制文件从主机附加到容器,而不是将其添加到Dockerfile中? –
绝对将其添加到主机或其他容器业务流程(如ECS或Kubernetes)。不要在docker中运行docker – Davos
终于解决
我的EC2设置运行unbuntu Xenial 16.04和使用运行气流
事情修改puckel /气流泊坞窗映像,您需要在Dockerfile改变
添加在Dockerfile
USER root
安装基座的顶部USER根尔滨是不是为我工作,所以我不得不安装
docker binary in my docker container
从泊坞公司仓库安装泊坞窗。
RUN curl -sSL https://get.docker.com/ | sh
搜索在互联网上wrapdocker文件。将其复制到Dockerfile所在文件夹中的脚本目录中。这将启动气流泊坞窗
内泊坞窗守护程序安装魔力包装
ADD ./script/wrapdocker /usr/local/bin/wrapdocker
RUN chmod +x /usr/local/bin/wrapdocker
为用户添加气流泊坞窗组,以便气流可以运行码头工人的工作
RUN usermod -aG docker airflow
切换到气流用户
USER airflow
码头工人组成的文件或命令行参数来运行泊坞窗
从泊坞窗气流泊坞窗图像山泊坞窗插座刚刚安装
- /var/run/docker.sock:/var/run/docker.sock
你应该是好去!
- 1. 泊坞窗集装箱未能运行
- 2. 在泊坞窗集装箱
- 3. 错误泊坞窗集装箱
- 4. 泊坞窗集装箱 - 端口设置
- 5. 泊坞窗集装箱 - 上运行旧版本的Java6新java8代码
- 6. 泊坞窗 - 在备份集装箱的/ var/lib中/泊坞窗/ VFS/DIR
- 7. 指定超级用户的PostgreSQL密码泊坞窗集装箱
- 8. 泊坞窗无法启动的集装箱码头已经分配
- 9. 填充的Neo4j在泊坞集装箱
- 10. 泊坞窗机VS泊坞运行
- 11. 部署Windows集装箱(与泊坞窗创建)到Azure的集装箱服务
- 12. 泊坞窗卷装载与空的内容与码头组成
- 13. 的Windows集装箱VS泊坞窗集装箱和Azure的集装箱服务/ Kubernetes集群Linux操作系统
- 14. 更新泊坞窗,泊坞窗机,码头工人撰写
- 15. 泊坞窗:`码头工人run`和'泊坞窗service`
- 16. 如何运行泊坞窗,构成对泊坞窗群(不含泊坞窗机)
- 17. 内泊坞窗
- 18. 在码头集装箱内运行码头?
- 19. 错误安装PIP内泊坞集装箱
- 20. 是否可以使用泊坞撰写一个正在运行的泊坞容器内推出新的码头工人集装箱?
- 21. 在码头集装箱中运行emacs
- 22. 码头集装箱运行异步
- 23. 安装泊坞窗的
- 24. 泊坞窗安装nginx的
- 25. 泊坞窗集装箱图书馆复制
- 26. 泊坞窗 - 集装箱未创建后创建服务
- 27. 不能ssh来泊坞窗jenkinsci/SSH-从集装箱
- 28. 泊坞窗集装箱无法连接到远程SQL
- 29. 码头工人不经泊坞窗运行命令
- 30. H2O深水与泊坞窗集装箱模板 - >流量UI不能入店
我认为在码头集装箱内部安装码头是一点点启始。我认为如果可能的话,最好使用ECS或Lambda或无服务器。 – Davos