zoukankan      html  css  js  c++  java
  • 制作sentinel docker镜像

    在sentinel官方下载jar包即可运行,但是在部署的时候一个一个的启动jar包很不方便,制作成镜像方便部署和管理。
    1)直接运行

    # 修改端口号,默认是8080
    java -jar sentinel-dashboard-1.7.0.jar --server.port=9090 
    

    2)制作镜像
    准备工作

    cd /home/docker/sentinel
    ls
    sentinel-dashboard-1.7.0.jar
    jdk-8u144-linux-x64.tar.gz
    

    vim Dockerfile

    FROM centos:7
    MAINTAINER pader "bartggg@163.com"
    
    RUN set -x 
        && mkdir -p /opt/sentinel 
        && cd /opt/sentinel 
        && mkdir -p logs 
    	&& cd logs 
    	&& touch start.out 
    	&& ln -sf /dev/stdout start.out 
    	&& ln -sf /dev/stderr start.out 
        && ln -snf /usr/share/zoneinfo/$TIME_ZONE /etc/localtime && echo '$TIME_ZONE' > /etc/timezone 
    # 允许挂载该目录
    VOLUME /opt/sentinel/logs 
    
    # 添加jdk、sentinel的jar包
    ADD jdk-8u144-linux-x64.tar.gz /opt
    ADD sentinel-dashboard-1.7.0.jar /opt/sentinel/sentinel-dashboard.jar
    
    # set environment
    ENV BASE_DIR="/opt/sentinel" 
        JAVA_HOME="/opt/jdk1.8.0_144" 
        JAVA="/opt/jdk1.8.0_144/bin/java" 
        JVM_XMS="512m" 
        JVM_XMX="512m" 
        JVM_XMN="256m" 
        JVM_MS="32m" 
        JVM_MMS="20m" 
        TIME_ZONE="Asia/Shanghai" 
        SERVER_PORT="8080"
    
    ENV JAVA_OPT="-jar ${BASE_DIR}/sentinel-dashboard.jar -server -Xms=${JVM_XMS} -Xmx=${JVM_XMX} -Xmn=${JVM_XMN} -XX:MetaspaceSize=${JVM_MS} -XX:MaxMetaspaceSize=${JVM_MMS} --server.port=${SERVER_PORT}"
    
    WORKDIR $BASE_DIR
    EXPOSE 8080
    
    CMD echo "$JAVA ${JAVA_OPT}" > ${BASE_DIR}/logs/start.out && nohup $JAVA ${JAVA_OPT} >> ${BASE_DIR}/logs/start.out 2>&1 < /dev/null
    

    构建&运行:

    docker build -t bart/sentinel:1.7.0 .
    # 查看镜像
    docker images
    # 运行镜像
    docker run -d 
    --name sentinel 
    --restart always 
    -p 8080:8080 
    -v /home/gwc/docker/sentinel:/opt/sentinel/logs 
    bart/sentinel:1.7.0
    
    # 测试
    curl http://localhost:8080
    
    # 导出镜像
    docker save -o /home/gwc/docker/sentinel/sentinel.tar bart/sentinel:1.7.0
    # 导入镜像
    docker load -i /home/gwc/docker/sentinel/sentinel.tar
    
  • 相关阅读:
    关于java.lang.reflect.InvocationTargetException
    Java并发编程(三)后台线程(Daemon Thread)
    Lab 7-2
    Lab 7-1
    Lab 6-3
    Lab 6-2
    Lab 6-1
    Lab 5-1
    Lab 3-4
    Lab 3-3
  • 原文地址:https://www.cnblogs.com/bartggg/p/12981981.html
Copyright © 2011-2022 走看看