服务器里面运行一个项目用docker容器

先建一个文件

docker-compose.yml

# 使用说明 V3.3.0
# 1. 使用docker-compose 宿主机不需要配置host来发现
# 2. 无需修改源码,根目录 docker-compose up 即可
# 3. 静静等待服务启动

version: '2'
services:

# redis
gds-redis:
image: redis:5.0.7
container_name: gds-redis
ports:
- xxxx:xxxx
command: redis-server --requirepass xxx
restart: always

 

# 当前项目名称
当前项目名称:
image: 当前项目都一样的名字最好
container_name: 当前项目都一样的名字最好
build:
context: ./
dockerfile: ./file/Dockerfile-xxx docker文件存放地址
restart: always
ports:
- xxx:xxx你的程序端口
environment:
- EXPOSE-PORT=xxx 暴露公开某些端口
- MYSQL-HOST=xxx mysql的ip
- MYSQL-DB=xxx mysql数据库名
- REDIS-HOST=xxx redis的ip
- REDIS-DATABASE=0

 

 

 

然后再建一个

Dockerfile-xxx file文件

FROM java:8-jre

MAINTAINER 675556650@qq.com

ENV TZ=Asia/Shanghai

RUN ln -sf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone

RUN mkdir -p /xxx 项目名称

WORKDIR /xxx 项目名称

ADD ./jar/xxx.jar ./ 项目名称

CMD java -Djava.security.egd=file:/dev/./urandom -jar -Duser.timezone=GMT+08 xxx.jar 项目名称

 

 

如果不想写docker命令启动项目,新建一个auto.sh的脚本

#!bin/sh
docker-compose stop $1
yes|docker-compose rm $1
docker-compose build $1
docker rmi --force `docker images | grep none| awk '{print $3}'`
docker-compose up -d $1
docker-compose logs -f $1
echo

posted @ 2022-09-22 11:44  全琪俊  阅读(150)  评论(0编辑  收藏  举报