本文已参与「新人创作礼」活动,一起开启掘金创作之路
1.下载sentinel-dashboard的jar包
创建文件夹/sentinel-dashboard,将下载的jar放到该目录下。
2.创建Dockerfile & bulid镜像
在sentinel-dashboard目录下创建Dockerfile,内容如下:
FROM openjdk:8
#复制上下文目录下的jar包到容器里 使用COPY命令亦可
ADD sentinel-dashboard-1.8.3.jar sentinel-dashboard-1.8.3.jar
EXPOSE 8080
#指定容器启动程序及参数 <ENTRYPOINT> "<CMD>"
ENTRYPOINT ["java","-jar","sentinel-dashboard-1.8.3.jar"]
保存文件,当前目录下执行如下命令创建docker images
docker build -t sentinel-dashboard:1.8.3 .
创建成功后,可通过docker images命令查看到对应镜像
root@246:/home/liumeng/sentinel-dasboard# docker images |grep sentinel
sentinel-dashboard 1.8.3 95ca4c712f05 10 seconds ago 547MB
创建docker-compose文件
version: '3'
services:
sentinel-dashboard:
image: sentinel-dashboard:1.8.3
container_name: sentinel-dashboard
restart: always
environment:
JAVA_OPTS: "-Dserver.port=8080 -Dcsp.sentinel.dashboard.server=localhost:8080 -Dproject.name=sentinel-dashboard -Djava.security.egd=file:/dev/./urandom -Dcsp.sentinel.api.port=8719"
ports: #避免出现端口映射错误,建议采用字符串格式 8080端口为Dockerfile中EXPOSE端口
- "58080:8080"
- "8719:8719"
volumes:
- ./root/logs:/root/logs
保存文件并退出,执行命令创建并启动容器。
docker-compose up -d
创建成功后,可通过访问localhost:58080访问sentinel-dashboard的web界面。其中8719是客户端监控API的端口。 可以使用
java -Dserver.port=8718 -Dcsp.sentinel.dashboard.server=localhost:58080 -Dproject.name=sentinel-dashboard -Dcsp.sentinel.api.port=8719 -jar a.jar
至此,sentinel-dashboard安装完成。
3. 上传镜像
docker login --username=xxx registry.cn-hangzhou.aliyuncs.com --password=xxx
docker tag sentinel-dashboard:1.8.3 registry.cn-hangzhou.aliyuncs.com/tpdev/sentinel-dashboard:1.8.3
docker push registry.cn-hangzhou.aliyuncs.com/tpdev/sentinel-dashboard:1.8.3
修改docker-compose为
version: '3'
services:
sentinel-dashboard:
image: registry.cn-hangzhou.aliyuncs.com/tpdev/sentinel-dashboard:1.8.3
container_name: sentinel-dashboard
restart: always
environment:
JAVA_OPTS: "-Dserver.port=8080 -Dcsp.sentinel.dashboard.server=localhost:8080 -Dproject.name=sentinel-dashboard -Djava.security.egd=file:/dev/./urandom -Dcsp.sentinel.api.port=8719"
ports: #避免出现端口映射错误,建议采用字符串格式 8080端口为Dockerfile中EXPOSE端口
- "58080:8080"
- "8719:8719"
volumes:
- ./root/logs:/root/logs