yum install docker #基于阿里源 可以直接下载

systemctl restart docker

ifconfig  #出现 docker0  说明环境部署成功

docker version      #  查看版本

#对于使用 systemd 的系统,请在 /etc/docker/daemon.json 中写入如下内容(如果文件不存在请新建该文件)    (也可以直接改为"registry-mirrors": ["https://e9yneuy4.mirror.aliyuncs.com"] )

{

"registry-mirrors": [

"https://dockerhub.azk8s.cn",

]

}

systemctl daemon-reload  重启systemctl配置文件   刷新/lib/systemd/systemd下的配置的

systemctl restart docke

docker info   #如果从结果中看到了如下内容,说明配置成功。

Registry Mirrors:

https://dockerhub.azk8s.cn/

registry-mirror=https://dockerhub.azk8s.cn) #docker 加速

docker pull   java:8-jre-alpine  #别人做好的镜像 可以直接拿来用

cd   /home/test

cp       hello.jar          /home/test/target

cp   /root/Dockerfile    /home/test

java -jar hello.jar        # 测试jar包

vim   Dockerfile

FROM java:8-jre-alpine      #网上下载好的镜像
WORKDIR
/home              
#工作目录
ADD ./target/hello.jar hello.jar  #jar包的路径 添加到容器
EXPOSE
8808                 
#web端口 看实际jar包跑的是多少端口号
VOLUME ["/home"]
ENTRYPOINT ["java", "-jar", "hello.jar",
">", "spring.log",
"&"]          #dockerfill的命令
  “>” 重定向 是  输出日志到一个文#件        #&是后台运行    这一条也是执行的命令 java环境用 cmd命令会被外部命令覆盖  这个不会 、/bin/bash 有关

参考
nohup java -jar /root/java.jar > spring.log &

docker build -t dgcmt/app  .  #制作成镜像   可以docker images 查看   dgcmt/app # 自定义的镜像名称

192.168.1.115 8808  dygaContentManagement-app                      #前面是docker本机的ip地址  后面为复制的包名   端口号看包
192.168.1.115 8812  dygaContentManagement-service

docker exec -it 9c97898a932b /bin/sh

docker run -itd -p 8812:8812 dgcmt/service:latest   #测试运行 端口映射
#http://ip:端口

