OpenSeaOtter使用手册-安装

news/2025/1/17 3:45:37/
OpenSeaOtter是一个易于安装和使用的容器镜像仓库,是现实了docker registry api v2版本。
OpenSeaOtter包含以下步骤:
  1. 下载最新二进制版本
  2. 初始化配置
  3. 安装linux服务
  4. 启动服务
  5. 接入到OpenLinkSaas项目中(可选步骤)
  6. 创建验证密钥
  7. 创建镜像分组

下载

你可以从 GitCode - 全球开发者的开源社区,开源代码托管平台下载最新的二进制文件(so_server)。目前so_server只支持x86_64的linux系统,如果你是linux是其他指令集架构,你需要自己下载代码编译。
下载完文件后,需要给文件加上执行权限
# chmod a+x so_server

初始化配置

以root用户在linux下运行
# ./so_server config init --domain [DOMAIN] --tlsCertFile [CERT_FILE] --tlsKeyFile [KEY_FILE]
其中DOMAIN是访问服务的域名地址,是必须的参数。
--tlsCertFile 和 --tlsKeyFile是可选参数,指定后程序可以提供https服务。
命令执行后,会生成/etc/seaotter/config.yaml文件。如果文件已经存在,可以使用--force参数来重置配置。

安装linux服务

以root用户在linux下运行
# ./so_server service install
这个命令执行后,会进行如下操作:
  1. 服务so_server到/usr/sbin/seaotter
  2. 增加/usr/sbin/seaotter可执行权限
  3. 把/usr/sbin/seaotter owner设置为seaotter:seaotter
  4. 调用setcap为/usr/sbin/seaotter增加绑定1024以下端口的权限
  5. 创建数据目录/var/lib/seaotter
  6. 生成systemd文件 /usr/lib/systemd/system/seaotter.service
  7. reload systemd

启动服务

以root用户在linux下运行
# systemctl start seaotter

接入到OpenLinkSaas项目中(可选步骤)

使用./so_server config addRemote即可连接到OpenLinkSaas项目中。

创建验证密钥

在使用docker命令进行pull和push时,我们需要身份验证,你可以通过命令行上增加--username和--password,也可以通过docker login.
在终端下运行/usr/sbin/seaotter auth addSecret [USERNAME] [PASSWORD]
USERNAME为密钥用户名
PASSWORD为密钥密码
目前只支持basic auth。

创建镜像分组

创建镜像分组的时候,需要指定pull和push对应的密钥用户名。
在终端下运行/usr/sbin/seaotter group addGroup --pullSecName [USERNAME] --pushSecName [USERNAME] [GROUPNAME]
GROUPNAME是你要创建的分组名称,目前只能由下划线,数据和字母组成。
--pullSecName和--pushSecName可指定多次,这样就能设置多个用户了。

代码地址

我们的项目是开源的。
目前放在 GitCode - 全球开发者的开源社区,开源代码托管平台,访问以下几个项目
  • so_proto 通讯协议定义
  • so_proto_gen_go 通讯协议生成的go代码
  • so_proto_gen_rust 通讯协议生成的rust代码
  • so_server 主服务程序

http://www.ppmy.cn/news/1563777.html

相关文章

Open FPV VTX开源之第一次出图

Open FPV VTX开源之第一次出图 1. 源由2. 连线2.1 飞控2.2 调试 3. serial3.1 启动log - uboot3.2 登录版本 - linux3.3 获取有线IP 4. linux4.1 ssh登录4.2 tfCard 5. PixelPilot出图6. 总结7. 参考资料8. 补充8.1 8812AU网卡8.2 DEBUG串口部分乱码8.3 偶尔启动卡住8.4 花屏、…

深入浅出:React 前端框架解析与应用

引言 随着前端开发技术的不断发展,现代化的前端框架成为了提升开发效率、优化用户体验和构建复杂应用的关键工具。在众多的前端框架中,React凭借其简洁、高效、可扩展的特点,已成为目前最流行的前端框架之一。它由Facebook于2013年发布&…

游戏引擎学习第77天

仓库: https://gitee.com/mrxiao_com/2d_game 回顾昨天的 bug 今天我们继续开发进度,进行调试昨天代码的问题,主要是关于如何跟踪玩家和敌人在世界中的高度位置。虽然我们做的是一款 2D 游戏,但我们希望能够处理多层的房间,玩家…

STM32 FreeRTOS时间片调度---FreeRTOS任务相关API函数---FreeRTOS时间管理

目录 时间片调度简介 FreeRTOS任务相关API函数介绍 延时函数介绍 时间片调度简介 在FreeRTOS中,同等优先级的任务会轮流分享相同的CPU时间,这个时间被称为时间片。在这里,一个时间片的长度等同于SysTick中断的周期。 FreeRTOS任务相关API…

C++实现设计模式---备忘录模式 (Memento)

备忘录模式 (Memento) 备忘录模式 是一种行为型设计模式,它允许在不破坏封装的前提下,捕获和恢复对象的内部状态。通过备忘录模式,可以在程序运行时存储某个对象的历史状态,并在需要时恢复。 意图 提供一种方法,在不…

ansible 检查目录大小

检查目录大小 worker_du.yml# ansible-playbook -i hosts worker_du.yml --limit w10 --- - name: 检查目录大小hosts:- w10 # 可以根据需要修改目标主机# 可以添加更多主机tasks:- name: 获取每台主机 /root/worker01 目录大小shell: du -sh /root/worker01/ | awk {print …

干货答疑分享记录:as导入问题,LSP含义,分屏进入SplashScreen

背景: vip学员群经常会有学员遇到一些常见的android framework开发问题,近期收集整理一些疑问,主要有以下3个: 1、android studio对源码进行导入时候,老是无法跳转到系统source code 2、学员在群里询问dumpOtherPro…

ChatGLM:从GLM-130B到GLM-4全系列大语言模型

摘要 我们介绍了ChatGLM,这是一个不断进化的大语言模型系列,我们一直在持续开发中。本报告主要聚焦于GLM-4语言系列,包括GLM-4、GLM-4-Air和GLM-4-9B。它们代表了我们从ChatGLM前三代中汲取的所有见解和经验教训所训练出的最强大模型。迄今为…