• 将jar包、vue项目打成docker镜像并推送到Harbor本地仓库


    Centos7下harbor的安装部署

    先制作自己的docker镜像,使用commit方式也可以制作镜像,我这里采用
    通过编写Dockerfile命令脚本进行生成镜像。

    利用Dockerfile制作自己的Docker镜像

    1.jar包打包成docker镜像并推送

    将jar包和Dockerfile放在服务器同级目录下

    在这里插入图片描述
    dockerfile:

    # 基础镜像
    FROM  openjdk:8-jre
    # author
    MAINTAINER lgn
    
    # 挂载目录 运行容器时可以从本地主机或其他容器挂载数据卷,一般用来存放数据库和需要保持的数据等volume.用以在用户忘记启动时指定-v参数也可以保证容器的正常运行如使用了-v 已-v为准
    VOLUME /home/dockerflie
    # 创建目录
    RUN mkdir -p /home/dockerflie
    # 指定路径
    WORKDIR /home/dockerflie
    # 复制jar文件到路径 COPY将主机的文件复制到镜像内
    COPY spring-swagger-0.0.1-SNAPSHOT.jar /home/dockerflie/spring-swagger-0.0.1-SNAPSHOT.jar
    # 启动系统服务
    ENTRYPOINT ["java","-jar","spring-swagger-0.0.1-SNAPSHOT.jar"]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15

    将项目打包成镜像(在jar包目录下)

    docker build -f Dockerfile -t swagger:1.0.1 .
    
    • 1

    在这里插入图片描述
    查看一下镜像:
    在这里插入图片描述

    登录到私服

    docker login -u admin -p Harbor12345 http://120.48.54.67:8282/
    
    • 1

    如果报错:

    Error response from daemon: Get "https://120.48.54.67:8282/v2/": http: server gave HTTP response to HTTPS client
    
    • 1

    Docker自从1.3.X之后docker registry交互默认使用的是HTTPS,但是搭建私有镜像默认使用的是HTTP服务,所以与私有镜像交时出现以上错误。
    修改 /usr/lib/systemd/system/docker.service 中的 ExecStart 选项,加入 --insecure-registry {docker 私有镜像库 IP} --ipv6=false,,加入–insecure-registry 与 --ipv6 属性。形如:

    --insecure-registry 120.48.54.67:8282 --ipv6=false
    
    • 1

    修改好后重启docker 服务

    systemctl daemon-reload 
    
    systemctl restart docker
    
    • 1
    • 2
    • 3

    在这里插入图片描述

    用tag命令使镜像规范化(登录harbor平台中找到规范)

    在这里插入图片描述

    docker tag swagger:1.0.1 120.48.54.67:8282/k8spro/swagger:1.0.1
    
    • 1

    推送镜像

    去harbor平台里面看一下推送的语法
    在这里插入图片描述
    docker push 120.48.54.67:8282/k8spro/REPOSITORY[:TAG]

    docker push 120.48.54.67:8282/k8spro/swagger:1.0.1
    
    • 1

    在这里插入图片描述

    去harbor控制台看看:

    在这里插入图片描述

    vue也是同理

    在这里插入图片描述
    dockerfile:

    # 基础镜像
    FROM nginx
    # author
    MAINTAINER ruoyi
    
    # 挂载目录
    VOLUME /home/ruoyi/projects/ruoyi-ui
    # 创建目录
    RUN mkdir -p /home/ruoyi/projects/ruoyi-ui
    # 指定路径
    WORKDIR /home/ruoyi/projects/ruoyi-ui
    # 复制conf文件到路径
    COPY ./conf/nginx.conf /etc/nginx/nginx.conf
    # 复制html文件到路径
    COPY ./html/dist /home/ruoyi/projects/ruoyi-ui
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    docker build -f dockerfile -t vue:1.0.1 .
    
    docker tag vue:1.0.1 120.48.54.67:8282/k8spro/vue:1.0.1
    
    docker push 120.48.54.67:8282/k8spro/vue:1.0.1
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述

  • 相关阅读:
    Docker清理
    PostgreSQL单机编译安装手册
    Ai绘画描述词 关键词大全 真人美女 二次元卡通美女 国漫动漫效果
    基于JAVA水果食品顺溯源系统计算机毕业设计源码+数据库+lw文档+系统+部署
    【C++】STL——vector模拟实现
    约束的概念和分类(包含外键约束)
    正大国际期货:如何提升外盘恒指交易技巧?
    大数据之hadoop hive hbase 的区别是什么?有什么应用场景?
    MongoDB从入门到实战之.NET Core使用MongoDB开发ToDoList系统(8)-Ant Design Blazor前端框架搭建
    Cesium对三维模型进行查询并弹框展示信息
  • 原文地址:https://blog.csdn.net/u010797364/article/details/125941204