当我执行这个命令时,我在终端的process builder中使用它,容器启动,一切正常。
我在java程序中打印了工作目录,这是启动docker容器的正确目录。
我还将命令更改为:
String[] dockerCommand = new String[] {"java", "-cp", "target/MavenAsteroidsServer-1.0-SNAPSHOT.jar", "asteroidsserver.AsteroidsServer", "1600", "1600", "127.0.1.1", "8851", "8901"};
这是我用来从java程序内部运行docker容器的代码:
String[] dockerCommand = new String[] {"docker", "run", "-it", "--rm", "--net=\"host\"", "-p", "8901:8901", "-v", "\"$PWD\":/app", "-w", "/app", "demo/maven:3.3-jdk-8", "java", "-cp", "target/MavenAsteroidsServer-1.0-SNAPSHOT.jar", "asteroidsserver.AsteroidsServer", "1600", "1600", "127.0.1.1", "8851", "8901"};
ProcessBuilder probuilder = new ProcessBuilder(dockerCommand);
Process process;
try {
process = probuilder.start();
int status = process.waitFor();
} catch (InterruptedException e) {
} catch (IOException ex) {
我想让集装箱开动,但什么也没发生。另外,当我试图在try-and-catch块中捕获它们时,不会收到错误消息(代码中没有显示)
import
java
.io.BufferedReader;import
java
.io.BufferedWriter;import
java
.io.File;import
java
.io.IOException;import
java
.io.InputStream;import
java
.io.InputStreamReader;import
java
.io.Output
提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档
文章目录系列文章目录前言一、为什么引入
Java
容器
?二、
Java
容器
分类1.Collection(1).List(2).Set(3).Queue2.Map补漏查缺小知识参考
这篇文章主要是介绍
java
容器
的分类和一些用法。
提示:以下是本篇文章正文内容,下面案例可供参考
一、为什么引入
Java
容器
?
为什么要引入
Java
容器
?
从
Docker
环境中
Java
可能出现的问题开始,分析了为什么
容器
环境对应用并不透明,以及这种偏差干扰了 JVM 的相关机制。最后,我从实践出发,介绍了主要问题的解决思路,希望对你在实际开发时有所帮助。...
您可以使用
Docker
在特定的
运行
时环境中
运行
容器
中的
Java
应用
程序
。本教程介绍如何创建
Docker
file,以便在OpenJDK 8的
容器
中
运行
简单的
Java
应用
程序
。示例应用
程序
由一个Main.
java
文件组成,该文件打印Hello World!到控制台并退出。编译输出位于/out/production/
Docker
Java
App下的项目目录中。在
容器
中
运行
Java
应用
程序
在项目工具窗口中,...
Apache HttpClient 5基于Apache HttpClient库实现,具有很大的灵活性,我们无需使用
docker
内部
API,就可以实现所有
Docker
特定功能和协议。并且在未来的版本中,它将成为
docker
java
的默认传输工具。除Apache HttpClient 5以外,还可以使用Zerodep、OkHttp、Jersey和Netty实现
docker
的连接传输。
mysql
docker
run -p 3306:3306 --name mysql -v /var/local/mysql/conf:/etc/mysql -v /var/local/mysql/data:/var/lib/mysql -v /var/local/mysql/conf:/etc/mysql -v /etc/localtime:/etc/localtime:ro -e MYSQL_ROOT_PASSWORD=root -d mysql
redis
docker
run -d --name
首先我这里讲解一个
Java
程序
在
docker
上面
运行
部署的例子
首先介绍一下这是一个需要jdk和MySQL的项目,然后我们就需要在
docker
-compose上面写两个services
然后mysql挂载在宿主机下面,首先我先介绍一个
docker
-compose文件:
version: "3"
services:
mysql:
image: mysql
container_name: mysql
command:
--default-authentication-p
本人在做实验过程中,需要通过
Java
程序
部署
docker
容器
。故尝试搜集资料,实现在
Java
端可以操作部署
docker
容器
。过程中遇到一些bug和坑,在此总结,供有需要的童鞋使用。主体配置以Ubuntu16为例。后面会附加给出mac的配置说明。
docker
安装
# 安装
docker
curl -sSL https://get.daocloud.io/
docker
| sh
# 查看是...
如何通过
Java
程序
执行
docker
命令我不需要调用
Docker
远程API,而是需要开发一个与
Docker
Linux Client(不是
Docker
守护进程)对话的
程序
。 这是我的代码try { String[] command = {"
docker
", "run", "-it", "tomcat:9", "bash"}; ProcessBuilder pb = new ProcessBuild...
背景:众所周知,当我们执行没有任何调优参数(如“
java
-jar mypplication-fat.jar”)的
Java
应用
程序
时,JVM 会自动调整几个参数,以便在执行环境中具有最佳性能。
但是许多开发者发现,如果让 JVM ergonomics (即JVM人体工程学,用于自动选择和行...