飞天使-docker知识点4-harbor

这篇具有很好参考价值的文章主要介绍了飞天使-docker知识点4-harbor。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Harbor


Harbor 是一个用于存储和分发 Docker 镜像的企业级 Registry 服务器,由
vmware 开源,其通过添加一些企业必需的功能特性,例如安全、标识和管理等,
扩展了开源 Docker Distribution。作为一个企业级私有 Registry 服务器,Harbor
提供了更好的性能和安全。提升用户使用 Registry 构建和运行环境传输镜像的
效率。Harbor 支持安装在多个 Registry 节点的镜像资源复制,镜像全部保存在
私有 Registry 中, 确保数据和知识产权在公司内部网络中管控,另外,Harbor
也提供了高级的安全特性,诸如用户管理,访问控制和活动审计等。


误区一: Harbor是负责存储容器镜像的 (Harbor是镜像仓库,那么它就应当是存储镜像的)
其实关于镜像的存储,Harbor使用的是官方的docker registry服务去完成,至于registry是用本地存储或者s3都是可以的,Harbor的功能是在此之上提供用户权限管理、镜像复制等功能,提高使用的registry的效率。

误区二:Harbor镜像复制是存储直接复制 (镜像的复制,很多人以为应该是镜像分层文件的直接拷贝)
其实Harbor镜像复制采用了一个更加通用、高屋建瓴的做法,通过docker registry 的API去拷贝,这不是省事,这种做法屏蔽了繁琐的底层文件操作、不仅可以利用现有docker registry功能不必重复造轮子,而且可以解决冲突和一致性的问题。


下载地址:https://github.com/goharbor/harbor/releases
直接选择编译好的包
 
cd /usr/local/src
wget https://github.com/goharbor/harbor/releases/download/v2.7.3/harbor-offline-installer-v2.7.3.tgz
解压
ln -sv /usr/local/src/harbor /usr/local/harbor

安装docker-compose 

curl -L "https://github.com/docker/compose/releases/download/1.23.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose

chmod +x /usr/local/bin/docker-compose
docker-compose --version


harbor.yml 就是harbor的配置文件
harbor的数据目录为/data
编辑harbor.yml,修改hostname、https证书路径、admin密码

如果是http  则将https 全部注释了,包括证书路径

1. 配置官方 yum 源

$ sudo yum install -y yum-utils
$ sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

2. 安装 Docker

$ sudo yum install docker-ce docker-ce-cli containerd.io
3. 启动 Docker

$ sudo systemctl start docker
4. 查看 Docker 版本号,确认安装正确。

$ docker version


注意:每次修改完配置文件后都需要运行
./prepare 
然后在运行
./install.sh


harbor.yml 配置文件如下

# 配置如下
hostname: harbor.test.com
port: 9010
harbor_admin_password: phpdev-pass
# The location to store harbor's data
data_volume: /usr/src/harbor/data
# The directory to store store log
location: /var/log/harbor
 

安装完成harbor 官方建议方式之后查看 images


