后端java部署教程,docker配置解读(linux用docker部署新手入门)

文件夹结构

然后解读几个启动脚本

首先dockerFile

python 复制代码
# 使用anapsix/alpine-java:8_server-jre_unlimited作为基础镜像
FROM anapsix/alpine-java:8_server-jre_unlimited

# 设置维护者信息
MAINTAINER admin@xiaohuaikeji.com

# 设置时区为Asia/Shanghai
RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

# 在/xh目录下创建一个目录
RUN mkdir -p /xh

# 将工作目录设置为/xh
WORKDIR /xh

# 暴露容器的8084端口
EXPOSE 8084

# 将当前目录下的watermodelServer.jar复制到容器内的app.jar
ADD ./watermodelServer.jar ./app.jar

# 容器启动时执行的命令,运行Java应用程序
ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "app.jar"]

# 默认命令参数,设置spring.profiles.active为prod
# CMD ["--spring.profiles.active=prod"]

然后是run.sh

python 复制代码
docker run -d \
--name watermodelService \ # 容器名称为watermodelService
-p 9084:9084 \ # 将容器的9084端口映射到宿主机的9084端口
-m 512M \ # 限制容器内存为512MB
--privileged=true \ # 启用特权模式,具有更高的操作权限
--restart=always \ # 容器退出时自动重启
-v /home/watermodel/service/logs:/xh/logs \ # 挂载宿主机上的日志目录到容器内的对应路径
-v /home/watermodel/service/temp:/xh/data \ # 挂载宿主机上的临时数据目录到容器内的对应路径
-e JAVA_OPTS="-Xmx128m -Xss512k" \ # 设置Java虚拟机选项
-e "spring.profiles.active=dev" \ # 设置Spring的活动配置文件为dev
xhsoft/watermodel-service # 使用xhsoft/watermodel-service镜像运行容器

然后是build.sh

python 复制代码
docker build -t xhsoft/watermodel-service . # 构建一个名为xhsoft/watermodel-service的镜像,使用当前目录下的Dockerfile

然后是clean.sh

python 复制代码
docker stop watermodelService; # 停止名为watermodelService的容器
docker rm watermodelService; # 移除名为watermodelService的容器
docker image rm xhsoft/watermodel-service; # 移除名为xhsoft/watermodel-service的镜像

最后是rebuild.sh

python 复制代码
./clean.sh;
./build.sh;
./run.sh;

使用的时候,直接执行rebuild.sh即可

如果遇到了权限问题,直接运行

chmod -R 755 ui/

给文件夹赋予权限

然后再直接执行rebuild.sh即可

相关推荐
什么鬼昵称6 分钟前
Pikachu- Over Permission-垂直越权
运维·服务器
码农小白18 分钟前
linux驱动:(22)中断节点和中断函数
linux·运维·服务器
4647的码农历程19 分钟前
Linux网络编程 -- 网络基础
linux·运维·网络
醉颜凉44 分钟前
银河麒麟桌面操作系统V10 SP1:取消安装应用的安全授权认证
运维·安全·操作系统·国产化·麒麟·kylin os·安全授权认证
漫无目的行走的月亮1 小时前
在Docker中运行微服务注册中心Eureka
docker
C++忠实粉丝2 小时前
Linux环境基础开发工具使用(2)
linux·运维·服务器
康熙38bdc2 小时前
Linux 环境变量
linux·运维·服务器
存储服务专家StorageExpert2 小时前
DELL SC compellent存储的四种访问方式
运维·服务器·存储维护·emc存储
大G哥3 小时前
记一次K8S 环境应用nginx stable-alpine 解析内部域名失败排查思路
运维·nginx·云原生·容器·kubernetes
醉颜凉3 小时前
银河麒麟桌面操作系统修改默认Shell为Bash
运维·服务器·开发语言·bash·kylin·国产化·银河麒麟操作系统