栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 系统运维 > 运维 > Linux

docker学习(十一)SpringCloud将线上环境debug到本地IDEA

Linux 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

docker学习(十一)SpringCloud将线上环境debug到本地IDEA

引言:一般本地开发完的功能,上传到dev环境,很多时候,本地没有问题,上了linux就各种问题。如何将dev环境的请求指向本地,在本地观察数据变化,可以快速定位问题。

环境一致

本地连的中间件,与dev环境连接需要一致,比如数据库、redis

项目部署环境

gitlab cicd、docker

项目配置变更

.gitlab-ci 文件

variables:
  GIT_STRATEGY: fetch
  project_name: "online-taxi"
  service_name: "order-service"
  port: 9050
  debug_port: 9051

stages:
  - build
  - deploy

############################## HW DEV ENV ##############################

dev-hw:build:
  tags:
    - dev-hw
  stage: build
  script:
    - echo -e "n[$CI_JOB_NAME] $(date) ($CI_BUILD_REF_NAME) ($CI_BUILD_STAGE)n" | tee -a /tmp/test.txt
    - mvn clean package
    - sh scripts/clean-image.sh $service_name latest
    - docker build -f Dockerfile -t $service_name:latest .
  when:
    manual

dev-hw:deploy:
  tags:
    - dev-hw
  stage: deploy
  needs: [ "dev-hw:build" ]
  script:
    - echo -e "n[$CI_JOB_NAME] $(date) ($CI_BUILD_REF_NAME) ($CI_BUILD_STAGE)n" | tee -a /tmp/test.txt
    - sh scripts/clean-container.sh $service_name
    - docker create -m 1G --name $service_name -p $port:$port -p $debug_port:5005 -e "SPRING_PROFILES_ACTIVE=dev-hw" -v /var/log/$project_name:/var/log/$project_name $service_name:latest
    - docker start $service_name
  when:
    manual

主要增加这两行
debug_port: 9051
-p $debug_port:5005
目的:将容器5005端口指向宿主机9051

Dockerfile 增加配置

FROM openjdk:8-jdk-alpine
VOLUME /tmp
VOLUME /var/log/online-taxi
ADD target/order-service.jar order-service.jar
EXPOSE 9050
ENV TZ Asia/Shanghai
RUN sed -i 's/dl-cdn.alpinelinux.org/mirrors.aliyun.com/g' /etc/apk/repositories
RUN apk add tzdata ttf-dejavu fontconfig 
    && cp /usr/share/zoneinfo/${TZ} /etc/localtime 
    && echo ${TZ} > /etc/timezone 
    && apk del tzdata
ENTRYPOINT ["java", "-Xdebug", "-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005", "-Djava.security.egd=file:/dev/./urandom", "-jar", "/order-service.jar"]

主要增加
“-Xdebug”, “-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005”,

然后重新部署dev环境

idea配置





post请求dev环境接口,本地可收到请求。前提:其他人没有在调用这个接口;本地与线上 代码、环境都是一致的

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/751440.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号