我们正在使用Nexus3泊坞窗组(将dockerhub代理和私有注册表结合使用),又名:
docker pull dockerproxy:5002/busybox
Run Code Online (Sandbox Code Playgroud)
如果私有注册表中不存在该命令,请尝试从dockerhub中拉取,将存储推送到私有注册表部分。工作正常。
但是我该怎么做:
docker pull busybox
Run Code Online (Sandbox Code Playgroud)
转到该注册表,而不必先添加dockerproxy:5002前缀?
环境变量?,$ HOME / .docker / config.json?广告标记?
谢谢
我使用Nexus 3作为npm私人存储库.我有一个需要一些依赖项的项目,例如:@nodelib/fs.stat
, @mrmlnc/readdir-enhanced@^2.2.1
.
如果我执行以下npm install命令,一切正常:
sudo npm install -g @nodelib/fs.stat
+ @nodelib/fs.stat@1.1.0
added 1 package in 0.481s
sudo npm install -g @mrmlnc/readdir-enhanced@^2.2.1
+ @mrmlnc/readdir-enhanced@2.2.1
added 3 packages in 2.178s
Run Code Online (Sandbox Code Playgroud)
但我必须配置.npmrc以这种方式引用我的nexus npm存储库:
〜/ .npmrc:
registry=http://mynexus.com/repository/npmrepo
Run Code Online (Sandbox Code Playgroud)
现在,当我尝试安装我的私有项目npm install -g generator-myyeomangenerator
失败,因为它无法下载这些依赖项.
事实上,现在我已经设置了我的.npmrc配置,如果我直接为这些依赖项执行npm install,我得到一个404:
sudo npm install -g @nodelib/fs.stat
npm ERR! code E404
npm ERR! 404 Not Found: @nodelib/fs.stat@latest
npm ERR! A complete log of this run can be found in:
npm ERR! /Users/myuser/.npm/_logs/2018-06-04T21_55_56_792Z-debug.log
Run Code Online (Sandbox Code Playgroud)
日志文件不提供其他信息.
来自这些依赖项的公寓,通过npm repo运行其他一些安装工作ok事件:
sudo npm …
Run Code Online (Sandbox Code Playgroud) 什么是“足以运行Nexus服务的访问权限”(以Linux上的nexus用户身份)
Nexus3文档https://books.sonatype.com/nexus-book/reference3/install.html#configure-service说
然后创建具有足够访问权限的关系用户来运行该服务。
我知道日志应该是可写的,并且脚本可以执行,但是在安装过程中(可能是第一次),用户如何知道?
但是文档没有对此进行指导。
有推荐nexus
和sonatype-work
文件夹。
lrwxrwxrwx. 1 root root 25 Jun 5 16:46 nexus -> /opt/nexus/nexus-3.3.0-01
drwxr-xr-x. 9 root root 4096 May 11 08:26 nexus-3.3.0-01
-rw-r--r--. 1 root root 107331345 Apr 20 08:52 nexus-3.3.0-01-unix.tar.gz
drwxr-xr-x. 3 root root 4096 Apr 20 08:53 sonatype-work
也许这应该是添加文件夹nexus
和sonatype-work
文件夹中所有权限的命令?
重要说明确保为运行nexus服务的用户分配适当的权限。
有没有办法按日期降序检索人工制品?
我目前有以下脚本作为示例:
import org.sonatype.nexus.repository.storage.Asset
import org.sonatype.nexus.repository.storage.Query
import org.sonatype.nexus.repository.storage.StorageFacet
import groovy.json.JsonOutput
import groovy.json.JsonSlurper
def request = new JsonSlurper().parseText(args)
assert request.groupId: 'groupId parameter is required'
assert request.repoName: 'repoName parameter is required'
assert request.startDate: 'startDate parameter is required, format: yyyy-mm-dd'
log.info("Gathering Asset list for repository: ${request.repoName} as of startDate: ${request.startDate}")
def repo = repository.repositoryManager.get(request.repoName)
StorageFacet storageFacet = repo.facet(StorageFacet)
def tx = storageFacet.txSupplier().get()
tx.begin()
Iterable<Asset> assets = tx.
findAssets(Query.builder()
.where('group = ').param(request.groupId)
.and('last_updated > ').param(request.startDate)
.build(), [repo])
def urls = assets.collect { "/repository/${repo.name}/${it.name()}" } …
Run Code Online (Sandbox Code Playgroud) 我想知道是否有办法从 nexus 存储库中删除许多项目。我有一些RAW
类型存储库,其中包含一些 Web 应用程序版本(简单的 tar.bz2 二进制文件):
在一些存储库中有很多。我想释放一些磁盘空间。我可以删除单个文件:
但我没有看到批量删除选项。
对我来说最好的解决方案是自动或手动清理旧文件。免费版可以吗?如果是 - 如何?
我Cleanup Policies
在主菜单中没有看到:
Nexus Repository ManagerOSS 3.3.2-02
我使用 nexus 作为 Docker 容器,标签为 sonatype/nexus3:3.14.0。此外,我将 nexus 与 LDAP 连接起来以进行更好的用户管理,这对组和角色管理很有帮助。
就我而言,我创建了一个博客商店并创建了两个 docker 注册表存储库,一个托管和一个组。我尝试在托管上登录,并且工作正常。但是当我尝试连接到分组存储库时,我得到 401 Unauthorized。我也尝试连接管理员凭据,但我也遇到了同样的错误,
来自守护进程的错误响应:登录尝试 https:///v2/ 失败,状态为:401 未经授权。
欢迎提出建议 PParthenis
我正在尝试将 nexus 数据存储在持久卷中。为此,我使用了这个 compose yaml:
version: '3.5'
services:
nexus:
image: sonatype/nexus3
volumes:
- ./nexus-data:/nexus-data sonatype/nexus3
ports:
- "8081:8081"
networks:
- devops
extra_hosts:
- "my-proxy:my-proxy-address"
restart: on-failure
networks:
devops:
name: devops
driver: bridge
Run Code Online (Sandbox Code Playgroud)
在运行之前,docker-compose up
我已经创建了nexus-data
文件夹并uid/guid 200
按照此处的建议授予了所需的权限:
https://github.com/sonatype/docker-nexus3/blob/master/README.md#persistent-data。
root@master-node:~/docker# ll
total 16
drwxr-xr-x 3 root root 4096 Jan 8 13:37 ./
drwx------ 22 root root 4096 Jan 8 13:40 ../
-rw-r--r-- 1 root root 319 Jan 8 13:36 docker-compose.yml
drwxr-xr-x 2 200 200 4096 Jan …
Run Code Online (Sandbox Code Playgroud) 虽然我能够成功地将新拉出的docker镜像推送到Nexus 3 docker托管的repo,但最后会抛出类似"无效校验和摘要格式"的错误.我从dockerhub中取出"jenkins:latest",然后对其进行标记,然后将其推送到nexus docker托管仓库.
f3e4e0468545: Pushed
656120ad8c56: Pushed
30f9a83f20f3: Pushed
78dbfa5b7cbc: Pushed
invalid checksum digest format
Run Code Online (Sandbox Code Playgroud)
我知道Nexus 3还不是LTS,但是要确保它不是我的环境设置.我在18443有一个不安全的码头登记处
docker info
Containers: 1
Running: 0
Paused: 0
Stopped: 1
Images: 53
Server Version: 1.10.1
Storage Driver: aufs
Root Dir: /var/lib/docker/aufs
Backing Filesystem: extfs
Dirs: 89
Dirperm1 Supported: true
Execution Driver: native-0.2
Logging Driver: json-file
Plugins:
Volume: local
Network: bridge null host
Kernel Version: 3.16.0-53-generic
Operating System: Ubuntu 14.04.3 LTS
OSType: linux
Architecture: x86_64
CPUs: 2
Total Memory: 3.86 GiB …
我在 4 CPU Docker 主机上运行 Nexus 3,仅将 RAM 使用限制到容器。
从 3.16.1 升级到 sonatype/nexus3:3.17.0 后,Nexus 在管理后端的状态页面上告诉我:
可用 CPU:主机系统最多为应用程序分配 1 个内核。建议最少 4 个。
我不知道为什么这甚至显示
所以我进入了 nexus 容器并检索了一些信息,其中有多少个内核
cat /proc/cpuinfo | awk '/^processor/{print $3}' | wc -l
Run Code Online (Sandbox Code Playgroud)
结果:4
有人知道这里出了什么问题吗?
我有一个 Nexus 服务器,在监控它时我发现 Nexus 在服务器中使用了 500 GB。我很震惊地发现,因为我的想法是我们的工件大小约为 30 GB。我是对的,检查数据库后发现使用的大小约为 26 GB。
在试图找出答案时,我发现了发布存储库中允许重新部署的设置。因此,每当重新部署时,新工件将替换旧工件,但旧工件不会被删除,就会发生这种情况。它被缓存在某个地方。如何删除缓存数据以释放一些空间?