DockerCompose拉取DockerHub镜像,并部署OpenMetaData

news2024/9/23 3:15:15

参考博主:http://t.csdnimg.cn/i49ET

一、DockerCompose拉取DockerHub镜像


方法一(不太行):

在daemon.json文件中添加一些国内还在服务的镜像站(可能某些镜像会没有)

([ -f /etc/docker/daemon.json ] || mkdir -p /etc/docker) && echo '{ "registry-mirrors" : [ "https://docker.m.daocloud.io", "https://noohub.ru", "https://huecker.io", "https://dockerhub.timeweb.cloud" ] }' > /etc/docker/daemon.json && sudo systemctl restart docker && sleep 1 && docker info | grep -A 4 "Registry Mirrors"

方法二(亲测可用):

 2、使用Github Action + Skopeo 工具将镜像从Docker Hub同步到阿里云个人镜像仓库中,再从阿里云个人镜像仓库中拉取

必要条件:魔法、GitHub账号、阿里云账号、DockerHub账号

阿里

(1)登陆https://help.aliyun.com/zh/acr/?source=5176.11533457&userCode=uelj47qf 

选择容器服务、容器镜像服务,创建一个个人版实例

(2)点击”个人实例“进去新建一个命名空间,并设置一个访问凭证密码

GitHub

 (1)然后访问GitHub,登陆账户后新建一个仓库,我这里新建的仓库名为”docker-register“

(2)点击进入仓库,然后点击setting,填入DcokerHub的账密

密码同理

(3)再点击仓库中的“Action”,我这里是已经有工作流了,你们的新仓库会有一个选项“simple workflow”,新建一个workflow,修改文件内容

 文件内容如下:

记得修改username和password这两行,修改为刚刚的阿里云账号和设置的固定访问密码,最后一行需要更改为源和目标的仓库名称和镜像名称。

首先创建阿里的镜像仓库(分类存储)

name: Sync Image to Aliyun  Example
 
on:
  push:
    branches: [ "main" ]
  pull_request:
    branches: [ "main" ]
 
jobs:
  build:
    runs-on: ubuntu-latest
 
    steps:
    - name: Git pull
      uses: actions/checkout@v3
      
    - name: Set up Docker Buildx
      uses: docker/setup-buildx-action@v2.9.1
 
    - name: Login to Docker Hub
      uses: docker/login-action@v2.2.0
      with:
        registry: registry.cn-chengdu.aliyuncs.com #注意这里
        username: 阿里云账号
        password: 固定访问密码
        logout: false
        
    - name: Use Skopeo Tools Sync Image to Docker Hub
      run: |
         skopeo copy docker://mysql:8.0.18 docker://registry.cn-chengdu.aliyuncs.com/cqgcxy1227/mysql:8.0.18
      # 使用 skopeo 工具将镜像同步到阿里云个人仓库中,使用时请自行源和目标修改仓库名称和镜像名称
 

保存配置,点击确定

再次点击actions;等待同步 绿色即为成功,此时返回阿里的mysql仓库查看

至此成功

如何使用(阿里有明确教程)

后续修改使用

后续如需拉取别的只需在github上修改配置文件即可:

二、部署OpenMetaData

参考官网教程OpenMetadata 文档:立即获取帮助 (open-metadata.org)

必要条件:docker(20.10.0及以上)、Docker Compose(v2.2.3及以上)

1.在 Linux 上安装 Docker

2.在 Linux 上安装 Docker Compose

(1)执行以下命令,下载当前稳定版的 Docker Compose

DOCKER_CONFIG=${DOCKER_CONFIG:-$HOME/.docker}

mkdir -p $DOCKER_CONFIG/cli-plugins
curl -SL https://github.com/docker/compose/releases/download/v2.2.3/docker-compose-linux-x86_64 -o
$DOCKER_CONFIG/cli-plugins/docker-compose

此命令为$HOME目录下的活动用户安装 Compose V2。要为系统上的所有用户安装 Docker Compose,请替换为 。 ~/.docker/cli-plugins/usr/local/lib/docker/cli-plugins

(2)将可执行文件权限应用于二进制文件

chmod +x $DOCKER_CONFIG/cli-plugins/docker-compose

(3)测试安装

