关于docker运行动态传参及自启动问题

本文介绍了如何在Docker中进行动态传参,以改变Spring Boot应用的端口,并通过Supervisor实现应用的自启动和监控。通过构建Docker镜像,设置环境变量启动容器,以及配置Supervisor的详细步骤,确保应用能够按需启动并保持运行状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、程序准备

 

创建spring-boot web程序,以便测试使用,主要验证启动Docker外部传递端口参数,实现启动不同端口,WEB端访问测试

1.启动命令(默认8080端口)

java docker-test-0.0.1-SNAPSHOT.jar

浏览器效果:

 

 

2.启动命令

java -Dserver.port=9000 -jar docker-test-0.0.1-SNAPSHOT.jar

浏览器效果:

 

二、Docker环境准备

1.相关命令

 

docker build -t mydocker:v0.1 .   //build创建镜像

 

docker images   //查看镜像列表

 

docker rmi 60a1a1c83824  //删除镜像

 

docker run -it -d --net=host --name peng -P 270fd5fee3ba  //启动容器

 

docker ps -a  //查看正在运行容器

 

docker stop 95cf1521dcb6  //停止容器

 

docker exec -it 4bf33f9a7f14 /bin/bash  //进入正在执行容器

 

 

 

2.安装包及Dockfile

 

3.创建镜像

docker build -t mydocker:v0.1 .

 

 

4.查看可用镜像

Docker images   

 

 

5.启动容器

docker images

docker run -it -d --net=host --name peng -P d6570f6c0afa

 

 

6.查看容器

docker ps -a 

 

此时容器已经启动,访问浏览器,WEB已经部署完成

 

7.进入容器

 

docker ps -a 

docker exec -it 3e4048500a06  /bin/bash

 

 

 

三、验证动态传参

docker run -it -d -e PARAMS="8000"  --net=host --name zhangpeng -P  e30e64d08c49

 

 

 

 

四、配置Supervisor 实现任务监控

 

1.解压 meld3-1.0.1.tar.gz   和 supervisor-3.3.5.tar.gz

 

cd meld3-1.0.1 执行  python setup.py install

cd supervisor-3.3.5  执行 python setup.py install

 

2.生成配置文件

echo_supervisord_conf > /etc/supervisord.conf

 

3.启动

supervisord -c /etc/supervisord.conf

 

#查看进程

ps aux | grep supervisord

 

 

 

4.配置

vim /etc/supervisord.conf

 

[inet_http_server]         ; inet (TCP) server disabled by default

port=192.168.10.101:9001        ; ip_address:port specifier, *:port for all iface

username=user              ; default is no username (open server)

password=123               ; default is no password (open server)

 

[program:checkFile]

command=nohup java -jar docker-test-0.0.1-SNAPSHOT.jar &          ;执行命令

process_name=%(program_name)s

autostart=true                   ; 程序是否随supervisor启动而启动

autorestart=true                 ;程序停止时,是否自动重启

startsecs=10

;stopasgroup=true

;killasgroup=true

 

 

 

 

五、检测文件配置crontab

 

1.设置定时任务

Crontab -e

* * * * * cd /home/docker &&  sh /home/docker/checkFile.sh

#每分钟执行一次

 

2.追加生成文件

3.查看日志文件

 

欢迎大家访问 百赚网 www.chinad.top ,提出您宝贵的建议和意见!

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

格赚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值