制作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
制作sentinel docker镜像的更多相关文章
- 制作 leanote docker 镜像 并运行
# 1.制作基础镜像 leanote 使用 mongodb 存储数据,如果把 mongodb 单独做成一个镜像,初始化数据时比较麻烦,所以最后还是决定把 mongodb 和 leanote 放到同一个 ...
- 制作一个docker镜像:mysql-8-x64-linux
因为个人学习需要,为软件系统的虚拟容器化,以下将mysql制作为docker镜像,并记录下详细步骤. 欢迎大家学习交流和转载,同时写作不易,如果各位觉得不错,请点赞支持. 备注:以下代码和文章,欢迎复 ...
- 制作seata docker镜像
seata是阿里巴巴的一款开源的分布式事务框架,官方已经支持docker了,但是因为业务的需要,需要自己定制. 制作docker镜像 官方的Dockerfile.下载seata-server-1.1. ...
- 制作zipkin docker镜像
这里使用的zipkin知识基于内存的版本,没有接入外部存储 https://zipkin.io/ https://github.com/openzipkin/zipkin https://github ...
- 制作 leanote docker 镜像
leanote 使用 mongodb 存储数据,如果把 mongodb 单独做成一个镜像,初始化数据时比较麻烦,所以最后还是决定把 mongodb 和 leanote 放到同一个镜像里边. docke ...
- 【玩转开源】制作Docker镜像
做嵌入式方向经常会遇到的一个问题,就是编译环境安装,如果换电脑,再重新安装环境是一个比较费时的事情,这个时候可以自己制作一个Docker镜像,然后把编译环境在Docker镜像里面配置好,以后同步环境就 ...
- docker制作jdk+tomcat镜像
docker部署TOMCAT项目 一.内核升级 [root@test01 ~]# uname -r #内核查看确认 2.6.32-696.16.1.el6.x86_64 [root@test01 ...
- DOCKER学习_011:使用Dockerfile制作docker镜像
前面使用commit的方式,制作一个docker镜像,本次介绍使用Dockerfile制作一个dockers镜像 [root@docker-server3 ~]# mkdir /openssh [ro ...
- Docker容器打包成镜像 - OpenDaylight官方 SDN Hub Tutorial VM 的docker镜像
由于工作需要,在看OpenDaylight (一个SDN的开源控制器) 官方Tutorial有一个比较基础且介绍比较详细的文档(http://sdnhub.org/tutorials/opendayl ...
随机推荐
- CSS学习—day1
摘要:web前端设计三剑客分为是html.CSS.Javascript,前面我们已经对html基础知识做了介绍,它定义了页面基本组成,而CSS则控制网页的样式和布局. 首先,明确一个问题,什么是CSS ...
- mybatis 分页失败 始终pageSize = 2147483647
是在使用分页查询时 this.jobReadMapper.beginPager(pageParam);XXXXXXXXXXXXXXXXXXXXXXXXthis.xxxReadMapper.queryB ...
- 14.2 Go性能优化
14.2 Go性能优化 优化手段 1.减少HTTP请求数,合并CSS.JS.图片 2.使用CDN,就近访问 3.启用nginx gzip压缩,降低传输内容大小 4.优化后端api性能 api服务性能优 ...
- Spring 由构造函数自动装配
Spring 由构造函数自动装配,这种模式与 byType 非常相似,但它应用于构造器参数. Spring 容器看作 beans,在 XML 配置文件中 beans 的 autowire 属性设置为 ...
- iOS [AFHTTPSessionManager GET:parameters:progress:success:failure:]: unrecognized selector sent to
AFN更新到4.0.1后,崩溃[AFHTTPSessionManager GET:parameters:progress:success:failure:]: unrecognized selecto ...
- poj1904 完美匹配+Tarjan
King's Quest Time Limit: 15000MS Memory Limit: 65536K Total Submissions: 9460 Accepted: 3497 C ...
- 【Java】手把手模拟CAS,瞬间理解CAS的机制
话不多少,先看个案例,[模拟100个用户,每个用户访问10次网站]”: public class ThreadDemo1 { //总访问量 ; //模拟访问的方法 public static void ...
- 一文讲透Modbus协议
前言 Modbus是一种串行通讯协议,是Modicon公司(现在的施耐德电气 Schneider Electric) 于1979年为使用可编程逻辑控制器(PLC)通信而发表.Modbus已经成为工业领 ...
- nodejs链接mysql 中的问题
首先你得对mysql ,有个大概的认识. 比如说:如何安装,使用基本的语法,测试安装是否能成功,以及成功之后简单的对于数据库的,操作(增删改查)... 下面是业务场景:在爬虫过程中,租后需要将信息输出 ...
- Kubernetes实践踩坑系列(一).应用管理的难题
应用管理的两大难题 今天我们主要讨论这两个方面的挑战: 对应用研发而言,K8s API 针对简单应用过于复杂,针对复杂应用难以上手: 对应用运维而言,K8s 的扩展能力难以管理:K8s 原生的 AP ...