docker compose version
> Docker Compose version v2.2.3

3.使用 Docker 部署 OpenMetadata 的步骤

(1)为 OpenMetadata 创建一个新目录并导航到该目录。

mkdir openmetadata-docker && cd openmetadata-docker

(2)从 GitHub 版本下载 Docker Compose.yml 文件 Release OpenMetadata 1.4.4 Release · open-metadata/OpenMetadata (github.com)

wget https://github.com/open-metadata/OpenMetadata/releases/download/1.4.1-release/docker-compose.yml

(3)修改 Docker Compose.yml 文件配置的镜像源——使用上面的方法将原文件的镜像拉取到阿里私人镜像方库(因为目前不能直接使用原文件内的镜像地址直接拉取)

首先我们将所有image后面的镜像拉取到自己的阿里镜像仓库(请查看第一部分如何如何拉取dockerhub的镜像到阿里私人镜像仓库)

将文件内image:后的所有地址改为自己拉取后的地址

修改成功后切换到docker-compose.yml文件所在目录

4.执行命令

这里我使用的自己配置的docker-compose.yml文件启动的

docker-compose -f docker-compose.yml up --detach # 使用 -f 指定一个完整的 Docker Compose 配置文件

docker compose --env-file ./env-mysql up --detach # 官网指令——使用 --env-file 指定一个环境变量文件来配置服务的环境变量

5.部署成功,访问页面

http://localhost:8585/

可以自己注册,也可以使用初始root账密:

账号:admin@openmetadata.org
密码:admin

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1925003.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

RK3568笔记三十五:LED驱动开发测试

若该文为原创文章,转载请注明原文出处。 字符设备驱动程序的基本框架,主要是如何申请及释放设备号、添加以及注销设备,初始化、添加与删除 cdev 结构体,并通过 cdev_init 函数建立 cdev 和 file_operations 之间的关联&#xff0c…

每日一练:奇怪的TTL字段(python实现图片操作实战)

打开图片,只有四种数字:127,191,63,255 最大数字为255,想到进制转换 将其均转换为二进制: 发现只有前2位不一样 想着把每个数的前俩位提取出来,组成新的二进制,然后每…

Python中的数据容器及其在大数据开发中的应用

在Python编程中,数据容器是存储和组织数据的基本工具。作为大数据开发者,了解并灵活运用各种容器类型对于高效处理大规模数据至关重要。今天,我们将从Set出发,探讨Python中的各种数据容器,以及它们在大数据处理中的应用…

社交App iOS审核中的4.3问题:深入分析与解决策略

社交App审核中的4.3问题:深入分析与解决策略 在iOS应用开发和审核过程中,开发者经常会遇到苹果审核4.3问题。这一问题往往涉及应用的设计和内容重复性,导致应用被拒绝上架。为了帮助开发者更好地理解和解决这一问题,本文将对4.3问…

基于复旦微JFMQL100TAI的全国产化FPGA+AI人工智能异构计算平台,兼容XC7Z045-2FFG900I

基于上海复旦微电子FMQL45T900的全国产化ARM核心板。该核心板将复旦微的FMQL45T900(与XILINX的XC7Z045-2FFG900I兼容)的最小系统集成在了一个87*117mm的核心板上,可以作为一个核心模块,进行功能性扩展,能够快速的搭建起…

C语言操作符优先级

1 C语言操作符优先级 熟悉操作符的优先级,避免意外的求值顺序。 2. 运算符优先级记忆方法 利用优先级表或常见记忆口诀来记忆运算符的优先级。

嵌入式人工智能应用-篇外-烧写说明

1 外部接线 1.1 前期准备 需要准备的工具 ⚫ 一根 Mini USB 线 ⚫ 嵌入式人工智能教学科研平台 ⚫ 12V DC 电源 ⚫ 一台电脑 1.2 接线 12V DC 电源接入 12V IN;Mini USB 线连接 USB OTG;如果有两条 Mini USB 线,可以接入 UART2 to USB 口…

python2

一、条件语句 具体有如下:if、if......elif、if......elif......else 注意格式: if后面的条件表达式没有(),以:作为结尾对于多分支的条件,不是写成else if 而是elif注意条件下一行要有缩进 …

