「javadocker」javadockerUtil

博主:adminadmin 2022-11-22 14:54:09 49

今天给各位分享javadocker的知识,其中也会对javadockerUtil进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

Java docker日志放哪了

Docker的日志分两类,一类是 Docker引擎的日志;另一类是容器日志。容器的日志 则可以通过 docker logs 命令来访问,而且可以像 tail -f 一样,使用 docker logs -f 来实时查看。如果使用 Docker Compose,则可以通过 docker-compose logs 服务名 来查看。

docker 使用

运行容器

sudo docker run -it -v /home/lcj/test_docker:/home/lcj/test_docker tensorflow/tensorflow:1.13.1-gpu-py3

参数:

-d 后台运行并返回容器ID,如 -itd

-e 设置环境变量,如 -e NVIDIA_VISIBLE_DEVICE=0 使用编号为 0 的GPU

-i 打开 STDIN,用于控制台交互,通常跟 -t 一起使用

--net 容器网络设置,如 --net my_network,或者 --net=contianer:NAME_or_ID,使用其他容器的网络,共享 IP 和 PORT 等资源

--restart 指定容器停止后的启动的策略,如 --restart=always

--runtime=nvidia 使用 nvidia 模式运行,跟 -e 一起使用,可以在容器里使用 GPU

-t 为容器重新分配一个伪输入终端,通常与 -i 一起使用

-v 给容器挂载存储卷,挂载到容器的某个目录,如 -v /home/lcj/test_docker:/home/lcj/test_docker

-w 指定容器的工作目录

停止容器

docker stop 容器ID

或者 docker stop `docker ps -a -q` 停止所有容器

重启容器

docker restart 容器ID

进入一个运行中的容器

docker attach 容器ID

保存容器

docker save myimage | bzip2 -9 -c /home/lcj/save.tar.bz2

加载容器

bzip2 -d -c /home/lcj/save.tar.bz2 | docker load

杀掉运行中的容器

docker kill -s KILL 容器ID

-s:向容器中发送一个信号

docker rm 命令

参数:

-f :通过 SIGKILL 强制删除一个容器,如 docker rm -f a

-l:移除容器间的网络连接,而非容器本身,如 docker rm -l b,其中 b 为连接名,而非容器名

-v:删除与容器关联的卷

docker create :创建一个容器但不运行它,语法同 docker run

docker ps

-a:显示所有的容器,包括未运行的

-f:根据条件过滤显示的内容

-l:显示最近创建的容器

-n:列出最近创建的 n 个容器

-q:静默模式,只显示容器 ID

列出所有创建的容器 ID

docker ps -a -q

停止所有容器 ID

docker stop  `docker ps -a -q`

获取容器/镜像的元数据

docker inspect 容器/镜像名

docker top :查看容器中的进程信息

docker top a(a 是容器)

docker attach :链接到正在运行的容器(该容器必须正在运行)

docker attach a (a 是容器)

docker events :从服务器获取实时事件

-f:根据条件过滤事件

--since:从指定的时间戳后显示所有的事件

--until:流水时间显示到指定的时间为止

显示docker 2016年7月1日后的所有事件

docker events -since="1467302400"

显示docker 镜像为mysql:5.6 2016年7月1日后的相关事件

docker events -f "image"="mysql:5.6" --since="1467302400"

备注:如果指定的时间是到秒级的,需要将时间转成时间戳。如果时间为日期的话,可以直接使用,如--since="2016-07-01"

docker export :将文件系统作为一个 tar 压缩文件导出到 STDOUT

docker port :列出指定的容器端口的映射,或者查找将 PRIVATE_PORT NAT 到面向公众的端口

docker port a(a 为容器名)

docker commit : 从容器创建一个新的镜像

-a:提交的镜像作者

-c:使用 Dockerfile 文件来创建镜像

-m:提交时说明的文字

-p:在 commit 时暂停容器

docker commit -a 'lcj' -m 'has update' 容器 ID 镜像名

docker cp :用于容器与主机之间的数据拷贝

将主机的 test_docker 目录拷贝到容器 /home/lcj 目录下

docker cp /home/lcj/test_docker 容器 ID:/home/lcj/

将容器 /home/lcj 目录拷贝到主机的 test_docker 目录下

docker cp 容器 ID:/home/lcj/ /home/lcj/test_docker

docker login/logout :登录或退出一个 Docker 镜像仓库,如果未指定镜像仓库地址,则默认为 官方 Docker Hub

docker login -u 用户名 -p 密码

docker logout

docker pull :从镜像仓库中拉取或者更新指定镜像

docker pull java

docker push :将本地的镜像上传到镜像仓库,需先登录到镜像仓库

docker push myapache:v1

docker search :从 Docker Hub 查找镜像

--automated,只列出 automated build(自动生成) 类型的镜像

--no-trunc,显示完整的镜像描述

