MacOS搭建docker本地私有镜像库

embedded/2024/9/24 15:18:19/

相关环境

macOS: bigsur 11.7.8
docker desktop: 4.22.0 
docker engine: 24.0.5

准备工作

本机已经安装好docker desktop,未安装的自行参考其他教程。如果不能翻墙,可以修改本地的镜像地址,可在docker desktop 设置中的docker engine中修改,如下图:

也可直接修改 ~/.docker/daemon.json文件,然后重启docker,如下图:

安装registry私有仓库

下载并运行 registry 私有仓库

docker run -d -p 5000:5000 --restart=always -v /opt/docker/registry:/var/lib/registry --name registry registry:latest 

 查看私有仓库中的镜像

curl 127.0.0.1:5000/v2/_catalog

修改 ~/.docker/daemon.json文件,增加insecure-registries,以此来避免docker对http的校验,地址可以设为域名或者其他内网地址,供其他用户使用。

 至此本地私有镜像库已安装完成,目前没有设置用户密码登安全设置,可参考其他教程进行设置。

安装Registry WebUI

为了查看私有库里的镜像更加方便,可以安装webui,通过浏览器来查看镜像。

下载并运行 Docker Registry WebUI

docker run -d -p 5001:80 --restart=always --env ENV_DOCKER_REGISTRY_HOST=172.17.0.2 --env ENV_DOCKER_REGISTRY_PORT=5000 --name registry-web konradkleine/docker-registry-frontend:v2

 注意:其中ENV_DOCKER_REGISTRY_HOST不能填宿主机IP(否则报503错误),要填registry容器的IP地址。

浏览器访问:http://localhost:5001/,可以查看私有库下的所有镜像

本地上传镜像到私有库

本地上传需要打包时,镜像名称包含本地私有库地址,例如:

### 最后的点为Dockerfile所在目录
docker build -t 127.0.0.1:5000/test-app:1.0.0 .

打包完成后推送至私有库

docker push 127.0.0.1:5000/test-app:1.0.0


http://www.ppmy.cn/embedded/41840.html

相关文章

LeetCode 每日一题 ---- 【2105. 给植物浇水 II】

LeetCode 每日一题 ---- 【2105. 给植物浇水 II】 2105.给植物浇水II方法:模拟双指针 2105.给植物浇水II 方法:模拟双指针 今天是给植物浇水II,昨天是I,本质上和昨天的没有区别,都是模拟,今天额外需要注意…

Golang reflect.MakeFunc() 的用法及示例

Golang 作为一门强类型语言,在某些场景下,我们需要动态地创建函数或者修改函数,这个时候就可以使用反射的方法去实现。在反射中,我们可以使用 reflect.MakeFunc() 方法来创建一个新的函数,本文我将介绍使用反射及其 Ma…

HarmonyOS开发案例:【生活健康app之获取成就】(3)

获取成就 本节将介绍成就页面。 功能概述 成就页面展示用户可以获取的所有勋章,当用户满足一定的条件时,将点亮本页面对应的勋章,没有得到的成就勋章处于熄灭状态。共有六种勋章,当用户连续完成任务打卡3天、7天、30天、50天、…

Python图形复刻——绘制母亲节花束

各位小伙伴,好久不见,今天学习用Python绘制花束。 有一种爱,不求回报,有一种情,无私奉献,这就是母爱。祝天下妈妈节日快乐,幸福永远! 图形展示: 代码展示: …

容联云零代码平台容犀desk:重新定义坐席工作台

在数智化浪潮的推动下,企业亟待灵活适应市场变化、快速响应客户需求,同时还要控制成本并提升效率,传统的软件开发模式因开发周期长、成本高、更新迭代慢等问题,逐渐难以满足企业灵活多变的业务需求。 容犀Desk,观察到…

【Go语言入门学习笔记】Part1.梦开始的地方

一、前言 经过一系列的学习,终于有时间来学习一些新的语言,Go语言在现在还是比较时髦的,多一个技能总比不多的好,故有时间来学一下。 二、配置环境 按照网络中已有的配置方法配置好,本人采用了Jetbrain的Goland&#…

WebRTC 的核心:RTCPeerConnection

WebRTC 的核心:RTCPeerConnection WebRTC 的核心:RTCPeerConnection创建 RTCPeerConnection 对象RTCPeerConnection 与本地音视频数据绑定媒体协商ICE什么是 Candidate?收集 Candidate交换 Candidate尝试连接 SDP 与 Candidate 消息的互换远端…

Linux提权--定时任务--打包配合 SUID(本地)文件权限配置不当(WEB+本地)

免责声明:本文仅做技术交流与学习... 目录 定时任务 打包配合 SUID-本地 原理: 背景: 操作演示: 分析: 实战发现: 定时任务 文件权限配置不当-WEB&本地 操作演示: 定时任务 打包配合 SUID-本地 原理: 提权通过获取计划任务执行文件信息进行提权 . 1、相对路径和…