linux下部署springboot vue项目
使用的工具是 XFTP5 XSHELL5
docker pull gmaslowski/jdk 拉取jdk
docker images 查询下载的镜像ID (如:390b58b1be42)
docker run -dit --network=hezhi --name=hzyy-web-server -v /data3/hzyy-web/server:/server -v /etc/timezone:/etc/timezone -v /etc/localtime:/etc/localtime -v /data3/hzyy/hzyy-web/files:/files 390b58b1be42
// /server /files 为映射后的文件名称
docker pull redis
docker run -dit --network=hezhi --name=redis-pwd -v /etc/timezone:/etc/timezone -v /etc/localtime:/etc/localtime redis --requirepass "123456"
docker pull nginx
//拉取一个nginx作为web容器
docker run -dit --network=hezhi --name=hzyy-web-web -v /etc/timezone:/etc/timezone -v /etc/localtime:/etc/localtime -p 8001:80 -v /data3/hzyy-web/web/:/web nginx
//其中8001 为对外的端口号
//通过default.conf 配置文件配置web要访问的地址
default.conf
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/host.access.log main;
location / {
root /web;
index index.html index.htm;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
location /api/ {
proxy_pass http://hzyy-web-server/;
#下边是为获取真实IP所做的设置
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header HTTP_X_FORWARDED_FOR $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_redirect default;
}
}
docker run -dit --network=hezhi --name=hhzyy-web-manager -v /etc/timezone:/etc/timezone -v /etc/localtime:/etc/localtime -p 8002:80 -v /data1/hzyy/hzyy-web-manager/:/web nginx
cp default.conf /etc/nginx/conf.d/ 替换nginx配置文件(先把文件放进/manager)
好菜 -_-||
记录一下思路,免得以后再忘
部署官网:
1.docker pull nginx 拉取nginx容器
2.使用 docker images 查看是否拉取成功
如若出现 nginx 表示拉取成功
3.然后使用 docker run -dit --network=hezhi --name=hzyy-web -v /etc/timezone:/etc/timezone -v /etc/localtime:/etc/localtime -p 8001:80 -v /data5/hzyy/hzyy-web/:/web nginx
其中 后面的nginx就是拉取后的 nginx的名字 或者用 IMAGE ID 也行
4.成功后会返回一长串什么东西 我也不知道 - -
5.然后使用docker ps 查看
若这样 表示已经成功了
你已经成功了一大半了!!!!!!!!!加油!!!!
6. 然后 使用XFTP 把打包后的文件上传到服务器内
7. 使用命令进入文件内
8. 命令 vi default.conf 创建一个名为default.conf 的文件
(为什么新建呢 之前我是在别的项目中拷贝的default.conf文件,然后下载到桌面上,在通过XFTP上传到hzyy-web下,然后再将default.conf文件拷贝到 容器内的/etc/nginx/conf.d/ 下 然后重启容器 容器会处于退出状态,怎么启都起不起来,然后就发现了这种方法可以,就只能通过这种笨方法操作)
9.将 以下这些暗号复制进去 以下红色为要注意的地方,别的可以不用改
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/host.access.log main;
location / {
root /web;
index index.html index.htm;
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
location /api/ {
proxy_pass http://hzyy-web-server/;
#下边是为获取真实IP所做的设置
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header HTTP_X_FORWARDED_FOR $remote_addr;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_redirect default;
}
}
10.编辑后
11.然后进入容器内部 docker exec -it hzyy-web sh
进入后是这个鸭子
12.然后使用 cd web 进入 web目录 然后ls
然后进入是这样压子
13.然后通过 mv default.conf /etc/nginx/conf.d/ 将default.conf文件移动到 conf.d目录下
14然后exit 退出docker docker restart hzyy-web 重启这个容器 就ok了
部署 JAVA
1.使用XFTP将项目copy到目录内
目录结构这样
注意bin config 如果项目启不了 可能是 bin和config的原因, 建议从别的项目中copy过来 (注意 尽量不要经过windows) linux->linux
2.注意config内的application.yml文件
3. 进入bin ./startup.sh 启动 如果出现 *****failed 可能是权限不足 使用 chmod u+x *.sh 可解决
记录一下部署时遇到的问题!!!!!!
1. 在部署web项目时 default.con文件 如果将windows下的default.conf文件用XFTP上传到服务器中 可能会导致容器一直处于退出状态
解决方法就是 docker rm [CONTAINER ID] 然后重新 创建
2. 解决default.conf 会导致容器处于退出状态 (目前我使用的方法) 在 目录内创建一个default.conf文件,然后将windows下的代码复制到 服务器内的default.conf文件内 然后再进入docker容器内,将default.conf文件移动到 /etc/nginx/conf.d/ 下, 然后重启容器 就ok了
为什么不在docker内编辑呢! 因为docker内好像不支持编辑 所以只能在docker外编辑,然后将编辑后的default.conf文件复制或移动到 docker内的 /etc/nginx/conf.d/
记录一下使用到的命令
docker ps
docker images
docker images ps -a
history | grep "docker run *" 查看 历史命令 docker run
docker exec -it hzyy-web sh
docker rm 085e8e68a09e
docker stop 085e8e68a09e
docker start 085e8e68a09e
docker restart 085e8e68a09e
vi default.conf
mv default.conf /etc/nginx/conf.d/
docker run -dit --network=hezhi --name=hzyy-web -v /etc/timezone:/etc/timezone -v /etc/localtime:/etc/localtime -p 8001:80 -v /data5/hzyy/hzyy-web/:/web nginx
docker run -dit --network=hezhi --name=hzyy-web-manager -v /etc/timezone:/etc/timezone -v /etc/localtime:/etc/localtime -p 8002:80 -v /data5/hzyy/hzyy-web-manager/:/web nginx
docker run -dit --network=hezhi --name=hzyy-web-server -v /data3/hzyy-web/server:/server -v /etc/timezone:/etc/timezone -v /etc/localtime:/etc/localtime -v /data3/hzyy/hzyy-web/files:/files 390b58b1be42
linux下部署springboot vue项目的更多相关文章
- Linux下部署springboot项目的步骤及过程
最近在研究将springboot项目部署到Linux服务器上,由于springboot是内嵌了tomcat,所以可以直接将项目打包上传至服务器上.我是在idea上的项目,所以我就基于此说下过程. (一 ...
- linux下部署一个JavaEE项目的简单步骤
部署项目的前提是准备好环境,包括:Java运行环境(JDK),Tomcat,Mysql数据库 1.首先将东西上传到服务器,我是在windows安装ssh工具(下载安装git即可http://gitfo ...
- linux下部署项目问题
1. 今天linux下部署thinkphp项目,数据库用的mysql. 页面其他都是正常的,但是从数据库中取出的数据都是乱码.最后查了资料 解决方案: 在ThinkPHP里面 Library\Thin ...
- linux下部署php项目-Apache、php、mysql关联
linux下部署php项目环境可以分为两种,一种使用Apache,php,mysql的压缩包安装,一种用yum命令进行安装. 使用三种软件的压缩包进行安装,需要手动配置三者之间的关系.apache和p ...
- Linux 下部署Django项目
Linux 下部署Django项目 说明:本文所使用的环境为CentOS 6+Python2.7+Django1.11 安装Django.Nginx和uWSGI 1.确定已经安装了2.7版本的Py ...
- Linux CentOS下部署Java Web项目
本文讲解如何在Linux CentOS下部署Java Web项目的步骤. 一.环境准备: (1)Linux CentOS (2)apache-tomcat-9.0.10 (3)XShell 二.启动t ...
- Linux下部署开源版“禅道”项目管理系统《转载》
Linux下部署开源版“禅道”项目管理系统 https://www.cnblogs.com/xxsl/p/6525378.html
- 使用Docker部署Spring-Boot+Vue博客系统
在今年年初的时候,完成了自己的个Fame博客系统的实现,当时也做了一篇博文Spring-boot+Vue = Fame 写blog的一次小结作为记录和介绍.从完成实现到现在,也断断续续的根据实际的使用 ...
- 【简书】在阿里云自带的CentOS + LAMP环境下部署一个Laravel项目
在阿里云自带的CentOS + LAMP环境下部署一个Laravel项目 作者 DonnieZero 关注 2017.07.29 22:02* 字数 2218 阅读 5556评论 3喜欢 1赞赏 1 ...
随机推荐
- [Bzoj1003][ZJOI2006]物流运输(spfa+dp)
题目链接:https://www.lydsy.com/JudgeOnline/problem.php?id=1003 比较简单的dp,dp[i]为1-i天最小费用,dp方程为dp[i] = min(d ...
- Linux忘记密码怎么办
重启 Linux 系统主机并出现引导界面时,按下键盘上的 e 键进入内核编辑界面 在 linux16 参数这行的最后面追加"rd.break"参数,然后按下 Ctrl + X 组合 ...
- JavaScript 各种遍历方式详解及总结
JavaScript 各种遍历方式详解 在$.each中想要终止循环,但是它没有continue或者break这样的终止方式,所以尝试使用return来进行终止,但是发现并没有跳出循环.为了搞清楚js ...
- 如何优雅的实现DML批量操作
如何优雅的实现DML批量操作(转载) 昨天处理了一个业务同学的数据需求,简单来说就是对一张大表做一下数据清理,数据量在8千万左右,需要保留近一个月的数据,大概是400万左右. 对于数据的删除处理,尤其 ...
- 源码分析--ConcurrentHashMap与HashTable(JDK1.8)
ConcurrentHashMap和Hashtable都是线程安全的K-V型容器.本篇从源码入手,简要说明它们两者的实现原理和区别. 与HashMap类似,ConcurrentHashMap底层也是以 ...
- vsftpd.service: Main process exited, code=exited, status=2/INVALIDARGUMENT和vsftpd:500 OOPS: vsftpd: refusing to run with writable root inside chroot ()错误的解决方法
今天在配置VSFTPD过程中遇到两个错误 1是启动失败,通过 SERVICE VSFTPD STATUS 查看到报错 May 02 16:06:58 debian systemd[1]: Starti ...
- 使用Unsafe来实现自定义锁
1.使用Unsafe类 import sun.misc.Unsafe; class UnsafePackage { private static Unsafe unsafe; static { try ...
- 十、.NET使用本地Outlook邮箱指定邮箱用户名和密码发送邮件
十..NET使用本地Outlook邮箱指定邮箱用户名和密码发送邮件 1.添加Microsoft.Office.Interop.Outlook引用 2.封装发送邮件方法 using System; us ...
- rabbitmq3.7集群搭建实战
环境: 3台 centos7.4rabbitmq3.7erlang 22 1. 有几种方式安装,这里使用的yum安装(官方推荐)2. 使用rabbitmq时需要安装erlang,在各个节点上使用vim ...
- lvm相关知识
参考资料: 1.https://www.cnblogs.com/mchina/p/linux-centos-logical-volume-manager-lvm.html#top