环境

 系统:Ubuntu 22.04.2 LTS
docker Version:20.10.21
docker-compose version 1.29.2,
python3 --version Python 3.10.6

1、 安装docker

1.1先更新系统

		sudo apt-get update
sudo apt-get upgrade

1.2安装docker:

		apt-get install docker.io

1.3查看docker版本:

		docker version

1.4 将当前用户加入docker这个group

sudo usermod -aG docker $USER

1.5 验证是否添加成功

groups 或者 id -nG

1.6 重启docker

sudo service docker restart

1.7 验证docker 是否安装成功

docker version 或 docker info
第一个命令“docker version”将列出已安装的Docker版本,以及客户端和服务端的详细信息。如果输出中没有错误,则说明Docker已成功安装。
第二个命令“docker info”将显示有关Docker daemon(Docker守护程序)的详细信息,包括系统信息、容器信息和镜像信息等。同样,如果输出中没有错误,则说明Docker已成功安装。

1.8修改docker配置文件,使得docker能被远程访问

vim /lib/systemd/system/docker.service

修改为

ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock

1.9重载守护进程以及重启Docker:

sudo systemctl daemon-reload
sudo service docker restart

1.20安装 docker-compose

sudo apt-get install -y docker-compose

验证安装是否成功
docker-compose --version

2.安装 airflow

2.1 新建 airflow 文件夹

设置正确的Airflow用户
在Linux中,需要知道user id 以及设置group id为0,否则在dags、 logs、 plugins中的文件将由root用户创建。这里我们需要配置AIRFLOW_UID mkdir -p /usr/local/airflow
cd /usr/local/airflow
mkdir -p ./dags ./logs ./plugins
echo -e "AIRFLOW_UID=$(id -u)" > .env 备注:
./dags 我们可以将我们写的DAG文件放置到这里。
./logs 存放来源于任务执行器与调度器的日志。
./plugins 存放一些我们自定义的插件。

2.2要在 Docker Compose 上部署 Airflow,

官网上直该获取 docker-compose.yaml。
地址:
curl -LfO 'https://airflow.apache.org/docs/apache-airflow/2.6.0/docker-compose.yaml'
备注:如果网络超时就手动下载在上传到服务器 初始化数据库
docker-compose up airflow-init
运行Airflow 启动所有服务 #建议第一次运行时不要加-d,查看日志运行
docker-compose up -d
#Ctrl+C停止,然后重新启动一下
docker-compose down
docker-compose up -d
登录airflow
地址:http://localhost:8080
登录名/密码 :airflow airflow
检查容器状态
docker ps

3 常用命令

启动Airflow服务:     				docker-compose up
后台启动Airflow服务: docker-compose up -d
停止Airflow服务: docker-compose down
列出正在运行的Airflow容器: docker ps
查看镜像 docker images
查看docker状态 sudo systemctl status docker
进入某个Airflow容器的终端: docker exec -it <container_name> bash 备注:<container_name>为容器名或ID
显示Airflow服务的日志: docker-compose logs [-f] [service_name] 备注: -f参数表示实时跟踪日志,service_name参数表示服务名,默认为所有服务。
构建Airflow镜像 docker-compose build
清除未使用的镜像、容器、网络和卷: docker system prune
查看Airflow所在的网络IP地址: docker network inspect airflow-stack_airflow-net | grep Gateway 备注:irflow-stack_airflow-net表示Docker Compose文件中定义的Airflow网络名
docker 保存镜像 docker save -o airflow2.tar apache/airflow:2.6.0
tar 文件导入到另一台机器上 docker load -i airflow2.tar

可以参考文献:

			https://github.com/puckel/docker-airflow
https://blog.csdn.net/qq_35491275/article/details/121981215
https://blog.51cto.com/helpdesk/5651419?articleABtest=1

CSDN 狗都不用的,欢迎各位大佬指点不足支持,一起学习和交流

QQ 897252348

