前提条件
-
Linux服务器
-
服务器已经安装docker
-
docker已经安装jdk镜像
-
docker已经安装mysql镜像
-
将要部署的项目的jar包打包好,项目是多模块springboot项目
部署过程
-
项目是3个模块的Spring boot项目,打出来3个jar,将这些jar包拷贝到云服务器文件夹内,我拷贝到了/usr/src/java/manyjars目录下
-
配置docker-compose.yml文件,该文件要与jar包放在同一个目录下面
docker-compose.yml配置文件内容
version: "3.4"
services:m_one:image: eclipse/centos_jdk8container_name: m_onevolumes:- /usr/src/java/manyjars/module_one-0.0.1-SNAPSHOT.jar:/usr/local/java/manyjars/module_one-0.0.1-SNAPSHOT.jarports:- "8021:8021"command: java -jar /usr/local/java/manyjars/module_one-0.0.1-SNAPSHOT.jarm_two:image: eclipse/centos_jdk8container_name: m_twovolumes:- /usr/src/java/manyjars/module_two-0.0.1-SNAPSHOT.jar:/usr/local/java/manyjars/module_two-0.0.1-SNAPSHOT.jarports:- "8022:8022"command: java -jar /usr/local/java/manyjars/module_two-0.0.1-SNAPSHOT.jarpost_entrance:image: eclipse/centos_jdk8container_name: post_entrancevolumes:- /usr/src/java/manyjars/postgraduate_entrance-0.0.1-SNAPSHOT.jar:/usr/local/java/manyjars/postgraduate_entrance-0.0.1-SNAPSHOT.jarports:- "8023:8023"command: java -jar /usr/local/java/manyjars/postgraduate_entrance-0.0.1-SNAPSHOT.jar
-
启动所有jar,使用指令
docker-compose up -d
,需要到docker-compose.yml文件目录下执行这条指令
-
查看启动的容器
docker ps -a
-
使用指令
docker-compose down
,也需要到docker-compose.yml文件目录下执行这条指令,停止并删除这些容器,再次查看docker里面的容器时,
-
如果想要更换其中一个包,比如说我想更换module_two-0.0.1-SNAPSHOT.jar包,首先将服务器的原来jar重新命名,或者将新包直接替换旧包,我这里是重新命名。其次将新包复制进来。最后,module_two-0.0.1-SNAPSHOT.jar对应的容器是m_two,使用指令
docker stop m_two
,再用docker start m_two
,就可以了