docker idea-maven-私有仓库(boot打包直接推送你的私有静态仓库)

1.搭建一个镜像仓库管理系统需要3个步骤:
  a.生成一个认证文件,rsa的认证文件。
  b.创建一个仓库容器。
  c.创建一个仓库web管理系统。

a.

  常见文件夹 

  mkdir volume

  mkdir registry-chen

  mkdir conf

2.生成一个认证文件,rsa的认证文件。
  在/data/volume/registry-chen目录下执行 以下命令:
  openssl req -new -newkey rsa:4096 -days 365 -subj "/CN=localhost"  -nodes -x509 -keyout conf/auth.key -out conf/auth.cert

  

3.创建一个仓库容器。 在 /data/volume/registry-chen/conf
  创建一个配置文件:registry-chen.yml
  a.==============配置文件=======================
version: 0.1
#镜像存储地方
storage:
  filesystem:
    rootdirectory: /var/lib/registry
  #镜像的删除权限,enabled: true代表开启删除权限
  delete:
    enabled: true
log:
  level: info
#开启仓库的网络,端口号为5000
http:
  addr: 0.0.0.0:5000
  
  b.==============创建仓库命令=======================

docker run \
-v /data/volume/registry-chen/conf/registry-chen.yml:/etc/docker/registry/config.yml:ro \
-v /data/volume/registry-chen/conf/auth.cert:/etc/docker/registry/auth.cert:ro \
-p 5000:5000  --name registry-chen -d \
--privileged=true \
registry

b.1.推送镜像到私有仓库(注意:记得改本地hosts)
 1.1在推送 仓库之前需要把 当前的仓库名字 写进host文件中  才能push 进去
 vi /etc/hosts 
  1.2 按 i 键 进入编辑模式
  然后添加数据
     127.0.0.1registry-chen(你的仓库名字)
  按ESC :wq 退出保存

使hosts生效  

source /etc/hosts

 

2.开启docker远程API
    a.vi /usr/lib/systemd/system/docker.service
      在配置文件中,加入:
      -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock
  b.重启docker
    systemctl daemon-reload
        systemctl restart docker
    c.验证docker远程api是否生效
      netstat -anp|grep 2375
        curl 127.0.0.1:2375/info

 

4.创建一个仓库web管理系统。
创建一个配置文件:registry-web.yml
  a.==============配置文件=======================
registry:
  # 指定registry的地址(注意:registry-chen为仓库的容器名字)
  url: http://registry-chen:5000/v2
  #仓库的名称(注意:registry-chen为仓库的容器名字)
  name: registry-chen:5000
  #是否为只读模式,设置true时,不允许删除镜像
  readonly: false
  #权限验证
  auth:
    #是否开启验证
    enabled: true
    #验证证书的key
    key: /conf/auth.key
    #证书颁发者的名称
    issuer: chen
    
  b.==============创建仓库web管理系统命令=======================
docker run \
-v /data/volume/registry-chen/conf/registry-web.yml:/conf/config.yml:ro \
-v /data/volume/registry-chen/conf/auth.key:/conf/auth.key \
-v /data/volume/registry-chen/db:/data \
-d -p 8080:8080 --link registry-chen --name registry-web \
--privileged=true \
hyper/docker-registry-web
注意:--link registry-chen很重要,没有的话,无法连接仓库。


5.登录仓库管理系统
  http://132.232.66.251:8080/login/auth
  用户名=admin
  密码 =admin

6.给搭建好的仓库加个镜像 
  docker push registry-chen:5000/nginx:1.0.0

 

------------------------

idea  maven 配置

registry-chen:需要在windows系统修改host,

 132.232.66.251   registry-chen

或者  http://132.232.66.251:2375


    
        
            org.springframework.boot
            spring-boot-maven-plugin
        
        
        
            com.spotify
            docker-maven-plugin
            1.1.1
            
                
                registry-chen:5000
                
                http://registry-chen:2375
                
                registry-chen:5000/${project.artifactId}:2.0.0
                
                java:8
                
                ["java", "-jar", "/${project.build.finalName}.jar"]
                
                
                    ${project.version}
                    latest
                
                
                true
                
                true
                
                
                    
                        /
                        
                        ${project.build.directory}
                        
                        ${project.build.finalName}.jar
                    
                
            
        
    

 

我的idea 配置命令好像不行, 目前我是在 cmd里面运行命令的

 

mvn -f pom.xml clean package -DskipTests docker:build

docker idea-maven-私有仓库(boot打包直接推送你的私有静态仓库)_第1张图片

 

 

docker idea-maven-私有仓库(boot打包直接推送你的私有静态仓库)_第2张图片

 

 

 

你可能感兴趣的:(docker)