-s:列出收藏数不少于指定值的镜像

从Docker Hub查找所有镜像名包含java,并且收藏数大于10的镜像

docker search -s 10 java

docker images :列出本地所有的镜像

-a:列出本地所有的镜像(含中间映像层,默认情况下,过滤中间映像层)

-q:只显示镜像 ID

docker images 或 docker images ubuntu,列出本地所有镜像或本地仓库名为 ubuntu 的所有的镜像

docker  rmi :删除一个或多个镜像

-f:强制移除

--no_prune:不移除该镜像的过程镜像,默认移除

强制删除本地镜像w3cschool/ubuntu:v4

docker rmi -f w3cschool/ubuntu:v4

docker tag :标记本地镜像,将其归入到某一个仓库

将镜像ubuntu:15.10标记为 w3cschool/ubuntu:v3 镜像

docker tag ubuntu:15.10 w3cschool/ubuntu:v3

docker build:使用 Dockerfile 文件创建镜像

使用当前目录的Dockerfile创建镜像

docker build -t w3cscholl/ubuntu:v3 . (不要漏掉最后的 . 符号)

使用URL  github.com/creack/docker-firefox  的 Dockerfile 创建镜像

docker build github.com/creack/docker-firefox

docker history :查看指定镜像的创建历史

docker save :将指定镜像保存成 tar 压缩文件

-o:输出到文件

docker save -o my_ubuntu_v3.tar w3cschool/ubuntu:v3

docker import:从压缩文件中创建镜像

-c:应用 docker 指令创建镜像

-m:提交时的说明文字

从镜像归档文件my_ubuntu_v3.tar创建镜像,命名为w3cschool/ubuntu:v4

docker import my_buntu_v3.tar w3cschool/ubuntu:v4

用docker来装Java应用在性能上有好处吗?

性能上只是比虚拟机要强一些(这里的虚拟机是指vm 或者psp模拟器这类硬件+操作系统的模拟器。 主要还是为了方便, 你有一个应用要用到python,cmake,db,redis,nodejs等各种个样的环境。 最好的解决方法是把你的开发环境做成一个镜像在虚拟机上跑,但是性能下降很严重。docker的好处是只有那么一点性能消耗,坏处是隔离性不是那么好。 你launch多个应用吃性能的还是jvm, docker可以忽略不计了。

如何使用Docker 进行Java 开发

1、java项目开发,假定已有一个java项目能够编译成jar/war并且运行了。

2、编写dockerfile,docker是一个容器技术每一个容器就是一个“完整”的linux系统,这个dockerfile需要提供这个系统包含内容的描述,比如FROM maven:3.3.3、FROM ubuntu:16.04。如果这个java项目是个web项目那么还需要提供tomcat环境。添加项目构建信息。比如采用maven编译项目的话该如何如何。

ADD pom.xml /tmp/build/

RUN cd /tmp/build  mvn -q dependency:resolve

ADD src /tmp/build/src

        #构建应用RUN cd /tmp/build  mvn -q -DskipTests=true package \

        #拷贝编译结果到指定目录

         rm -rf $CATALINA_HOME/webapps/* \

         mv target/*.war $CATALINA_HOME/webapps/ROOT.war \

        #清理编译痕迹

         cd /  rm -rf /tmp/build

3、暴漏接口:EXPOSE 8080

CMD ["catalina.sh","run"]

4、执行镜像构建

docker build -t docker-demo-java-tomcat .

5、基于创建好的镜像创建容器

docker run -d -p 8080:8080 docker-demo-java-tomcat

6、访问

来源于dockercloud文档,可自去查看。

如何在docker中运行java程序

pom.xml文件定义mainClass为sparkexample.Hello,需要在src/main/java/sparkexample/目录下创建Hello.java文件。Dockerfile

最后我们来编写Dockerfile文件,这个Dockerfile使用到了Java镜像(java:oracle-java8),并从安装Maven开始做起。下一步它会安装项目依赖。我们通过pom.xml来解析这些依赖,正如你所看到的,它允许Docker缓存这些依赖。下一步,要编译打包应用,并启动应用。如果重建应用时,pom.xml文件没有任何修改,之前的步骤都被缓存下来了,直接到最后一步启动应用。这可以加快应用的重新构建速度。

创建和运行

一旦这三个文件已经完成,那创建Docker镜像就变得轻而易举了。

$ docker build -t giantswarm/sparkexample .

注意:首次启动时会花费一些时间,因为它要安装Maven并下载所有的依赖。之后再启动就需要几秒钟,因为所有的东西都已经缓存了。

镜像创建之后,用下面的命令创建容器:

docker run -d -p 4567:4567 giantswarm/sparkexample

用下面的命令访问:

curl localhost:4567 hello from sparkjava.com

关于javadocker和javadockerUtil的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

The End

发布于:2022-11-22,除非注明,否则均为首码项目网原创文章,转载请注明出处。