利用docker制作Java程序镜像
Docker的使用可以将应用程序做成镜像,这样可以将镜像发布到私有或者公有仓库中,在其他主机上也可以pull镜像,并且运行容器,运行程序。本文主要简单介绍一下如何通过Docker将Java程序创建成一个镜像。
1.建立工作目录
cd java_demo
2.编写程序
由于简单演示,主要写一个Main.java的程序,代码如下:
import java.util.*;
public class Main{public static int solve(int a,int b){int ans = 0;for(int i=0;i<=a;i++){ans=ans+a*b;}return ans;}public static void main(String[] args){Scanner sc = new Scanner(System.in);int a = sc.nextInt();int b = sc.nextInt();System.out.println(solve(a,b));}}
3.Dockerfile文件的编写
FROM java:latest
#将当前目录复制到/usr/src/myapp
COPY . /usr/src/myapp
#建立工作目录
WORKDIR /usr/src/myapp#运行命令
RUN javac Main.java
#自启动命令
CMD ["java","Main"]
4.制作镜像
cd ~
cd java_demo
sudo docker build -t my-java:first .
查看本地镜像:
5.上传镜像到私有仓库
私有仓库的建立已经在前面详细介绍过了,有需要的可以看Ubuntu中利用Docker建立一个私有仓库(可以供远程访问)一文,这里私有仓库的EndPoint(ip:port)为218.197.198.84:5000。
sudo docker tag my-java:first 218.197.198.84:5000/my-java:first
sudo docker push 218.197.198.84:5000/my-java:first
检测私有仓库有没有该镜像:
curl 218.197.198.84:5000/v2/_catalog
curl 218.197.198.84:5000/v2/my-java/tags/list
6.测试验证
在一台安装了Docker的win10主机上下拉镜像并运行容器进行验证。
docker pull 218.197.198.84:5000/my-java:first
docker run -it 218.197.198.84:5000/my-java:first
利用docker制作Java程序镜像相关推荐
- Docker 3.2.10:基于 Dockerfile 制作 java 程序镜像
3.2.10:基于 Dockerfile 制作 java 程序镜像 准备基础镜像 以 centos-tomcat:8.5.60 为基础镜像,构建业务镜像: 编写 Dockerfile 创建业务镜像的 ...
- Docker——使用Dockerfile制作java程序镜像
1.准备制作镜像需要的jar包和java镜像 上传jar包到/home/docker目录下 拉取java镜像:docker pull java:8 2.在jar包同级目录下创建Dockerfile文 ...
- Docker Java程序镜像制作
Docker Java程序镜像制作 制作前的准备 jre:不需要完整的jdk,jre即可,到Oracle进行下载即可,下载链接,根据自己的情况进行选择,这里选择jre-8u221-linux-x64. ...
- Docker创建一个java程序镜像
Docker创建一个java程序镜像 什么是Dockerfile 指令及其说明 个人镜像创建流程 Dockerfile文件创建 使用docker build命令构建镜像 运行镜像 附文件目录结构 什么 ...
- 利用InstallAnywhere制作JAVA可执行程序安装文件
利用InstallAnywhere制作JAVA可执行程序安装文件(转) 转自http://hi.baidu.com/chinagenius/blog/item/e54829de4713095f94ee ...
- 利用TPTP对Java程序进行性能测试
简单地说,TPTP 是一个EclipseFoundation 顶级项目,它的目标是:构建一个通用的可扩展的基于标准的工具平台,软件开发人员可以在这个平台上创建专用的可互操作的...测试和性能工具. T ...
- 利用终端运行java程序
利用终端运行JAVA程序 开发Java程序,需要三个步骤:编写程序,编译程序,运行程序 不过首先得配置好你电脑中的Java环境变量,才能执行. 1,首先编写一个程序 打开记事本编写一个文件,就以Hel ...
- 利用exe4j将java程序打包成exe可执行文件
利用exe4j将java程序打包成exe可执行文件 一直在用exe4j,很好用,包括现在电脑中很多在使用的java程序,都是用exe4j打包的,所以也想做一些博客,来跟小伙伴们一起分享我的学习,让大家 ...
- kitematic利用docker下载mysql的镜像
-> 点击mysql的 "Create" 按钮. kitematic利用docker下载mysql的镜像 点击右侧"Setting" 按钮, 在" ...
- docker制作深度学习镜像(以windows环境下为例)
向AI转型的程序员都关注了这个号???????????? 人工智能大数据与深度学习 公众号:datayx 用 Docker 安装深度学习环境,轻量.方便!整个系统大小仅需2~3G,用完还能带着走!一 ...
最新文章
- RJ-45接口连接线、MDI/MDIX接口
- 环境调试: RuntimeWarning: Couldn‘t find ffmpeg or avconv - defaulting to ffmpeg, but may not work warn(“
- 【转】Docker学习_本地/容器文件互传(5)
- 解决MySQL 8.0 设置简单密码报错ERROR 1819 (HY000): Your password does not satisfy the current policy require...
- java excel解析 poi_Java解析Excel之POI(一)
- vba mysql 非法字符串_非法字符串处理.sql
- TIOBE 6 月编程语言排行榜:Python 势不可挡,或在四年之内超越 Java、C
- fscapture设置中文_Fscapture是什么软件?有没有功能介绍?
- java drawstring字体大小_java – 不同大小的JLabel中心drawString()文本
- Scrapy学习-13-使用DownloaderMiddleware设置IP代理池及IP变换
- Servlet请求和响应
- SpringBoot整合editormd富文本编辑器
- 比较流行的日志分析软件
- 面试官都叫好的Synchronized底层实现,这工资开多少一个月?
- 基于matlab的车牌定位算法设计与实现,原创】基于matlab的汽车牌照识别系统设计与实现...
- 屏幕坐标系转为笛卡尔坐标系
- rand和srand的用法
- 适合小白入门的随机森林介绍
- SpringCloud-Alibaba之Nacos服务注册和发现
- 热风枪使用之碳化温度
热门文章
- 【知识图谱】Neo4j 导入数据构建知识图谱的三种方法
- JAVA 正则表达式 练习 (简直深恶痛绝!!)
- 畅游高管曝出“k事件” 搜狐的老本往后怎么“吃”?
- session fixation漏洞简述
- SylixOS的来龙去脉
- Molten 功能简介以及使用指南
- php composer.phar install,解决composer.phar安装问题
- 【DX12】DirectX Math库 Vector和Matrix类型 XMVECTOR、XMMATRIX
- python正则匹配连续相同字符_正则表达式: 匹配n个相同连续字符
- 新世界黑客与匿名者组织宣布对美国DNS服务的大规模DDoS攻击负责