目 录CONTENT

文章目录

记录一下nexus安装与使用

cplinux98
2022-11-10 / 0 评论 / 0 点赞 / 36 阅读 / 1,219 字 / 正在检测是否收录...

00:文章简介

记录一下nexus这个软件,可以设置yum、apt、等等多个系统的软件仓库。

01:安装nexus

1.1:以docker运行

apt-get -y install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
add-apt-repository "deb [arch=amd64] https://mirrors.aliyun.com/docker-ce/linux/ubuntu $(lsb_release -cs) stable"
apt-get -y update
apt-get -y install docker-ce

配置加速

# setting docker
cat >> /etc/docker/daemon.json << EOF
{
 "registry-mirrors": ["https://73yi6cz9.mirror.aliyuncs.com"]
}
EOF

systemctl restart docker

安装

mkdir /nexus-data && chown -R 200 /nexus-data
docker run -d -p 8081:8081 --restart=always --name nexus -v /nexus-data:/nexus-data sonatype/nexus3

docker logs -f nexus
# 出现Started Sonatype Nexus OSS 3.37.3-02代表好了

# 查看密码
cat /nexus-data/admin.password

1.2:以服务运行

1.2.1:安装JDK

安装JDK1.8
机器配置需大于4GB

apt install openjdk-8-jdk

1.2.2:安装nexus

https://www.sonatype.com/products/repository-oss-download

cd /usr/local/src
上传文件
 tar xf nexus-3.33.0-01-unix.tar.gz
ln -sv /usr/local/src/nexus-3.33.0-01 /usr/local/nexus
cd /usr/local/nexus

./bin/nexus --help
./bin/nexus run
./bin/nexus start

1.2.3:查看密码

访问:http://172.20.253.201:8081/

点击Sign in 会弹出密码文件位置

image

02:配置web向导

输入新密码

image

授权匿名下载

image

不共享数据

image

image

03:默认仓库类型

Hosted:本地仓库,一般部署自己公司制作的第三方包

Proxy:代理仓库,用于代理远程的公共仓库,例如aliyun、tuna、华为云镜像站的源

Group:仓库组,用来合并多个hosted/proxy仓库,当你的项目希望在多个repository使用资源时就不需要多次引用了,直接引用一个group的地址即可。

04:创建缓存源

4.1:创建apt源

4.1.1:创建一个Blob存储位置

type: file,

name: apt-tuna

其他默认

image

4.1.2:配置代理apt仓库

repository-repositories-create repository-apt(proxy)

# 依次设置
name: tuna-apt-proxy
distribution: focal
remote storage: https://mirrors.tuna.tsinghua.edu.cn/ubuntu/
storage: apt-tuna
# 最后点Create repository

image

image

4.1.3:客户端配置

# 备份原来的源文件
mv /etc/apt/source.list /etc/apt/source.list.bak
# 创建新的源文件
vim /etc/apt/source.list
deb http://172.20.253.201:8081/repository/tuna-proxy/ focal main restricted universe multiverse
deb http://172.20.253.201:8081/repository/tuna-proxy/ focal-updates main restricted universe multiverse
deb http://172.20.253.201:8081/repository/tuna-proxy/ focal-backports main restricted universe multiverse
deb http://172.20.253.201:8081/repository/tuna-proxy/ focal-security main restricted universe multiverse

# 测试是否可用
apt update
apt install mariadb-server

4.1.4:查看缓存下来的源文件

Browse-Browse-[tuna-proxy]

image

4.2:配置yum缓存源

配置yum源的方式和apt类似这里只说一下重要部分

创建一个专属Blob存储位置
create repository -> yum proxy
URL 要代理的yum源地址
Blob store 存储位置

4.3:配置epel缓存源

创建一个专属Blob存储位置
create repository -> yum proxy
URL 要代理的epel源地址
Blob store 存储位置

4.4:配置docker-ce缓存源

创建一个专属Blob存储位置
create repository -> yum proxy or apt proxy 这里看自己要代理的是centos还是ubuntu
URL 要代理的docker-ce源地址
Blob store 存储位置
# 安装源
apt-get -y install apt-transport-https ca-certificates curl software-properties-common
curl -fsSL https://mirrors.aliyun.com/docker-ce/linux/ubuntu/gpg | sudo apt-key add -
add-apt-repository "deb [arch=amd64] http://ip:8081/repository/aliyun-docker-ce-apt/ $(lsb_release -cs) stable"
apt-get -y update
apt-get -y install docker-ce

4.5:配置pypi缓存源

创建一个专属Blob存储位置
create repository -> pypi proxy
URL 要代理的pypi源地址
Blob store 存储位置

05:备份仓库文件

5.1:查看服务器上的文件

blob数据存放路径(创建时能看见):

cd /usr/local/src/sonatype-work/nexus3/blobs/apt-tuna
root@nexus:/usr/local/src/sonatype-work/nexus3/blobs/apt-tuna# tree -L 1
.
├── content
├── D3A26E43-94EE5731-E30F3B51-EC37EEDF-71DD08E7-deletions.index
├── D3A26E43-94EE5731-E30F3B51-EC37EEDF-71DD08E7-metrics.properties
└── metadata.properties

元数据存放位置:

元数据存放在Nexus的数据库中

备份时必须将blob和元数据一起备份,才能保证后期恢复数据的完整性

5.2:nexus数据备份

5.2.1: 创建备份的blob位置

备份的位置最好是网络存储,避免备份数据丢失

image

5.2.2:配置blob备份任务

System-Tasks-[create task]

image

选择Compact blob store

image

5.2.3:配置元数据备份任务

image

5.2.4:测试备份

点击一个任务-run

image

image

5.2.4:查看备份文件

# tree /nfs/nexus-db/
/nfs/nexus-db/
├── component-2021-08-20-22-35-23-3.33.0-01.bak
├── config-2021-08-20-22-35-23-3.33.0-01.bak
└── security-2021-08-20-22-35-23-3.33.0-01.bak

0

评论区