Stable Diffusion 使用

目录 背景 最简单用法 进阶用法 高手用法 safetensor 一、概述 二、主要特点 背景 Stable Diffusion 开源后,确实比较火,上次介绍了下 Stable Diffusion 最简单的concept。今天继续介绍下,以Liblib 为例,介绍下如何使用参…

排序——交换排序

在上篇文章我们详细介绍了排序的概念与插入排序,大家可以通过下面这个链接去看: 排序的概念及插入排序 这篇文章就介绍一下一种排序方式:交换排序。 一,交换排序 基本思想:两两比较,如果发生逆序则交换…

Java | Leetcode Java题解之第234题回文链表

题目: 题解: class Solution {public boolean isPalindrome(ListNode head) {if (head null) {return true;}// 找到前半部分链表的尾节点并反转后半部分链表ListNode firstHalfEnd endOfFirstHalf(head);ListNode secondHalfStart reverseList(firs…

《BASeg: Boundary aware semantic segmentation for autonomous driving》论文解读

期刊:Neural Networks | Journal | ScienceDirect.com by Elsevier 年份:2023 代码:https://github.com/Lature-Yang/BASeg 摘要 语义分割是自动驾驶领域街道理解任务的重要组成部分。现有的各种方法要么专注于通过聚合全局或多尺度上下文…

读人工智能全传12人工智能导致的问题1

1. 人工智能会导致什么问题 1.1. 人工智能是一门通用技术:它的应用仅仅受限于我们的想象 1.1.1. 所有的技术都可能产生意想不到的效果,未来几十年甚至几百年内都存在可能性 1.2. 所有的技术都可能被滥用 1.2.1. 我们的无名氏祖先率先用上了火&#x…

C#统一委托Func与Action

C#在System命名空间下提供两个委托Action和Func,这两个委托最多提供16个参数,基本上可以满足所有自定义事件所需的委托类型。几乎所有的 事件 都可以使用这两个内置的委托Action和Func进行处理。 Action委托: Action定义提供0~16个参数&…

【深度学习】PyTorch深度学习笔记01-Overview

参考学习:B站视频【《PyTorch深度学习实践》完结合集】-刘二大人 ------------------------------------------------------------------------------------------------------- 1. 基于规则的深度学习 2. 经典的机器学习——手动提取一些简单的特征 3. 表示学习…

【接口设计】为 APP、PC、H5 网页提供统一风格的 API(实战篇,附源码地址)

为 APP、PC、H5 网页提供统一风格的 API 1.实现文章实体2.实现数据持久层3.实现服务接口和服务接口的实现类3.1 创建服务接口3.2 编写服务接口的实现 4.处理返回结果4.1 实现响应的枚举类4.2 实现返回的对象实体4.3 封装返回结果 4.统一处理异常4.1 全局捕捉异常4.2 自定义异常…

【防火墙】防火墙安全策略用户认证综合实验

实验拓扑及要求 拓扑搭建及IP配置 防火墙(总公司)和交换机(汇聚生产区和办公区)的接口配置 生产区在vlan2,办公区在vlan3,防火墙在G1/0/3接口上创建子接口G1/0/3.1和G1/0/3.2对两个区域分别进行管理 交换…

时间轮算法理解、Kafka实现

概述 TimingWheel,时间轮,简单理解就是一种用来存储若干个定时任务的环状队列(或数组),工作原理和钟表的表盘类似。 关于环形队列,请参考环形队列。 时间轮由两个部分组成,一个环状数组&…

企业智能制造赋能的环境条件为什么重要?需要准备什么样的环境?

在全球制造业不断演进的今天,智能制造已经成为推动行业创新和转型的关键力量。它不仅代表了技术的革新,更是企业管理模式和运营思路的全面升级。然而,智能制造的落地实施并非一蹴而就,它需要企业在环境条件上做好充分的准备&#…

Study--Oracle-07-ASM自动存储管理(一)

一、ASM实例和数据库实例对应关系 1、ASM是Oracle 10g R2中为了简化Oracle数据库的管理而推出来的一项新功能,这是Oracle自己提供的卷管理器,主要用于替代操作系统所提供的LVM,它不仅支持单实例,同时对RAC的支持也是非常好。ASM可…