(harbor
http://192.168.1.197
admin
12345  #访问镜像仓库)

vi /etc/docker/daemon.json
{ "insecure-registries": [ "192.168.1.197" ] }  #本机配置,指定访问的私有仓库 为push 做准备

systemctl daemon-reload && systemctl restart docker
docker login 192.168.1.197 -uadmin -p12345  #本机登录私有仓库 不登录push不上去
docker tag dgcmt/app:latest 192.168.1.197/library/dgcmt/app:latest   #给镜像打标签

docker push 192.168.1.197/library/dgcmt/app:latest   #上传镜像到私有仓库

docker pull 192.168.1.197/library/dgcmt/app:latest  #下载镜像使用(需要删除之前存在的docker镜像)

脚本 批量执行jar包   (此脚本 实现docker tag与push的一次多个 批量上传)

#!/bin/bash
A=dygacontentmanagement-service
A1=dygacontentmanagement/service
B=dygacontentmanagement-app
B1=dygacontentmanagement/app
C=dygacontentmanagement-app
C1=dygacontentmanagement/app
D=dygasport-service
D1=dygasport/service
E=dygawelfare-app
E1=dygawelfare/app
F=dygawelfare-service
F1=dygawelfare/service

# rmi images
docker rmi $A1 $B1 $C1 $D1 $E1 $F1
docker rmi 192.168.1.197/library/$A1 192.168.1.197/library/$B1 192.168.1.197/library/$C1 192.168.1.197/library/$D1
docker rmi 192.168.1.197/library/$E1 192.168.1.197/library/$F1

cd /built/$A
docker build -t $A1 .
docker tag $A1:latest 192.168.1.197/library/$A1:latest
docker push 192.168.1.197/library/$A1:latest

cd /built/$B
docker build -t $B1 .
docker tag $B1:latest 192.168.1.197/library/$B1:latest
docker push 192.168.1.197/library/$B1:latest

cd /built/$C
docker build -t $C1 .
docker tag $C1:latest 192.168.1.197/library/$C1:latest
docker push 192.168.1.197/library/$C1:latest

built 为事先创建好的文件 里面全部放的是 目录与shell脚本 目录里面是jar包与Dockerfill文件

sudo 临时获得管理员权限 root

sudo su 加脚本名  不用管他有没有权限

当我得到一个jar包 , 首先 在docker 已经做好基础环境下 先去8号机 创建一个目录 同jar包同名 如 : abc.jar 将已经做好的Dockerfile文件 复制到当前文件夹下

修改一下端口号,修改一下文件名 (2处) 文件做好 , 把jar包也cp过来 ,,一次做多个文件  , 创建可以执行的脚本 也可以cp过来 放在与目录abc.jar同级。脚本里面 把定义的变量值做下修改就可以了 ,现在还不可直接执行脚本  需要login一下  登录一下私有仓库 并为本机指定要访问的仓库地址。

如以下操作:

{ "insecure-registries": [ "192.168.1.197" ] } 本公司私有仓库,内网ip地址 ,同一内网环境
#  { "registry-mirrors": ["https://rncxm540.mirror.aliyuncs.com"] } 已经注释的为阿里的仓库
注意 : 一定要修改端口号 , 开发会一并给过来

做本机的端口映射 , 如外网访问本机的80端口 其实内部访问的是8805.。。。。。。。

docker java环境 直接做成镜像 跑自己的java包的更多相关文章

  1. java环境配置为1.7jdk为什么cmd java -version查看版本是1.8

    记录一个小问题: 初始安装的是jdk1.8,后来项目需要要更换成jdk1.7, 因此将环境变量更改为jdk7的目录路径, 但是在cmd命令行运行java -version 发现还是jdk8 解决方法: ...

  2. 【Java学习系列】第1课--Java环境搭建和demo运行

    本文地址 分享提纲: 1. java环境的搭建 2. java demo代码运行 3.参考文档 本人是PHP开发者,一直感觉Java才是程序的王道(应用广,科班出身),所以终于下决心跟一跟. 主要是给 ...

  3. Java 学习第一步-JDK安装和Java环境变量配置

    Java学习第一步——JDK安装及Java环境变量配置 [原文]  2014-05-30 9:09  Java SE  阿超  9046 views Java作为当下很主流的编程语言,学习Java的朋 ...

  4. windows上自动设置java环境变量的脚本

    近期打算学习安卓开发,于是乎要准备java开发环境,安装好jdk后,就要设置java环境变量,java环境变量要设置JAVA_HOME,Path,CLASSPATH三个值,每次配置查百度复制粘贴都很麻 ...

  5. R 中安装xlsx包缺少java环境解决方案

    1.安装Java程序(官网win7 64位系统的Java安装程序及网址http://www.java.com/zh_CN/download/manual.jsp),选择windows 64位脱机安装到 ...

  6. Windows 7下配置JDK环境变量,JAVA环境变量配置,Tomcat服务器的使用

    参考来源: http://www.cnblogs.com/pannysp/archive/2012/03/07/2383364.html 1. 常识: 1.1 War包 War包一般是在进行Web开发 ...

  7. linux搭建java环境

    建议使用EXCEL查看 准备文件 apache-tomcat-7.0.57.tar tomcat web容器 server-jre-7u76-linux-x64.tar  java jdk java执 ...

  8. Java 环境配置 与 碰到的问题

    小白记录,希望各位指点,长期整理修改 不定期更新,碰到的与之相关的会添加,做个小笔记,再次碰到可以更好的解决. JDK 下载:Oracle 配置方法:菜鸟教程 - Java 开发环境配置 作用 JAV ...

  9. java环境配置及原理详解

    java环境配置及原理详解 1.java跨平台的本质 我们谈到java,总是提到跨平台这个词.那么java语言是怎么实现跨平台的呢? 我们编写的java代码不是直接让windows系统读取解析,而是在 ...

随机推荐

  1. 在Vue 中使用Typescript

    Vue 中使用 typescript 什么是typescript typescript 为 javaScript的超集,这意味着它支持所有都JavaScript都语法.它很像JavaScript都强类 ...

  2. Python基础总结之初步认识---class类的继承(终)。第十六天开始(新手可相互督促)

    最近生病了,python更新要结束了,但是这才是真正的开始.因为后面要更新的是UnitTest单元测试框架,以及后续的Requests库.在后续的笔记会补充一些python的其他细节笔记.我想是这样的 ...

  3. JS闪电打字特效

    HTML <div class="page page-thunder-to-text"> <input id="input" type=&qu ...

  4. 洛谷 P4124 [CQOI2016]手机号码

    题意简述 求l~r之间不含前导零,至少有三个相邻的相同数字,不同时含有4和8的11位正整数的个数 题解思路 数位DP,注意在l,r位数不够时补至11位 代码 #include <cstdio&g ...

  5. ASP.NET Core on K8S深入学习(4)你必须知道的Service

    本篇已加入<.NET Core on K8S学习实践系列文章索引>,可以点击查看更多容器化技术相关系列文章. 前面几篇文章我们都是使用的ClusterIP供集群内部访问,每个Pod都有一个 ...

  6. 7.26 面向对象_封装_property_接口

    封装 封装 就是隐藏内部实现细节, 将复杂的,丑陋的,隐私的细节隐藏到内部,对外提供简单的访问接口 为什么要封装 1.保证关键数据的安全性 2.对外部隐藏实现细节,隔离复杂度 什么时候应该封装 1.当 ...

  7. Could not determine type for java util List

    问题场景:在实体类中需要使用List集合存储字段,启动时找不到List类型 问题解决:在字段上添加@ElementColletion(targetClass=String.class)表示是一个集合映 ...

  8. 使用flash2print 代替 printflash 将office文档 转为flash 在页面中播放

    前一些日子公司需求把用户上传的一些word等 文档 能像百度文库那样 显示给用户, 但是如果是直接显示office文档的话就需要  些控件的支持 .非常的不友好,所以 一开始我就想能不能转成pdf 来 ...

  9. 数据库系统原理之SQL(三)

    数据库系统原理之SQL(三) 1. SQL的组成 1. 数据查询 2. 数据定义 3. 数据操作 4. 数据控制 2. 数据定义语言 CREATE创建数据库或数据库对象 创建数据库 ~~~ CREAT ...

  10. net core Webapi基础工程搭建(二)——创建工程

    目录 前言 创建工程 工程文件概述(个人理解) 运行 小结 前言 前面介绍了开发工具及net core版本,后端工程的框架结构开发工具及环境,因为是基础工程,所以没考虑太复杂的框架,如果有架构师请勿喷 ...