linux下的docker创建并运行后端服务
- 数据准备
准备好后端的jar包和Dockerfile文件
dockerfile文件内容:请结合实际进行修改;
FROM zhouziqiang/openjdk8-alpine-gmt8:latest
COPY projhigh-1.0.0-SNAPSHOT.jar projhigh-1.0.0-SNAPSHOT.jar
EXPOSE 50073
ENTRYPOINT [\
"java",\
"-Xms512m",\
"-Xmx1024m",\
"-Djava.security.egd=file:/dev/./urandom",\
"-Dfile.encoding=UTF-8",\
"-jar",\
"projhigh-1.0.0-SNAPSHOT.jar",\
"--spring.profiles.active=${PROFILE}",\
"--server.port=${SERVER_PORT}",\
"--spring.cloud.nacos.config.server-addr=${NACOS_HOST}",\
"--spring.cloud.nacos.config.namespace=${NACOS_NAMESPACE}",\
"--spring.cloud.nacos.discovery.server-addr=${NACOS_HOST}",\
"--spring.cloud.nacos.discovery.namespace=${NACOS_NAMESPACE}",\
"--spring.cloud.nacos.discovery.ip=${NACOS_SERVICE_IP}"\
]
- 创建镜像
docker build -t projhigh2:latest .
注:projhigh2是构建的镜像名称
打成tar:
docker save -o datagovern.tar datagovern:latest
2. 创建并运行容器
docker run -d -p 50073:50073 -e PROFILE=prod -e SERVER_PORT=50073 -e NACOS_HOST=192.168.0.222:8848 -e NACOS_NAMESPACE=1d4d9844-6f77-4bc4-98a8-beda3979625b -e NACOS_SERVICE_IP=192.168.0.222 -v /opt:/opt -v /home/log:/home/log -v /canal/conf:/canal/conf --name projhigh2 projhigh2:latest
注:eb808a38bb623df28a6cbbb2789a85c8bd6c36d525edd7c2b4b26eed1ffb4cf5 是返回的容器文件地址;
至此,后端已经部署完毕;
- 查看后端日志
docker logs -fn 1000 projhigh2
- 相关命令
启动/停止/重启容器
docker start mysql57
docker stop mysql57
docker restart mysql57
删除容器:docker rm projhigh2
删除镜像:docker rmi projhigh2
-
查看当前运行的镜像:
docker images
-
查看运行的容器
docker ps