Nexus Repository Manager 搭建私有docker仓库

使用容器安装Nexus3

1.下载nexus3的镜像:

docker pull sonatype/nexus3

2.使用镜像启动一个容器:

docker run -d --name nexus  --restart=always -p 5000:5000 -p 8081:8081 sonatype/nexus3

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

3.启动之后我们就可以通过http://服务器IP:8081访问。

默认账号密码为admin/admin123

创建Docker私有仓库

通过浏览器访问Nexus: 
http://服务器IP:8081

点击右上角进行登录,通过初始用户名和密码进行登录(admin/admin123):

点击设置界面,选择Repositories,点击Create repository,如下图所示:

选择仓库类型,这里Docker有三种类型,分别是group、hosted、proxy。这里只演示hosted类型,所以选择docker(hosted),如下图:

注:Docker镜像仓库类型含义解释如下:
  hosted : 本地存储,即同docker官方仓库一样提供本地私服功能

  proxy : 提供代理其他仓库的类型,如docker中央仓库

  group : 组类型,实质作用是组合多个仓库为一个地址

指定docker仓库的名称、指定一个端口用来通过http的方式进行访问仓库、勾选是否支持docker API V1,然后create repository;

因为我们测试的时候不是使用加密的HTTPS进行访问,所以这里需要增加一个docker的启动参数,给他指定私库的地址,如下:

编辑/etc/docker/daemon.json 增加如下内容,当然也可通过启动参数增加,如果出现response https等错误,把http://去掉。

{

........, 
  "insecure-registries":["http://172.xx.xx.60:5000"]

}

重启docker进程: systemctl restart docker

查看docker信息: docker info ,有如下输出即正常

OSType: linux
Architecture: x86_64
Number of Docker Hooks: 3
CPUs: 32
Total Memory: 62.25 GiB
Name: 0006.novalocal
ID: I4YA:R77P:4MMX:V76S:NL4J:XP42:WZFR:5UFD:QRNT:N4GD:54UV:KFXS
Docker Root Dir: /var/lib/docker
Debug Mode (client): false
Debug Mode (server): false
Registry: https://index.docker.io/v1/
WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled
Experimental: false
Insecure Registries:
 172.xx.xx.60:5000
 127.0.0.0/8
Registry Mirrors:
 https://aj2rgad5.mirror.aliyuncs.com
Live Restore Enabled: false
Registries: docker.io (secure)

登录私库

要使用私库进行上传下载需要进行登录连接到Nexus

  docker login http://172.xx.xx.60:5000/

Docker上传镜像到私库

使用docker tag 对镜像进行管理(必须进行此项操作)

  docker tag使用格式:

    docker tag SOURCE_IMAGE[:TAG]  TARGET_IMAGE[:TAG]

  docker tag helolo-world 172.xx.xx.60:5000/hello:v1

  docker push 172.xx.xx.60:5000/hello:v1

示例:使用tag进行打标,正常上传的结果

[[email protected]0006 docker]# docker pull 172.16.20.153:5000/hello:v1
Trying to pull repository 172.xx.xx.60:5000/hello ...
v1: Pulling from 172.16.20.153:5000/hello
Digest: sha256:92c7f9c92844bbbb5d0a101b22f7c2a7949e40f8ea90c8b3bc396879d95e899a
Status: Image is up to date for 172.xx.xx.60:5000/hello:v1

不进行tag打标,会出现denied: requested access to the resource is denied报错

查看镜像

[[email protected]0006 docker]# curl http://172.xx.xx.60:5000/v2/_catalog
{"repositories":["hello"]}
[[email protected]0006 docker]# 

上传完成后,在nexus中对应的docker库中,即可看到此镜像

下载私库中的镜像

1、删除本地上例实验中的镜像(docker rmi 172.xx.xx.60:5000/hello:v1)

[[email protected]0006 ~]# docker rmi 172.xx.xx.60:5000/hello:v1
Untagged: 172.xx.xx.60:5000/hello:v1
Untagged: 172.xx.xx.60:5000/[email protected]:92c7f9c92844bbbb5d0a101b22f7c2a7949e40f8ea90c8b3bc396879d95e899a
[[email protected]0006 ~]# 

2、docker pull 172.xx.xx.60:5000/hello:v1

[[email protected]0006 ~]# docker pull 172.xx.xx.60:5000/hello:v1
Trying to pull repository 172.xx.xx.60:5000/hello ...
v1: Pulling from 172.xx.xx.60:5000/hello
Digest: sha256:92c7f9c92844bbbb5d0a101b22f7c2a7949e40f8ea90c8b3bc396879d95e899a
Status: Downloaded newer image for 172.xx.xx.60:5000/hello:v1
[[email protected]0006 ~]# 

删除私库中的镜像