[root@light-test ~[]# docker images
REPOSITORY                      TAG         IMAGE ID       CREATED        SIZE
nginx                           v1          35b319a48e3b   24 hours ago   669MB
tomcat                          latest      e76527586e57   11 days ago    454MB
goharbor/harbor-exporter        v2.7.3      44f17702b0d6   3 months ago   96.9MB
goharbor/chartmuseum-photon     v2.7.3      e21f928bea75   3 months ago   229MB
goharbor/redis-photon           v2.7.3      68ef52d98298   3 months ago   120MB
goharbor/trivy-adapter-photon   v2.7.3      aabf279df9cc   3 months ago   463MB
goharbor/notary-server-photon   v2.7.3      992cbac9892b   3 months ago   113MB
goharbor/notary-signer-photon   v2.7.3      e384f965170c   3 months ago   110MB
goharbor/harbor-registryctl     v2.7.3      0adcdbbc67c8   3 months ago   140MB
goharbor/registry-photon        v2.7.3      91fa7c3c922c   3 months ago   78.7MB
goharbor/nginx-photon           v2.7.3      a780e583d37f   3 months ago   116MB
goharbor/harbor-log             v2.7.3      48a9ddf4a380   3 months ago   128MB
goharbor/harbor-jobservice      v2.7.3      265eda6d72aa   3 months ago   260MB
goharbor/harbor-core            v2.7.3      1a415c050c9c   3 months ago   222MB
goharbor/harbor-portal          v2.7.3      9a0f808a9eed   3 months ago   125MB
goharbor/harbor-db              v2.7.3      731c8c0fe6ca   3 months ago   174MB
goharbor/prepare                v2.7.3      36fd5b190502   3 months ago   168MB
mysql                           latest      99afc808f15b   4 months ago   577MB
mysql                           5.7         92034fe9a41f   4 months ago   581MB
jenkins/jenkins                 lts-jdk11   a40a8916af1d   4 months ago   471MB


登录 注意启动的配置文件 harbor.yml 里面配置

停止服务: docker-compose stop
开始服务: docker-compose start
重启服务:docker-compose restart
停止服务并删除容器:docker-compose down
启动服务并运行容器:docker-compose up


飞天使-docker知识点4-harbor,docker,容器,运维

配置docker 使用harbor 仓库上传下载镜像
注意:如果我们配置的是 https 的话,本地 docker 就不需要有任何操作就可以
访问 harbor

如果是http 则需要编辑如下文件

如下,在/etc/docker/daemon.json文件里添加"insecure-registries"配置。(如果还不行,可以尝试将下面添加的地址由"172.16.60.213"改为"http://172.16.60.213")
[root@docker-client ~]# vim /etc/docker/daemon.json
{
    "insecure-registries": [
        "38.50.0..0:8888"
      ]
}

/etc/hosts 文件添加一个域名的解析
 
 [root@light-test harbor[]# docker login 38.50.0..0:8888
Username: admin
Password:
WARNING! Your password will be stored unencrypted in /root/.docker/config.json.
Configure a credential helper to remove this warning. See
https://docs.docker.com/engine/reference/commandline/login/#credentials-store

Login Succeeded

登录的账号密码 保存在这里了
cat /root/.docker/config.json


harbor支持http和https,但如果使用http的话,在拉取镜像的时候,会抛出仓库不受信任的异常。
需要在所有的docker客户端的docker配置文件/etc/docker/daemon.json中添加如下配置:

{
    "insecure-registries": ["https://*.*.*.*"]
}


docker info 中查看 是不是配置好了harbor 地址查看 Insecure Registries: 选项参数

飞天使-docker知识点4-harbor,docker,容器,运维

docker 镜像结合harbor 运行
[root@light-test ~[]# docker tag nginx:v1 38.0.0.3:8888/nginx/nginxv1
[root@light-test ~[]# docker push 38.0.0.3:8888/nginx/nginxv1
Using default tag: latest
The push refers to repository [38.0.0.3:8888/nginx/nginxv1]
756b20a16ba8: Pushed
3c057e1b7942: Pushed
b17962786f9c: Pushed
072efff24baf: Pushed
51646e2b38b3: Pushed
7bf293509842: Pushed
fb82b029bea0: Pushed
latest: digest: sha256:4d414e6bd375797e730cb52712d3802e8b1be5cbaba7171e47745776a5e8af40 size: 1787
[root@light-test ~[]# docker pull 38.0.0.3:8888/nginx/nginx
-bash: dockr: 未找到命令
[root@light-test ~[]# docker pusll 38.0.0.3:8888/nginx/nginx
docker: 'pusll' is not a docker command.
See 'docker --help'
[root@light-test ~[]# docker pull 38.0.0.3:8888/nginx/nginx
Using default tag: latest
latest: Pulling from nginx/nginx
Digest: sha256:4d414e6bd375797e730cb52712d3802e8b1be5cbaba7171e47745776a5e8af40
Status: Downloaded newer image for 38.0.0.3:8888/nginx/nginx:latest
38.0.0.3:8888/nginx/nginx:latest
[root@light-test ~[]# docker images
REPOSITORY                      TAG         IMAGE ID       CREATED        SIZE
38.0.0.3:8888/nginx/nginx     latest      35b319a48e3b   40 hours ago   669MB
38.0.0.3:8888/nginx/nginxv1   latest      35b319a48e3b   40 hours ago   669MB

飞天使-docker知识点4-harbor,docker,容器,运维

参考文档: https://www.cnblogs.com/quqibinggan/p/16880549.html
马哥文章来源地址https://www.toymoban.com/news/detail-757674.html

到了这里,关于飞天使-docker知识点4-harbor的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 飞天使-linux操作的一些技巧与知识点4-ansible常用的技巧,配置等

    ansible 配置文件的优先级 尝试开始进行操作 ansible常用模块 ansible 的playbook 示例 安装php playbook中变量的引用

    2024年02月04日
    浏览(37)
  • 飞天使-k8s知识点18-kubernetes实操3-pod的生命周期

    探针的生命周期 docker 创建:在创建阶段,你需要选择一个镜像来运行你的应用。这个镜像可以是公开的,如 Docker Hub 上的镜像,也可以是你自己创建的自定义镜像。创建自己的镜像通常需要编写一个 Dockerfile,这个文件定义了创建镜像所需的所有步骤,包括基础镜像、需要安

    2024年02月20日
    浏览(50)
  • 飞天使-k8s知识点20-kubernetes实操5-pod更新与暂停-statefulset

    资源调度 Deployment:扩缩容 资源调度 Deployment:更新的暂停与恢复 资源调度 StatefulSet:定义一个有状态服务 headless service 金丝雀发布 参考文档:https://support.huaweicloud.com/basics-cce/kubernetes_0015.html

    2024年02月20日
    浏览(39)
  • 飞天使-k8s知识点12-kubernetes资源对象5-Volume与ConfigMap等

    为什么需要volume ConfigMap Volume nfs挂载volume 持久卷的痛点 参考文档: 作者:又拍云 链接:https://juejin.cn/post/7186925237592653884 来源:稀土掘金

    2024年01月18日
    浏览(38)
  • 飞天使-k8s知识点19-kubernetes实操4-资源调度 标签和选择器:Label与Selector的使用-版本回退

    添加label 资源调度 Deployment:创建与配置文件解析 rs pod deploy 的关联信息展示 Deployment:滚动更新 Deployment:回滚 回退版本实际操作

    2024年02月20日
    浏览(43)
  • linux运维知识点

    Linux作为一种开源操作系统,被广泛地应用于企业、政府和私人用户的计算机系统中,其优越的稳定性、安全性和灵活性使得 Linux 成为了云计算、大数据和人工智能等最热门领域的重要组成部分。对于从事 Linux 运维的人员来说,了解其知识点和技能是必不可少的。本文将从以

    2024年02月15日
    浏览(35)
  • 运维知识点-Sqlite

    2024年01月16日
    浏览(28)
  • 区块链学习笔记(6(1),深入理解Linux运维的核心知识点

    (3)检查创世块文件 (4)  检查通道文件(fabric2.2及以前会用到) 创建节点的方式有两种: (1)在创建任何节点之前,必须在本机上自定义其配置文件。对于peer节点,该文件称为 core.yaml ,而orderer节点的配置文件称为 orderer.yaml; (2)使用一个docker容器,将docker节点跑在一个

    2024年04月29日
    浏览(39)
  • 【MVC】C# MVC基础知识点、原理以及容器和管道

    给自己一个目标,然后坚持一段时间,总会有收获和感悟! 国庆假期马上结束,闲暇时间,重温一遍C#关于MVC的技术,控制器、视图、模型,知识点和原理,小伙伴们还记得吗 学习C# MVC(Model-View-Controller)知识点是很重要的,它是一种常用的Web应用程序开发框架。 以下是关

    2024年02月07日
    浏览(26)
  • Docker知识点整理

    传统的虚拟机,可以虚拟出一条硬件,运行一个完整的操作系统,在这个操作系统上安装和运行所需的软件 容器内的应用可以直接运行在宿主 主机的内核中,容器没有自己的内核,也不用虚拟硬件 (轻便) 每个容器是相互隔离的,每个容器内都有属于自己的文件系统,之间

    2024年02月03日
    浏览(32)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包