xiangpei
2 天以前 cca9b37d15cefe705d03219e2be1f73d77ee7254
docker compose
8个文件已添加
381 ■■■■■ 已修改文件
docker/docker-compose.yml 255 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docker/dockerfiles/buyer-api-dockerfile 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docker/dockerfiles/common-api-dockerfile 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docker/dockerfiles/consumer-dockerfile 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docker/dockerfiles/lmk-job-dockerfile 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docker/dockerfiles/manager-api-dockerfile 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docker/dockerfiles/seller-api-dockerfile 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docker/dockerfiles/xxl-job-dockerfile 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
docker/docker-compose.yml
New file
@@ -0,0 +1,255 @@
version: '3.9'
services:
  # redis
  redis:
    image: redis
    restart: always
    container_name: redis
    ports:
      - 6379:6379  # 需要可以远程访问
    volumes:
      - redisdata:/data
    networks:
      - lmk
  # mysql
  mysql:
    image: mysql:8
    restart: always
    container_name: mysql
    ports:
      - 6033:3306  # 需要可以远程访问
    volumes:
      - /usr/local/mysql/data:/var/lib/mysql   # 自动数据卷,数据库数据
      - /usr/local/mysql/conf:/etc/mysql/conf.d   # 自动数据卷,数据库配置
      - /usr/local/mysql/log:/var/log/mysql   # 自动数据卷,数据库日志
    networks:
      - lmk
    environment:
      MYSQL_USER: lmk
      MYSQL_ROOT_PASSWORD: myk@2025888
    depends_on:
      - redis
  # 检索引擎
  es:
    image: elasticsearch:7.9.3
    restart: always
    container_name: es
    ports:
      - 9200:9200
      - 9300:9300
    networks:
      - lmk
    environment:
      discovery.type: single-node
    depends_on:
      - redis
  # rocketmq服务发现
  rocketmq-nameserver:
    image: apache/rocketmq:4.8.0
    restart: always
    container_name: rocketmq-nameserver
    ports:
      - 9876:9876
    networks:
      - lmk
    command: sh mqnamesrv
    depends_on:
      - redis
  # rocketmq服务发现
  rocketmq:
    image: apache/rocketmq:4.8.0
    restart: always
    container_name: rocketmq
    ports:
      - 10912:10912
      - 10911:10911
      - 8080:8080
      - 8081:8081
    command: sh mqbroker -c /etc/rocketmq/broker.conf
    environment:
      - NAMESRV_ADDR=rocketmq-nameserver:9876
      - AUTO_CREATE_TOPIC_ENABLE=true # 关键配置:允许自动创建主题
    volumes:
      - /usr/local/mq/broker.conf:/etc/rocketmq/broker.conf
    networks:
      - lmk
    depends_on:
      - rocketmq-nameserver
  # java程序
  common-api:
    build:
      context: ./dockerfiles
      dockerfile: common-api-dockerfile
      args:
        JAR_FILE: /usr/local/java/common-api/common-api-4.3.jar
    container_name: common-api
    restart: always
    ports:
      - 8890:8890
    volumes:
      - /usr/local/java/common-api:/usr/local/java   # 将jar包和配置文件映射到容器内
    networks:
      - lmk
    depends_on:
      - es
      - rocketmq-nameserver
      - rocketmq
      - redis
      - mysql
  # java程序
  consumer:
    build:
      context: ./dockerfiles
      dockerfile: consumer-dockerfile
      args:
        JAR_FILE: /usr/local/java/consumer/consumer-4.3.jar
    container_name: consumer
    restart: always
    ports:
      - 8886:8886
    volumes:
      - /usr/local/java/consumer:/usr/local/java   # 将jar包和配置文件映射到容器内
    networks:
      - lmk
    depends_on:
      - es
      - rocketmq-nameserver
      - rocketmq
      - redis
      - mysql
  # java程序
  buyer-api:
    build:
      context: ./dockerfiles
      dockerfile: buyer-api-dockerfile
      args:
        JAR_FILE: /usr/local/java/buyer-api/buyer-api-4.3.jar
    container_name: buyer-api
    restart: always
    ports:
      - 8888:8888
    volumes:
      - /usr/local/java/buyer-api:/usr/local/java   # 将jar包和配置文件映射到容器内
    networks:
      - lmk
    depends_on:
      - es
      - rocketmq-nameserver
      - rocketmq
      - redis
      - mysql
  # java程序
  seller-api:
    build:
      context: ./dockerfiles
      dockerfile: seller-api-dockerfile
      args:
        JAR_FILE: /usr/local/java/seller-api/seller-api-4.3.jar
    container_name: seller-api
    restart: always
    ports:
      - 8889:8889
    volumes:
      - /usr/local/java/seller-api:/usr/local/java   # 将jar包和配置文件映射到容器内
    networks:
      - lmk
    depends_on:
      - es
      - rocketmq-nameserver
      - rocketmq
      - redis
      - mysql
  # java程序
  manager-api:
    build:
      context: ./dockerfiles
      dockerfile: manager-api-dockerfile
      args:
        JAR_FILE: /usr/local/java/manager-api/manager-api-4.3.jar
    container_name: manager-api
    restart: always
    ports:
      - 8887:8887
    volumes:
      - /usr/local/java/manager-api:/usr/local/java   # 将jar包和配置文件映射到容器内
    networks:
      - lmk
    depends_on:
      - es
      - rocketmq-nameserver
      - rocketmq
      - redis
      - mysql
  # java程序
  lmk-job:
    build:
      context: ./dockerfiles
      dockerfile: lmk-job-dockerfile
      args:
        JAR_FILE: /usr/local/java/lmk-job/lmk-job-4.3.jar
    container_name: lmk-job-api
    restart: always
    ports:
      - 10001:10001
    volumes:
      - /usr/local/java/lmk-job:/usr/local/java   # 将jar包和配置文件映射到容器内
    networks:
      - lmk
    depends_on:
      - es
      - rocketmq-nameserver
      - rocketmq
      - redis
      - mysql
  # xxl-job
  xxl-job:
    build:
      context: ./dockerfiles
      dockerfile: xxl-job-dockerfile
      args:
        JAR_FILE: /usr/local/java/xxl-job/xxl-job-admin-2.3.0.jar
    container_name: xxl-job
    restart: always
    ports:
      - 9001:9001
    volumes:
      - /usr/local/java/xxl-job:/usr/local/java   # 将jar包和配置文件映射到容器内
    networks:
      - lmk
    depends_on:
      - es
      - rocketmq-nameserver
      - rocketmq
      - redis
      - mysql
  # nginx
  nginx:
    image: nginx
    container_name: nginx
    restart: always
    volumes:
      - /usr/local/nginx/html:/usr/share/nginx/html  # 映射站点文件
      - /usr/local/nginx/nginx.conf:/etc/nginx/nginx.conf # 映射配置文件
      - /usr/local/nginx/https:/usr/share/nginx/https # ssl
    ports:
      - 80:80       # 80、443映射到主机端口
      - 443:443
    networks:
      - lmk
    depends_on:
      - common-api
      - consumer
      - buyer-api
      - seller-api
      - manager-api
      - lmk-job
      - xxl-job
