zoukankan      html  css  js  c++  java
  • CentOS7下使用Sonatype Nexus3搭建Docker私有仓库

    相关资料:

      Sonatype Nexus3官方网站:https://www.sonatype.com/download-oss-sonatype

      Sonatype Nexus3 Docker Hub地址:https://hub.docker.com/r/sonatype/nexus3/

      Sonatype Nexus3一些介绍及使用:https://yeasy.gitbooks.io/docker_practice/repository/nexus3_registry.html

      本文参考文章:https://www.cnblogs.com/holdengong/archive/2019/09/05/11468290.html,https://blog.csdn.net/supertor/article/details/83146596

    ⒈安装Docker(必要条件)

      请参考https://www.cnblogs.com/fanqisoft/p/10439620.html安装Docker

    ⒉安装Nexus3仓储

      1.拉取sonatype/nexus3镜像

    docker pull sonatype/nexus3

      2.启动容器

    docker run -d --name nexus3 --restart=always -p 5000:5000 -p 8081:8081 --mount src=nexus-data,target=/nexus-data sonatype/nexus3

      **5000端口是用于镜像仓库的服务端口 8081 端口是nexus的服务端口

      3.访问管理页面

      http://localhost:8081

      4.登录

    //在docker目录下查找admin.password文件并查看
    cat `find /var/lib/docker -name admin.password -print`
    //这一串guid就是默认密码
    d374c028-9760-4dd8-b911-3cb67ebddba5

      5.创建仓储

      点击齿轮 - Repositories - Create repository - 选择 docker (hosted)

      

    Name: 仓库的名称
    HTTP: 仓库单独的访问端口
    Enable Docker V1 API: 如果需要同时支持 V1 版本请勾选此项(不建议勾选)。
    Hosted -> Deployment pollcy: 请选择 Allow redeploy 否则无法上传 Docker 镜像。
    其它的仓库创建方法请各位自己摸索,还可以创建一个 docker (proxy) 类型的仓库链接到 DockerHub 上。再创建一个 docker (group) 类型的仓库把刚才的 hosted 与 proxy 添加在一起。主机在访问的时候默认下载私有仓库中的镜像,如果没有将链接到 DockerHub 中下载并缓存到 Nexus 中。

       编写信息完成后选择“Create repository”按钮

      6.安全设置

      官方介绍:https://help.sonatype.com/repomanager3/formats/docker-registry/authentication

      点击Realms菜单 -  把 Docker Bearer Token Realm 移到右边的框中点击Save保存。

      添加用户规则:菜单 Security->Roles->Create role 在 Privlleges 选项搜索 docker 把相应的规则移动到右边的框中然后保存。

      添加用户:菜单 Security->Users->Create local user 在 Roles 选项中选中刚才创建的规则移动到右边的窗口保存。

      7.访问仓储(二选一)

        1.Nginx加密代理,使用SSL访问(需要生成证书),略。

        2.配置Docker http可信地址 

    //编辑docker服务端设置
    vim /etc/docker/daemon.json
    
    //将下面内容加到配置文件中
    "insecure-registries":["http://localhost:5000"]
    
    //重载配置文件
    systemctl daemon-reload
    
    //重启Docker
    systemctl restart docker
    
    //查看设置是否生效 
    docker info

      8.登录nexus私有仓库,测试是否可以连接成功

    //输入admin账号密码
    docker login http://localhost:5000

       **登录后用户信息保存在$HOME/.docker/config.json,如果需要切换账号就清空该文件内容即可。

      9.测试

        1.制作image

    //拉取hello-world镜像作为示例
    docker pull hello-world
    //制作私有镜像
    docker tag hello-world localhost:5000/hello-world

        2.推送到私有仓库

    //推送到私有服务器
    docker push localhost:5000/hello-world

      10.查看

       nexus还可以管理nuget,maven和其他包,可以作为企业集中资源管理中心。

      

  • 相关阅读:
    UIWebView 获取当前的javascript上下文,并js,oc互调
    socket.io emit 常见用法
    ubuntu nginx 安装 certbot(letsencrypt)
    vi 常用命令
    html5 的缓存应用 manifest="filename.appcache"
    swift 与 指针初级使用
    xcode7,ios9 部分兼容设置
    xampp 修改mysql 密码
    mac下xampp简单虚拟主机配置
    Python学习笔记之六:在VS中调用Python
  • 原文地址:https://www.cnblogs.com/fanqisoft/p/11495664.html
Copyright © 2011-2022 走看看