java项目发布到Linux环境简单流程步骤:
1:打开idea项目。在右侧找到maven ,有需要打包的项目,确定需要发布的项目 ,
打开 Lifecycle 选择package。 点击:package
如果打包报版本号不对的错,选择右上角的 如图小工具
打开,选择安装的额jdk版本。
第二步:打包完成后,找到打包的文件夹:
打开文件夹 找到对应的项目:
点击 show in Explorer
把该jar包拷贝到Liunx服务器上,其他的所有文件夹不需要管,
(通过xftp工具上传到Linux服务器)
第三步:上传之后找到文件夹:用xshell工具
启动服务的三种方式:
1:这个命令不建议使用,是控制台启用,关闭控制台后服务就不能使用 ,所以建议用第二条命令:
java -jar eureka-demo-0.0.1-SNAPSHOT.jar --控制台启动
2:用该命令启用比较好
nohup java -jar eureka-demo-0.0.1-SNAPSHOT.jar & --后台启动
3:用docker启动
一、将发布后的项目上传到linux服务器指定目录中,
可以用shell 命令上传。(上传之前创建单独的文件夹,进入该文件夹后再执行命令)
需要安装一个工具,可以用命令:yum install lrzsz
然后输入 rz 就会弹出一个本地框选择需要上传的文件 或者文件夹到 当前的linux系统目录下,当然也可以用 Xftp 手动上传
二、创建Dockerfile文件
vim Dockerfile
Dockerfile文件里面的内容:
FROM java:8
ADD demo-0.0.1-SNAPSHOT.jar /app/docker-test.jar
EXPOSE 8888
ENTRYPOINT ["java","-jar","/app/docker-test.jar"]
命令解释: FROM java:8 : 指定从镜像仓库中拉取 java 镜像, :8 表示版本
ADD demo-0.0.1-SNAPSHOT.jar /app/docker-test.jar 指定将当前目录的demo-0.0.1-SNAPSHOT.jar(我们自己上传上来的jar) 添加到等会要创建的容器的 /app目录下 并且取名为docker-test.jar
EXPOSE 8888 : 将容器的指定端口暴露出去 (因为作者的spring项目的service 端口是指定的8888 所以此处将8888端口暴露出去)
ENTRYPOINT [“java”,"-jar","/app/docker-test.jar"] 指定创建镜像的时候要执行的命令:这里的意思是 启动的时候会执行 java -jar /app/docker -test.jar命令(以jar包的形式 启动 /app/docker-test.jar 因为我们在文件中指定了将我们的jar包复制到容器的 /app目录下并且取名 docker-test.jar 所以这里运行的正是前面我们ADD 命令中的jar包)
三、创建镜像
意思是创建一个docker镜像名字为java -app Dockerfile 所在路径为当前路径
-t 指定名称 为java-app
执行命令:docker build -t java-app .
在Dockerfile的目录下,执行 docker build -t dotnetapi . (注意包含 . ) ,构建出一个包含web程序所有内容的 java-app 的容器。
3.2查看镜像是否创建成功
docker images
三、启动容器
# docker run -d -p 8081:8888 --name java-web java-app
-d表示后台运行
-p 指定端口 映射关系 (将容器的8888端口映射到8081)
–name 指定创建容器的名称(java-web)
java app 指定创建容器的镜像为java-app(即我们刚刚创建的)
四:测试访问