docker-compose部署springboot项目

简介: docker-compose部署springboot项目

正文


一、提前条件


1.云服务器:CentOS 8

2.微服务项目:已打包好jar包

3.jdk环境:免积分下载-jdk-linux-1.8

4.安装好容器docker


二、制作镜像


1.创建Dockerfile(简单理解就是制作镜像的文本文档)


#必须第一个写,指定基础镜像
FROM centos:8 
#作者
MAINTAINER laokou-koushenhai 
#在当前目录的文件,拷贝过去会自动解压到指定目录
ADD jdk-linux-1.8.tar.gz /laokou
#环境变量
ENV JAVA_HOME /laokou/jdk1.8
ENV CLASSPATH $JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
ENV PATH $PATH:$JAVA_HOME/bin


注意:jdk1.8和Dockerfile放在同一个目录


2.制作镜像


docker build -t 镜像名称 .

注意:命令后面还有一个"."不要忘记加上啦


3.查看镜像


docker images


111.png


三、部署微服务


1.安装docker-compose(可以理解为我敲完运行命令,能够一下子运行多个项目)


1.1 免积分下载-docker-compose


1.2 创建文件夹


mkdir -p /laokou/data


1.3 上传docker-compose到该目录下


1.4 重命名为docker-compose,修改其权限


chmod +x /laokou/data/docker-compose


2.创建docker-compose.yml


version: '3'
services:
  laokou-gateway-service:
    # 指定容器名称
    container_name: laokou-gateway
    # 重启机制
    restart: always
    image: jdk:latest
    volumes:
      # 挂载本地jar包路径
      - /laokou/gateway.jar:/gateway.jar
      # 挂载日志
      - ./log:/log
    ports:
    - "1234:1234"
    environment:
      # 指定时区
      - TZ="Asia/Shanghai"
    command: java -jar gateway.jar > gatway.log
  laokou-sso-service:
    # 指定容器名称
    container_name: laokou-sso
    # 重启机制
    restart: always
    image: jdk:latest
    volumes:
      # 挂载本地jar包路径
      - /laokou/sso.jar:/sso.jar
      # 挂载日志
      - ./log:/log
    # 访问端口
    ports:
    - "1111:1111"
    environment:
      # 指定时区
      - TZ="Asia/Shanghai"
    #启动容器后执行的命令
    entrypoint: java -jar sso.jar > sso.log


3.启动项目


docker-compose up -d


目录
相关文章
|
13天前
|
关系型数据库 MySQL API
|
7天前
|
人工智能 API 数据安全/隐私保护
使用 Docker 一键免费部署 63.8k 的私人 ChatGPT 网页应用
NextChat 是一个可以在 GitHub 上一键免费部署的私人 ChatGPT 网页应用,支持 GPT3、GPT4 和 Gemini Pro 模型。该项目在 GitHub 上获得了 63.8k 的 star 数。部署简单,只需拉取 Docker 镜像并运行容器,设置 API Key 后即可使用。此外,NextChat 还提供了预设角色的面具功能,方便用户快速创建对话。
57 22
使用 Docker 一键免费部署 63.8k 的私人 ChatGPT 网页应用
|
15天前
|
Java 应用服务中间件
SpringBoot获取项目文件的绝对路径和相对路径
SpringBoot获取项目文件的绝对路径和相对路径
53 1
SpringBoot获取项目文件的绝对路径和相对路径
|
6天前
|
存储 运维 安全
Spring运维之boot项目多环境(yaml 多文件 proerties)及分组管理与开发控制
通过以上措施,可以保证Spring Boot项目的配置管理在专业水准上,并且易于维护和管理,符合搜索引擎收录标准。
18 2
|
10天前
|
分布式计算 关系型数据库 MySQL
SpringBoot项目中mysql字段映射使用JSONObject和JSONArray类型
SpringBoot项目中mysql字段映射使用JSONObject和JSONArray类型 图像处理 光通信 分布式计算 算法语言 信息技术 计算机应用
33 8
|
9天前
|
运维 开发者 Docker
Docker Compose:简化容器化应用的部署与管理
Docker Compose:简化容器化应用的部署与管理
|
9天前
|
Docker 微服务 容器
使用Docker Compose实现微服务架构的快速部署
使用Docker Compose实现微服务架构的快速部署
19 1
|
17天前
|
JSON Java 数据库
SpringBoot项目使用AOP及自定义注解保存操作日志
SpringBoot项目使用AOP及自定义注解保存操作日志
33 1
|
9天前
|
NoSQL Redis Docker
【赵渝强老师】使用Docker Compose管理容器
Docker Compose 通过 YAML 文件管理多个容器,简化复杂系统的部署和管理。本文介绍了 Docker Compose 的基本概念,并通过一个包含 Redis DB 和 Python Web 模块的示例,展示了如何使用 Docker Compose 部署和管理多容器应用。手动部署和 Docker Compose 部署的对比突显了 Docker Compose 在系统复杂度增加时的优势。
|
9天前
|
前端开发 开发者 Docker
深入探索Docker Compose:简化多容器应用的部署
深入探索Docker Compose:简化多容器应用的部署
34 0