首页 > 其他分享 >IDEA-docker

IDEA-docker

时间:2023-03-04 19:45:45浏览次数:47  
标签:8080 demo app jar IDEA idea docker

前置动作:

  • 安装好docker,拉取了java镜像(java:8u111-jdk或java:latest)
  • 开发好jar形式的应用,定义好server port,假设为8080

IDEA配置(参考《丝滑的打包部署,一套带走》):

  • 新建Dockerfile(build/Dockerfile):
    FROM java:8u111-jdk
    
    # MAINTAINER 指令允许你给将要制作的镜像设置作者信息
    MAINTAINER author <[email protected]>
    # 容器内创建一个 app 目录,用来挂载 jar 包
    RUN mkdir -p /app
    # 将 idea-demo-1.0 jar 包复制到 /app/idea-demo.jar
    ADD idea-demo-1.0.jar /app/idea-demo.jar
    # 设置时区
    ENV TZ "Asia/Shanghai"
    # 设置暴露的端口
    EXPOSE 8080
    #dockerfile中增加健康检查,interval表示每个5分钟检查一次,timeout每次超过5秒钟认定为失败,retries失败后轮询3次认定为容器不健康,考虑重启。
    #HEALTHCHECK --interval=60s --timeout=5s --retries=6 \
    #  CMD curl -f http://localhost:8080/health || exit 1
    # 运行 Java 应用程序的命令
    ENTRYPOINT ["java","-jar","/app/idea-demo.jar"]
  • 在IDEA中创建一个Run/Debug configuration,选Docker/Dockerfile。运行后会打包镜像。如果配置了Run选项,打包后会自动启动容器。如配置了Bind ports,则此时启动的容器会暴露出8080端口,供外部访问。
    Name:Package idea-demo
    Server:Docker
    Build
    Dockerfile:build\DockerfileDev
    Context folder:target
    Image tag:idea-demo-1.0
    Run
    Container name:idea-demo
    Bind ports:8080:8080
  • 在IDEA中创建一个Run/Debug configuration,选Docker/Docker Image
    Name:run idea-demo
    Sever:Docker
    Image ID or name:idea-demo-1.0
    Container name:idea-demo
    Bind ports:8080:8080

部署:

 

标签:8080,demo,app,jar,IDEA,idea,docker
From: https://www.cnblogs.com/badwood316/p/17178933.html

相关文章

  • docker启动创建容器时,报错Cannot link to /mysql, as it does not belong to the defa
    启动创建容器时,报错Cannotlinkto/mysql,asitdoesnotbelongtothedefaultnetwork从报错信息看是不属于默认网络分析容器网络通过dockerinspect容器id先......
  • 在Docker中配置网络并访问互联网
    Docker是一个流行的容器化平台,可以帮助用户轻松地创建、部署和运行应用程序。在使用Docker时,网络配置是一个很重要的问题。本文将介绍如何在Docker中配置网络,并访问互联网......
  • mac-docker
    安装:直接下载img安装通过brew安装:brewinstall--cask--appdir=/Applicationsdocker配置:设置国内镜像:在desktop的设置(Preferences)界面中,DockerEngine的json中......
  • PostgreSQL Docker部署指南
    1.Dockercomposeversion:'3'services:postgresql:container_name:postgresqlimage:'rapidfort/postgresql'network: nginx_net: ipv......
  • 如何在 OpenEuler 系统中安装 Docker
    Docker是一种流行的开源容器化平台,它能够将应用程序与其依赖项打包成可移植的容器,从而简化了应用程序的部署和管理。本文将介绍在OpenEuler系统中安装Docker并使用Do......
  • docker搭建maven私服(nexus3),整合springboot上传下载依赖
    一、前言我们在JavaWeb开发中必不可少的就是jar包管理-maven,在没有maven之前,都是自己手动下载jar包导入到项目中,非常的繁琐。maven出现之后,又迎来新的问题,对于仓库里人家......
  • docker-compose up -d 运行报错: ERROR: https://dl-cdn.alpinelinux.org/alpine/v3.1
    docker部署python时执行到RUNapkupdate....命令出现错误:ERROR:https://dl-cdn.alpinelinux.org/alpine/v3.17/community:BADsignature一般是软件包源地址请求......
  • 在阿里云服务器上,配置docker加速器
    在阿里云服务器上配置Docker加速器可以大大加速Docker镜像的下载速度,以下是具体步骤:登录阿里云控制台,打开容器镜像服务。在左侧导航栏中选择“加速器”,然后单击“立......
  • 如何编写正确高效的Dockerfile
    Dockerfile是什么Dockerfile非常普通,它就是一个纯文本,里面记录了一系列的构建指令,比如选择基础镜像、拷贝文件、运行脚本等等,RUN,COPY,ADD指令都会生成一个Layer,而Do......
  • docker下mysql容器数据的定时备份与恢复
    1、数据备份脚本vimmysqldump.sh#!/bin/bashdockerexec-i容器id/容器名mysqldump-uroot-proot-A>/mydata/mysqldump/mydb.sql-A表示备份所有数据库......