命令有时候不灵通curl -I -X DELETE http://172.16.20.153:5000/v2/hello/manifests/sha256:92c7f9c92844bbbb5d0a101b22f7c2a7949e40f8ea90c8b3bc396879d95e899a

可以回到浏览器Browse server里面删除

转摘:https://www.cnblogs.com/jihongjun/p/8968901.html

原文地址:https://www.cnblogs.com/linyouyi/p/10218419.html

时间: 2024-10-16 17:15:19

Nexus Repository Manager 搭建私有docker仓库的相关文章

使用 Nexus Repository Manager 搭建私有docker仓库

docker pull sonatype/nexus3 2.使用镜像启动一个容器: docker run -d --name nexus  --restart=always -p 5000:5000 -p 8081:8081 sonatype/nexus3 注:5000端口是用于镜像仓库的服务端口   8081 端口是nexus的服务端口 3.启动之后我们就可以通过http://服务器IP:8081访问. 默认账号密码为admin/admin123 通过浏览器访问Nexus: http://服务

搭建私有 Docker 仓库服务器

Docker Hub 是 Docker 官方的公共仓库服务器,用户在 DockerHub 上只能创建一个私有仓库,这对于有些用户是不够用的,而且 DockerHub 服务器的访问速度也是个很大问题,那么我们希望能在自己本地的服务器上创建一个类似于 DockerHub 仓库服务器供团队使用,这也是可以的. 我测试的环境是 Mac OSX 下,已经通过 Boot2Docker 工具安装好 Docker 的环境,通过 命令boot2docker ip 可以查看虚拟机的 IP 是 192.168.59.

在Kubernetes集群的etcd上搭建私有docker仓库

[[email protected] ~]# yum groupinstall -y "Development Tools" [[email protected] ~]# yum -y install epel-release [[email protected] ~]# yum -y install python-dev* libevent-dev* python-pip* openssl-devel xz-devel libffi-dev* [[email protected] ~

【Docker】(4)搭建私有镜像仓库

[Docker](4)搭建私有镜像仓库 说明 1. 这里是通过阿里云,搭建Docker私有镜像仓库. 2. 这里打包的镜像是从官网拉下来的,并不是自己项目创建的新镜像,主要测试功能 一.搭建过程 首先进入阿里云创建镜像仓库: https://dev.aliyun.com/search.html-->点击管理中心(初次使用会提示开通,然后设置密码) 然后创建命名空间和镜像仓库: 有关docker拉取和推送指令,点击上图的中管理,就能看到. 1.登录阿里云 docker login [email p

Maven私服搭建(Nexus Repository Manager 3)

下载和安装 下载地址:https://help.sonatype.com/repomanager3/download 注意:Nexus Repository Manager 3是一个Java服务器应用程序,安装需要 jdk1.8以上的版本. 下载解压后,用命令行到解压目录的bin目录下运行 nexus.exe /run(Linux运行./nexus run),启动完成后会显示"Started Sonatype Nexus": ------------------------------

使用 Nexus3 Repository Manager 搭建 npm 私服

公司里一般都有自己的私服,用于管理封装的工具插件等,Nexus2主要是用于maven/gralde仓库的统一管理,Nexus3则添加了npm插件,可以对npm提供支持,其实用于npm仓库管理的还有一个工具sinopia,可惜的是早已停止更新. 下载安装 在官网下载Nexus Repository Manager OSS 3.x, 解压至任意位置. 管理员运行cmd, 切换到 nexus-3.15.2-01/bin 目录 nexus.exe /install 进行安装, 成功后会提示 Instal

Nexus Repository Manager的应用

安装和运行Nexus Repository Manager很简单.您可以将存档文件解压缩到您有完全访问权限的目录中,也可以使用Docker映像安装它. 安装包下载:https://help.sonatype.com/repomanager3/download安装参考文档:https://help.sonatype.com/repomanager3 1, 下载安装包https://help.sonatype.com/repomanager3/download/download-archives--

用registry快速搭建私有镜像仓库

1.背景 在 Docker 中,当我们执行 docker pull xxx 的时候,可能会比较好奇,docker 会去哪儿查找并下载镜像呢? ?它实际上是从 registry.hub.docker.com 这个地址去查找,这就是Docker公司为我们提供的公共仓库,上面的镜像,大家都可以看到,也可以使用.所以,我们也可以带上仓库地址去拉取镜像,如:docker pull registry.hub.docker.com/library/alpine,不过要注意,这种方式下载的镜像的默认名称就会长一

试用 Nexus OSS 3.0 的docker仓库 (二)

试用 Nexus OSS 3.0 的docker仓库 (一) : http://www.cnblogs.com/wzy5223/p/5410990.html 三. 创建docker私有仓库,docker (hosted) 访问Nexus的主页,https://192.168.31.135:8443 创建docker (proxy)仓库,内容如下面修改: Name: docker_hosted HTTPS: 8889 Enable Docker V1 API: true 勾选下面的复选框 Blob