docker(常見調試技巧):docker打包鏡像調試技巧


寫Dockerfile可以先不指定CMD、ENTRYPOINT等啟動命令,只要拷貝就好了

如下:

# Dockerfile for basic-app-client
# Build with:
# docker build -t basic-app-client:1.2.2-jdk7 .
# Run with:
# docker run -di --name basic-app-client basic-std-etl-client:1.2.2-jdk7


FROM openjdk:7-jre-alpine
MAINTAINER haokailin <haokailin@umfintech.com>

ENV VERSION 1.2.2

RUN \
    echo "http://mirrors.aliyun.com/alpine/v3.8/main" > /etc/apk/repositories && \
    echo "http://mirrors.aliyun.com/alpine/v3.8/community" >> /etc/apk/repositories  && \
    apk update upgrade && \
    apk add --no-cache procps curl bash && \
    ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime && \
    echo "Asia/Shanghai" > /etc/timezone

ADD app /usr/mpsp/app

#CMD ["/usr/mpsp/app/script/serv.sh","console"]

先注釋掉CMD啟動命令,打包鏡像app,然后用sh命令啟動並進入容器,

docker run -ti   basic-app-client:1.2.2.2-jdk7 sh

# 進入容器后,再執行啟動腳本,調試。

 

進入容器后,再啟動應用的啟動腳本,調試即可。

非常適用於docker log日志查看報錯信息 不明確的情況,

如  exec user process caused "no such file or directory,這種報錯。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM