docker-compose
springboot
docker-compose.yml
version: "3"
demo-app:
container_name: demo-app
restart: always
image: java:8
volumes:
- ./demo-app.jar:/service.jar
- ./logs:/logback指定目录
- ./config:/config 指定配置文件springboot会默认加载
- ./start.sh:/start.sh
ports:
- 9260:9260
entrypoint: sh /start.sh
脚本
nohup java -Dfile.encoding=UTF-8 -Dsun.jun.encoding=UTF-8 -jar service.jar --server.port=9260 >> /logs/service.log 2>&1 &
tail -f /logs/service.log
上面的这个脚本不太合理,不应该再输出一个总的日志文件,后面会越来越大,只需要将项目里面配置的logback目录映射出来即可,使用下面这个脚本输出日志到空设备
nohup java -Dfile.encoding=UTF-8 -Dsun.jun.encoding=UTF-8 -jar service.jar --server.port=9260 > /dev/null 2>&1 &
tail -f /dev/null
利用tail -f /dev/null
让容器一直处于runing状态
redis
docker-compose.yml
mysql
docker-compose.yml
nginx
nginx不能直接使用docker-compose启动,https://blog.csdn.net/shallow72/article/details/124452169
docker-compose.yml
version: "3"
services:
nginx:
image: nginx:1.21.6
restart: always
container_name: nginx
environment:
- TZ=Asia/Shanghai
ports:
- "80:80"
volumes:
- ./conf.d:/etc/nginx/conf.d
- ./logs:/var/log/nginx
- ./nginx.conf:/etc/nginx/nginx.conf
- ./html:/usr/share/nginx/html