linRichielinRichie
前端
Python
Linux
ChatGPT
  • B 站
  • 500px
前端
Python
Linux
ChatGPT
  • B 站
  • 500px
  • Ansible

    • Ansible: 基本操作
    • Ansible: 安装
    • Ansible: 简介
    • YAML: 文件格式
    • Playbook

      • Playbook: 介绍
      • Playbook: 操作
    • 模块

      • Yum模块常用参数
    • 实战

      • Ansible 实战
  • Anaconda

    • Anaconda命令
  • Iptables

    • Iptable: 防火墙
    • iptables 用法
  • Systemd

    • 系统服务配置
    • 系统服务启动文件
    • 性能优化

      • Linux 系统监控
      • Linux 系统性能优化
      • Linux 系统故障诊断
      • Linux 系统日志管理
  • Network

    • 用一张图解释 8 种流行的网络协议
    • 反子网掩码
    • 交换机端口模式
    • eNSP 软件
    • 华为交换机配置命令
    • eNSP静态路由实验
  • Commands

    • 命令别名:alias
    • 多类型资源统计工具: dstat
    • history配置
    • unzip命令
    • Linux用户到期登录时间和随机密码
    • 常用 Command
    • ssh

      • ssh-keygen
      • linux ssh命令
  • CI/CD

    • Jenkins CI/CD 管道
  • Kubernetes

    • Docker系列学习

      • 01. 什么是Docker
      • 02. Docker安装
      • 03. 使用Docker镜像
      • 04. 利用commit理解镜像构成
      • 05. 操作Docker容器
      • 06. 使用Dockerfile定制镜像
      • 07. Dockerfile指令详解
      • 08. Dockerfile多阶段创建
      • 09. 访问仓库
      • 10. 修改docker的启动项
      • 11. Nexus3.x的私有仓库
      • 12. docker-hub加速器
      • 13. 数据管理
      • 14. 使用网络
  • Shell编程

    • Shell 编程基础
    • Shell 脚本执行消耗的时间
    • Shell 自动生成简介

11. Nexus3.x的私有仓库

  • 简介
  • 1. 安装部署
    • 1.1 环境要求
    • 1.2 启动容器
  • 2. 初始配置
    • 2.1 访问管理界面
    • 2.2 创建 Docker 仓库
  • 3. 配置 Docker 客户端
    • 3.1 配置 Docker 信任
    • 3.2 推送镜像示例
  • 4. 维护管理
    • 4.1 备份
    • 4.2 清理
  • 5. 最佳实践

简介

Nexus 是一个强大的仓库管理器,可以用来管理多种类型的仓库,包括:

  • Docker 镜像仓库
  • Maven 包仓库
  • npm 包仓库
  • PyPI 包仓库
  • Yum/APT 软件源

相比官方的 Docker Registry,Nexus 具有以下优势:

  • 支持自动垃圾回收
  • 提供友好的 Web 界面
  • 支持多种认证方式
  • 可以管理多种类型的仓库

1. 安装部署

1.1 环境要求

  • Docker 版本 >= 17.06
  • 至少 4GB 内存
  • 至少 20GB 磁盘空间

1.2 启动容器

# 创建数据卷
docker volume create nexus-data

# 启动 Nexus 容器
docker run -d --name nexus3 --restart=always -p 8081:8081 \
    --mount src=nexus-data,target=/nexus-data \
    sonatype/nexus3

说明:

  • 端口 8081 用于 Web 界面访问
  • 数据持久化存储在 nexus-data 卷中

2. 初始配置

2.1 访问管理界面

打开浏览器访问:http://<your-ip>:8081

默认凭据:

  • 用户名:admin
  • 密码:admin123

2.2 创建 Docker 仓库

  1. 登录后点击设置图标
  2. 选择 Repositories -> Create repository
  3. 选择 docker (hosted) 类型
  4. 配置仓库信息:
Name: docker-hosted
HTTP: 8082  # Docker 仓库端口
Enable Docker V1 API: 取消勾选

3. 配置 Docker 客户端

3.1 配置 Docker 信任

# 编辑 daemon.json
vim /etc/docker/daemon.json

{
  "insecure-registries": [
    "your-nexus-ip:8082"
  ]
}

# 重启 Docker
systemctl restart docker

3.2 推送镜像示例

# 登录到 Nexus Docker 仓库
docker login your-nexus-ip:8082

# 标记镜像
docker tag nginx:latest your-nexus-ip:8082/nginx:latest

# 推送镜像
docker push your-nexus-ip:8082/nginx:latest

4. 维护管理

4.1 备份

# 备份数据目录
tar -zcvf nexus-data.tar.gz /var/lib/docker/volumes/nexus-data

4.2 清理

  • 通过 Web 界面定期清理未使用的组件
  • 配置自动清理策略
  • 监控存储空间使用情况

5. 最佳实践

  • 使用 HTTPS 加密传输
  • 配置访问控制和权限管理
  • 定期备份数据
  • 监控系统资源使用情况
  • 配置邮件通知

注意: 生产环境建议使用 HTTPS,并配置适当的访问控制

最近更新时间:
Prev
10. 修改docker的启动项
Next
12. docker-hub加速器