Nexus+Docker私服+GitLab的一些记录

title: Nexus私服+Docker私服+GitLab私服的一些记录


Nexus私服 (N K SA SI)

  • 基本
    • 一种maven的仓库管理器
    • 比较吃内存,虚拟机最好开2G内存
  • 在项目中为什么用私服
    • 企业模块开发,不想将代码暴露并随意修改,所以放到私服公用
  • 流程
    • 配置认证信息。maven的setting.xml添加nexus认证信息(在servers的节点下)
  • Maven的一些命令
    • mvn install
    • mvn deploy
  • 仓库有快照版本,发型版本等
  • free -h 查询内存占用
  • chmod 777修改权限

  1. 使用 Docker 来安装和运行 Nexus,docker-compose.yml内容为
version: '2.0'
services:
nexus:
  restart: always
  image: sonatype/nexus3
  container_name: nexus
  ports:
    - 7090:8081
  volumes:
    - /usr/local/docker/nexus/data:/nexus-data

启动docker-compose up -d
查看是否启动成功docker-compose logs nexus(服务的名称)
第一次启动可能会出现权限问题chmod 777 /usr/local/docker/nexus/data
2. 登录http://192.168.2.133:7090/ 用户名:admin 密码:admin123
3. 配置认证信息,在 Maven settings.xml中添加 Nexus 认证信息(servers 节点下):


nexus-releases
admin
admin123



nexus-snapshots
admin
admin123


  1. 配置自动化部署.在 pom.xml 中添加如下代码:

  
  	
  		nexus-releases
  		Nexus Release Repository
  		http://192.168.2.133:7090/repository/maven-releases/
  	
  	
  		nexus-snapshots
  		Nexus Snapshot Repository
  		http://192.168.2.133:7090/repository/maven-snapshots/
  	
  
  1. 部署到仓库 mvn deploy

  1. 上传第三方 JAR 包
mvn -X deploy:deploy-file  "-DgroupId=cn.wolfcode" "-DartifactId=p2p" "-Dversion=3.6.0" "-Dpackaging=jar" "-Dfile=D:\nexus-textSf.jar" "-Durl=http://192.168.2.133:7090/repository/maven-3rd/" "-DrepositoryId=thirdparty"

为什么带双引号。不带双引号会报找不到pom的错。加了双引号就可以上传了。

  1. 使用上传的jar包。
  2. setting.xml添加镜像。 然后pom引入jar包。

    nexus
    private maven
    http://192.168.2.133:7090/repository/maven-public/
    *        
  

Docker私服

  • 安装使用registry
  • docker pull 是从官网下载
  • 流程
    • 配置客户端 /etc/docker/daemon.json
    • docker info查看配置成功否
    • docker tag tomcat 192.168.1.21:5000/tomcat
    • docker push 192.168.1.21:5000/tomcat 推送到私服
    • 安装webui

  1. 拉取registry镜像docker pull registry
  2. 通过registry镜像启动容器docker run -d -v /opt/docker-registy -p 5000:5000 --name myRegistry registry
  3. 容器启动后打开浏览器输入192.168.140.132:5000/v2/ 返回{}说明运行正常
  4. 修改/etc/docker/daemon.json文件,增加"insecure-registries": ["192.168.140.132:5000"]
  5. 然后重启docker引擎 service docker restart
  6. 推送到私有服务器docker pull 192.168.140.132:5000/liuyaofang/tomcat
  7. 推送成功查看http://192.168.140.132:5000/v2/_catalog可以看到仓库
  8. http://192.168.140.132:5000/v2/仓库名/tags/list 可以查看tags标签
  9. 拉取镜像 docker pull 192.168.140.132:5000/liuyaofang/tomcat:my

你可能感兴趣的:(项目私服)