volumes:
  redisdata: {}
networks:
  lmk:
    external: true
docker/dockerfiles/buyer-api-dockerfile
New file
@@ -0,0 +1,18 @@
# 基础镜像
FROM eclipse-temurin:8
# 作者
MAINTAINER xp
# 工作目录
WORKDIR /usr/local/java
# 同步docker内部的时间
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 设置时区
ENV TZ=Asia/Shanghai
EXPOSE 8888
# 复制jar包到/user/local/java下
ARG JAR_FILE
ADD ${JAR_FILE} ./buyer-api-4.3.jar
ENTRYPOINT ["nohup","java","-Dspring.profiles.active=prod","-Dspring.config.location=/usr/local/java/config/application.yml,/usr/local/java/config/application-prod.yml","-jar","/usr/local/java/buyer-api-4.3.jar"]
docker/dockerfiles/common-api-dockerfile
New file
@@ -0,0 +1,18 @@
# 基础镜像
FROM eclipse-temurin:8
# 作者
MAINTAINER xp
# 工作目录
WORKDIR /usr/local/java
# 同步docker内部的时间
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 设置时区
ENV TZ=Asia/Shanghai
EXPOSE 8890
# 复制jar包到/user/local/java下
ARG JAR_FILE
ADD ${JAR_FILE} ./common-api-4.3.jar
ENTRYPOINT ["nohup","java","-Dspring.profiles.active=prod","-Dspring.config.location=/usr/local/java/config/application.yml,/usr/local/java/config/application-prod.yml","-jar","/usr/local/java/common-api-4.3.jar"]
docker/dockerfiles/consumer-dockerfile
New file
@@ -0,0 +1,18 @@
# 基础镜像
FROM eclipse-temurin:8
# 作者
MAINTAINER xp
# 工作目录
WORKDIR /usr/local/java
# 同步docker内部的时间
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 设置时区
ENV TZ=Asia/Shanghai
EXPOSE 8886
# 复制jar包到/user/local/java下
ARG JAR_FILE
ADD ${JAR_FILE} ./consumer-4.3.jar
ENTRYPOINT ["nohup","java","-Dspring.profiles.active=prod","-Dspring.config.location=/usr/local/java/config/application.yml,/usr/local/java/config/application-prod.yml","-jar","/usr/local/java/consumer-4.3.jar"]
docker/dockerfiles/lmk-job-dockerfile
New file
@@ -0,0 +1,18 @@
# 基础镜像
FROM eclipse-temurin:8
# 作者
MAINTAINER xp
# 工作目录
WORKDIR /usr/local/java
# 同步docker内部的时间
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 设置时区
ENV TZ=Asia/Shanghai
EXPOSE 10001
# 复制jar包到/user/local/java下
ARG JAR_FILE
ADD ${JAR_FILE} ./lmk-job-4.3.jar
ENTRYPOINT ["nohup","java","-Dspring.profiles.active=prod","-Dspring.config.location=/usr/local/java/config/application.yml,/usr/local/java/config/application-prod.yml","-jar","/usr/local/java/lmk-job-4.3.jar"]
docker/dockerfiles/manager-api-dockerfile
New file
@@ -0,0 +1,18 @@
# 基础镜像
FROM eclipse-temurin:8
# 作者
MAINTAINER xp
# 工作目录
WORKDIR /usr/local/java
# 同步docker内部的时间
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 设置时区
ENV TZ=Asia/Shanghai
EXPOSE 8887
# 复制jar包到/user/local/java下
ARG JAR_FILE
ADD ${JAR_FILE} ./manager-api-4.3.jar
ENTRYPOINT ["nohup","java","-Dspring.profiles.active=prod","-Dspring.config.location=/usr/local/java/config/application.yml,/usr/local/java/config/application-prod.yml","-jar","/usr/local/java/manager-api-4.3.jar"]
docker/dockerfiles/seller-api-dockerfile
New file
@@ -0,0 +1,18 @@
# 基础镜像
FROM eclipse-temurin:8
# 作者
MAINTAINER xp
# 工作目录
WORKDIR /usr/local/java
# 同步docker内部的时间
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 设置时区
ENV TZ=Asia/Shanghai
EXPOSE 8889
# 复制jar包到/user/local/java下
ARG JAR_FILE
ADD ${JAR_FILE} ./seller-api-4.3.jar
ENTRYPOINT ["nohup","java","-Dspring.profiles.active=prod","-Dspring.config.location=/usr/local/java/config/application.yml,/usr/local/java/config/application-prod.yml","-jar","/usr/local/java/seller-api-4.3.jar"]
docker/dockerfiles/xxl-job-dockerfile
New file
@@ -0,0 +1,18 @@
# 基础镜像
FROM eclipse-temurin:8
# 作者
MAINTAINER xp
# 工作目录
WORKDIR /usr/local/java
# 同步docker内部的时间
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 设置时区
ENV TZ=Asia/Shanghai
EXPOSE 9001
# 复制jar包到/user/local/java下
ARG JAR_FILE
ADD ${JAR_FILE} ./xxl-job-admin-2.3.0.jar
ENTRYPOINT ["nohup","java","-Dspring.profiles.active=prod","-Dspring.config.location=/usr/local/java/config/application.yml,/usr/local/java/config/application-prod.yml","-jar","/usr/local/java/xxl-job-admin-2.3.0.jar"]