1.打包前记得修改远程数据库,改成所在数据库所在服务器IP。
2.maven 打包项目成jar包。(记得点击闪电按钮,跳过maven test)
3.target目录下出现jar,表示打包成功
4.准备将第一个jar包上传服务器。
同时本地sql文件也需要上传到对应服务器的数据库(推荐Navicat可视化工具打包sql)
至此,spring boot项目本地打包完成
(注意,打包前一定检查仔细,项目配置一旦出现错误,上传后很难修改,只能重新上传非常麻烦)
1.下载docker
第一种直接下载
curl -fsSL https://get.docker.com | bash -s docker --mirror aliyun
(如果服务器端安装宝塔等管理系统可以直接可视化安装)
2.安装和设置仓库
参考使用阿里云
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum install docker-ce docker-ce-cli containerd.io
配置一下阿里云镜像加速
mkdir -p /etc/docker
#配置文件格式
vim /etc/docker/daemon.json
{
"registry-mirrors": ["https://{自已的编码}.mirror.aliyuncs.com"]
}
重启daemon配置和docker
systemctl daemon-reload
systemctl restart docker
3.启动docker
sudo systemctl start docker
1.端口打开
如果使用的是腾讯云、阿里云之类的服务器,记得端口需要打开。
(个人练习的项目,无所谓安全的可以放开全部端口,比较方便省事)
2.安装MySQL。
这里分为两种,一种MySQL安装在服务器,这种比较传统,不做介绍
另外一种是docker安装MySQL,比较推荐。docker容器本身就是用来管理配置环境的,以后的配置都推荐安装在docker容器上
1.从docker hub上查找mysql镜像
docker search mysql
2、从docker hub上拉取mysql,我拉取的mysql版本是mysql5.7
docker pull mysql:5.7
3、运行mysql,开放的端口是3306,密码是123456, -d是后台运行
docker run -p 3306:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
1.将前面的jar包上传到服务器。推荐放在/home/docker
2.在该目录下新建Dockerfile文件
3.vim Dockerfile
4.写入
#注意,docker命令全部大写,这是规定。
# From 关键字表示,jar包依赖的环境。java:8 相当于jdk1.8
FROM java:8
#ADD命令
# blog-0.0.1-SNAPSHOT.jar:这是你上传jar包的名称。
# /blog.jar:这是自定义的名称。但是注意要有之前的/
ADD blog-0.0.1-SNAPSHOT.jar /blog.jar
#MAINTAINER 作者名称。可以删除不写。
MAINTAINER zhulei
#EXPOSE 项目暴露的端口号
EXPOSE 8080
#/blog.jar此处的名称要和ADD命令后面的一样。
ENTRYPOINT ["java","-jar","/blog.jar"]
5.在docker文件夹下执行如下命令
docker build -t blog:1.0 .
说明:
blog 代表要打包成的镜像名称。按照自己实际情况写。
:1.0 代表版本号,可以不写则默认为latest
. 代表为当前目录。这就是为什么一直在步骤一文件夹中进行操作,并且Dockerfile在此文件夹中的原因。
若之前Dockerfile不在步骤一的文件夹中 则需要指定到对应的地址。
6、接下来用docker images 就可以查看到这个镜像已经被创建好了,接下来运行这个镜像就可以了
docker run --name blog -d -p 80:8080 blog:1.0
注意:80端口指服务器访问端口可以自己定义,但需要提前在服务器安全组里面打开端口,否则无法访问;8080是你自己jar项目的端口,必须和springboot里的一样。
7.就可以进行服务器ip地址进行访问了,如果绑定了域名,就可以用域名进行访问
直接浏览器打开
http://1.IP地址:服务器端口(80)/
举例:http://1.117.218.148:9999/