项目地址:阿里云ip/blogs 密码是111111
实际地址是 阿里云ip:nginx端口80/blogs,blogs换成login就是登录
还有一些前置条件,maven仓库配置阿里云镜像之类的,不然后端导入的时候下依赖要慢死了,然后还要注意版本问题,可能阿里云仓库没有。经常报错的parent标签下,看看是不是version下多了一个标签,那个标签好像是指定拉取镜像位置的,容易出错,删了好像就行了
1 买阿里云,开放安全组
2 安装nodejs
3 安装webpack
Linux下部署——重点:安全组打开!!!!!!!!!!!!!!!!!!!!
1)安装docker
2)安装docker-compose并授予写权限
curl -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
chmod +x /usr/local/bin/docker-compose
3)写Dockerfile文件,暴露的端口记得改成8081(和后端接口一致就行)
4)写docker-compose.yml文件(卷挂载的文件,冒号前面的是对应的阿里云文件位置,要在阿里云主机创建对应目录,mkdir创建文件夹,touch创建conf文件)
注意下面圈圈的地方,表示有特权的,这个必须要,解决nginx的文件调用的权限问题
Mysql的environment下的密码改成自己数据库的密码(mysql我也不知道为什么用5.7版本的,下次试试用8.0版本的吧,而且mysql没有做卷挂载,docker-compose停止了,数据就没了)
Redis也没设置密码,不知道有没有安全问题
前端部分
1)把ip改成自己的阿里云ip,然后就可以用npm run build了
2)然后将生成的dist文件压缩后用xftp上传到阿里云服务器自己刚才创建的html文件夹下,用unzip命令解压缩(如果提示阿里云服务器没有这个命令,需要yum install -y unzip安装一下)
解压之后把dist文件夹里的文件移到html文件夹下,再把空的dist文件夹和dist压缩包删除掉,最后html目录下是这样的
3)再把window上的nginx.conf文件拷贝一份(或者网上找一份初始未修改的也行),只要把location里的root后面的路径改成docker-compose构建的nginx容器里的路径就行了(也就是docker-compose.yml文件nginx挂载的容器内路径)
把修改好的内容复制一份,在阿里云服务器上用vim打开我们新建的nginx.conf文件
按i进入编辑模式,把内容粘贴进去,按esc退出编辑模式,再按shift进入命令模式,输入wq保存退出即可
后端部分
1)在linux 的配置文件里把数据库密码改成自己的,也就是上面docker-compose里mysql设置的密码
2)用maven打包项目
3)把vueblogxxx.jar文件,docker-compose.yml和Dockerfile3个文件用xftp上传到阿里云root目录下
4)用docker-compose up -d后台启动即可,不加-d就是前台启动,前台启动的话前台的命令窗口就用不了了,前台启动关闭docker-compose只要ctrl+c就行了
后台启动的话,关闭docker-compose需要用命令docker-compose down
5)最后一步,用navicat连接阿里云服务器,导入老师的sql文件,再刷新一下,页面就出来了(注意:老师mysql没有做卷挂载,所以关闭docker-compose数据就消失了,下次启动还要重新建数据库导入文件,所以我们最好做下卷挂载,这个以后再说吧,很简单的,自己百度搜一下也可以)