文档章节

docker 部署运行jar时的一些记录

重庆_杨静
 重庆_杨静
发布于 05/10 15:12
字数 788
阅读 20
收藏 0

摘要:朋友让我们帮忙在docker上发布一个jar,我自己的服务器上面docker是已经按照了其他的什么都没有;做下记录,反正我是docker 零基础,一下内容都是我自己在做的时候网上查的 你懂的!

  • 我们需要先拉去一个java的镜像(开始我以为拉取jdk的镜像找了半天,结果是拉取java的镜像)
#拉取java镜像
docker pull java:u111
  • 首先创建一个文件夹/usr/local/dockerfiles
  • 然后在这个文件夹里面创建一个文件 文件名"Dockerfile"
# java 是一个已有的包含 jdk 的镜像
 FROM java:8u111
#  作者签名
 MAINTAINER YJ
#  简化 jar 的名字路径 (#:表示注释掉)
 COPY jar/music-0.0.1-SNAPSHOT.jar /app.jar
#  执行 java -jar 命令 (CMD:在启动容器时才执行此行。RUN:构建镜像时就执行此行)
 CMD java -jar /app.jar
#  设置对外端口为 8080
 EXPOSE 8080
  • 将刚刚弄的这个jar 构建成jar
# 构建镜像  在Dockerfile 目录下执行  appimg为你取得镜像名称  注意:1、名称不能大写,2名称后面的空格和点必带
docker build -t appimg .
  • 构建完镜像 现在需要为它创建一个容器
# 为构建好的镜像创建容器 并制定容器名称 "--name tfapp" (tfapp 是容器名称)
docker run -d -p 8080:8080 --name tfapp appimg 
  • 挂载目录!开始查资料的时候 以为是挂载容器上面的,可是我怎么挂,他就是我没有这个镜像,后面才大彻大悟。
#在已经启动的容器对应的镜像"appimg",  挂载外部文件
docker run -it -v /usr/local/dockerfiles/static:/usr/local/dockerfiles/static appimg  /bin/bash

此外在这次记录过程中 本人不知道该如何启动一个镜像(起始启动镜像,系统会自动给你生成一个容器,我是这么理解的)

#启动镜像  "9f38484d220f"  镜像id
docker run -d -i -t 9f38484d220f /bin/bash
#进入已经启动了的镜像(镜像启动了过后,会在容器中生成一个容器)  "2a283bafab27"容器id
docker attach 2a283bafab27

在过程中因为配置不对 总是容器启动了 就停止了 想看日志 又不知道怎么去看。

#查看容器的实时日志 "bda017e9b7d4"容器id
docker logs -f --tail 500  bda017e9b7d4

PS: 在这次安装中 熟练的掌握了几个命令

# 我理解的查看正在运行的容器,反正没看到我那个启动失败容器
docker ps
# 查看所有的容器
docker ps -a 
# 查看镜像
docker images
# 删除镜像
docker rmi 镜像id(镜像名称)
# 删除容器
docker rm 容器id(容器名称)
# 停止容器
docker stop 容器id(容器名称)
# 启动容器
docker start 容器id(容器名称)

© 著作权归作者所有

重庆_杨静
粉丝 3
博文 45
码字总数 27580
作品 0
江北
程序员
私信 提问
SpringCloud 微服务 (十七) 容器部署 Docker

壹 从第一篇Spring Cloud预备学习到现在,基本组件学习也接近尾声,最后完成的项目,就可以部署 关于部署,会结合docker容器进行,在学习Spring Cloud的同时,也粗略学习了docker的知识,也推荐大家...

_大侠__
2018/07/22
2.3K
0
SpringBoot | 第十四章:基于Docker的简单部署

前言 讲解了单元测试,本章节讲讲应用的部署吧。总体而言,在进行自动化部署时,基本都会用上++进行部署。本章节主要讲解使用+进行应用的部署知识。 题外话:对于,本人也是去年才第一次听说...

oKong
2018/07/27
625
1
在Docker容器中部署Spring Boot应用

Docker是开发者的开放平台,它是一个机制,通过将每个应用程序打包到容器中来隔离依赖关系。容器是可扩展的,可更安全的使用和部署。Docker容器能够共享一个内核并共享应用程序库,因此容器比...

RaiseHead
2018/05/30
0
0
谷歌大神为你解释Kubernetes, 微服务和容器化

来自谷歌云平台(Google Cloud Platform)的开发者布道师 Ray Tsang 和 Bret McGowen 在 SpringOne2GX 大会上分享了谷歌的 Kubernetes 的实践,来看看都有哪些内容吧! 微服务解决的痛点 1....

j3t9z7h
2017/12/14
0
0
偏锋书生/duckula

duckula 分布式binlog监听中间件.duckula能像吸血鬼一样从各mysql实例中得到变化的数据,又能自动复活(HA).支持插件化数据接收者和序列化.非常灵活. Features duckula是一套分布式binlog监听中...

偏锋书生
2017/06/02
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Eureka应用注册与集群数据同步源码解析

在之前的EurekaClient自动装配及启动流程解析一文中我们提到过,在构造DiscoveryClient类时,会把自身注册到服务端,本文就来分析一下这个注册流程 客户端发起注册 boolean register() t...

Java学习录
35分钟前
10
0
Java描述设计模式(15):责任链模式

本文源码:GitHub·点这里 || GitEE·点这里 一、生活场景描述 1、请假审批流程 公司常见的请假审批流程:请假天数 当 day<=3 天,项目经理审批当 3<day<=5 天,部门经理审批当 day>5 天...

知了一笑
45分钟前
8
0
总结:数组与链表

1、内存申请:数组在内存上是连续的空间;链表,内存地址上可以是不连续的。 2、查询速度:数组可以随机访问,链表必须顺序访问,即从首个元素开始遍历,逐个查找,所以数组查询很快。 3、写入...

浮躁的码农
54分钟前
6
0
HashMap源码分析

read

V丶zxw
今天
5
0
Python字符串或JSON字符串转字典dict、列表list

有3种方法 1、使用ast模块 >>> import ast>>> s = '["test",1]'>>> ast.literal_eval(s)['test',1]>>> s = '{"test":1}'>>> ast.literal_eval(s){'test': 1} 2、eval函数,这个......

编程老陆
今天
8
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部