Docker安装Airflow的更多相关文章

  1. 调度系统Airflow1.10.4调研与介绍和docker安装

    Airflow1.10.4介绍与安装 现在是9102年,8月中旬.airflow当前版本是1.10.4. 随着公司调度任务增大,原有的,基于crontab和mysql的任务调度方案已经不太合适了,需要 ...

  2. 在docker容器下安装airflow

    本人的环境是基于centos7下来安装的 一.安装docker  下载docker安装包,下载地址:https://download.docker.com/linux/static/stable/x8 ...

  3. 理解Docker(1):Docker 安装和基础用法

    本系列文章将介绍Docker的有关知识: (1)Docker 安装及基本用法 (2)Docker 镜像 (3)Docker 容器的隔离性 - 使用 Linux namespace 隔离容器的运行环境 ...

  4. docker安装

    系统要求:需要一个64位的centos7操作系统和版本3.10或更高版本的Linux内核 开始安装: uname -r   //查看内核版本yum -y update //更新系统更新到最新 #安装d ...

  5. 2. Docker - 安装

    一.Docker介绍 1. Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器上, 也可以实现虚拟化. 容器时完全使用沙 ...

  6. Docker 安装部署

    Docker学习笔记 一.Ubuntu Docker 安装 (1).获取最新版本Docker安装包 lyn@lyn:/data/docker$ sudo wget -qO- https://get.d ...

  7. docker 安装

    Docker使用了一种叫AUFS的文件系统,这种文件系统可以让你一层一层地叠加修改你的文件,最底下的文件系统是只读的,如果需要修改文件,AUFS会增加一个可写的层(Layer),这样有很多好处,例如不 ...

  8. Docker安装及基本使用方法

    Docker安装 CentOS6上安装Docker # yum -y install epel-release # yum -y install docker-io CentOS7上安装Docker ...

  9. Mac 下 docker安装

    http://www.th7.cn/system/mac/201405/56653.shtml Mac 下 docker安装 以及 处理错误Cannot connect to the Docker d ...

  10. docker安装caffe

    [最近一直想要学习caffe,但是苦苦纠结于环境安装不上,真的是第一步都迈不出去,还好有docker的存在!下面,对本人如何利用docker安装caffe做以简单叙述,不属于教程,只是记录自己都做了什 ...

随机推荐

  1. windows2003 的安装以及安装时遇到的问题

    windows2003 的安装以及安装时遇到的问题 简介:Windows Server 2003是微软于2003年3月28日发布的基于Windows XP/NT5.1开发的服务器操作系统,并在同年4月 ...

  2. vulnhub靶场之MOMENTUM: 1

    准备: 攻击机:虚拟机kali.本机win10. 靶机:Momentum: 1,下载地址:https://download.vulnhub.com/momentum/Momentum.ova,下载后直 ...

  3. 【LeetCode2180】[Go/C++/C#/Ruby/Swift/Kotlin/Rust/PHP/TS/Racket/Dart/Java/Elixir/Scala/Erlang] 统计各位数字之和为偶数的整数个数

    目录 题解地址 代码 golang c++ C# ruby swift kotlin rust php typescript racket dart java elixir scala erlang ...

  4. 太坑了,我竟然从RocketMQ源码中扒出了7种导致消息重复消费的原因

    大家好,我是三友~~ 在众多关于MQ的面试八股文中有这么一道题,"如何保证MQ消息消费的幂等性". 为什么需要保证幂等性呢?是因为消息会重复消费. 为什么消息会重复消费? 明明已经 ...

  5. Activiti 7 启动流程实例

    首先,考虑下面这样一个流程图 主要的流程定义如下: <process id="demo" name="demo" isExecutable="t ...

  6. Redis事件机制(未写完)

    Redis服务器是一个事件驱动程序,服务器需要处理以下两类事件: 文件事件:Redis通过套接字与客户端连接,文件事件是服务器对套接字操作的抽象. 时间事件:Redis服务器中的一些操作需要给定的时间 ...

  7. TypeScript 学习笔记 — 基于对象操作的内置类型的使用(十二)

    目录 1.Partial 转化可选属性 (?) 2.Required 转化必填属性 (-?) 3.Readonly 转化仅读属性 (readonly) Mutate(非内置,与 Readonly 相对 ...

  8. 【CTF】系统调用号查询表

    32位 #ifndef _ASM_X86_UNISTD_32_H #define _ASM_X86_UNISTD_32_H 1 #define __NR_restart_syscall 0 #defi ...

  9. 月光宝盒(vivo流量录制回放平台)正式对外开源

    作者:vivo 互联网服务器团队- Liu Yanjiang 月光宝盒是一个基于流量录制回放的自动化测试平台,通过录制回放取代编写脚本进行自动化回归,提升测试效率和覆盖率.因为其解决方案具有很强的通用 ...

  10. pysimplegui之第一个程序,包括回调函数,事件,阻塞等待内容

    自定义窗口 API 调用(您的第一个窗口) 总结一下:我遇到的坑, 比如拿输入框的内容的时候可以直接通过value[key] 几种窗口模式就是什么时候用timeout这个参数 关闭窗口可以的一边形式 ...