基于“基于dockerhub的jetty镜像的ossfs镜像”部署war包,遇到的文件夹读写权限被限制的问题解决方案
前提:
“基于dockerhub的jetty镜像的ossfs镜像” 已经搭建好了。
部署准备:
1、本地打包:war包--》idea工具 mvn 打包。

2、本地sh脚本:compile_vps_deplay.sh
#!/bin/bash date=`date +"%Y%m%d%H%M"` scp bbkjweb.war zjm@10.248.248.12:~/webrz/basic/renzheng/
ssh zjm@10.248.248.12 -t "
cd ~/webrz/basic/renzheng/
jar -xvf bbkjweb.war
./build.sh
sudo docker images
sudo docker ps
sudo docker rm -f web_rz
./runwebrz.sh
" cd -
这里是直接先解压了,因为,ossfs要绑定同步的目录。而我的同步的文件夹在war包里面。
3、vps上sh文件:~/webrz/basic/renzheng/build.sh
#!/bin/bash sudo docker build --rm -f Dockerfile -t webrz_rz .
4、vps上sh文件:~/webrz/basic/renzheng/./runwebrz.sh
#!/bin/bash docker run --privileged --name web_rz -d -p 8006:8080 -p 433:8433 webrz_rz
5、vps上Dockerfile 文件:Dockerfile
FROM jetty_apt_ossfs:v3
RUN mkdir -p /var/lib/jetty/webapps/root
COPY bbkjweb /var/lib/jetty/webapps/root
COPY ossfs_conf.sh /var/lib/jetty/webapps
RUN mkdir -p /data/tmp
RUN mkdir -p /data/logs
这里要加上权限参数:--privileged。
ossfs_conf.sh文件:

最后文件目录如下:

部署开始:
本地shell 里面执行:./compile_vps_deplay.sh即可。
最后部署成功:

开启ossfs遇到的问题:
1、先看看阿里配置文档:

我这里把他写成了一个脚本(就是上面的ossfs_conf.sh),容器启动之后进入容器执行即可。
在文档中可以看到,对于要同步的文件进行了所有者的修改;不然会有文件夹写权限不够的问题。导致无法使用ossfs。
2、进入容器中:
#docker exec -it web_rz bash
#ls -al /var/lib/jetty/webapps/root/statics/uploadstart

执行 ossfs_conf.sh:

然后以jetty用户挂载要同步的目录:
su jetty
ossfs -o nonempty my-buket /var/lib/jetty/webapps/root/statics/uploadstart -ourl=http://oss-cn-hangzhou.aliyuncs.com
ossfs -o nonempty my-buket /var/lib/jetty/webapps/root/ueditor/jsp/upload -ourl=http://oss-cn-hangzhou.aliyuncs.com
我这里挂载了两个要同步的目录。
至此,ossfs就可以同步上传文件了。
基于“基于dockerhub的jetty镜像的ossfs镜像”部署war包,遇到的文件夹读写权限被限制的问题解决方案的更多相关文章
- jenkins自动部署war包到jetty
1.把jenkins.war包复制到jetty的webapps下面 2.在jetty的webapps下面新建jenkins.xml文件 内容如下: <?xml version="1.0 ...
- 基于jetty镜像的ossfs镜像docker镜像构建
阿里云ossfs:https://help.aliyun.com/document_detail/32196.html?spm=5176.product31815.6.514.yVI0xM 以上是阿里 ...
- 七.部署war包到Tomcat(基于Centos安装)
1.把war包上传至tomcat的webapps目录下面 2.启动Tomcat,在Tomcat的bin目录下面,运行startup.sh 3.访问项目,如下成功打开项目
- 以tomcat镜像为基础部署war包后再做成镜像
#以交互的方式启动本地的镜像tomcat:hps,并且将本地目录/mnt/iso挂在到容器中的/tmp/repositories目录,方便从本地获取一些安装文件并进行一些操作 docker run - ...
- 如何使用Dockerfile构建Tomcat镜像并部署war
我们都知道Docker构建一个镜像有两种方式: 使用`docker commit`命令 使用`Dockerfile`文件和`docker build`命令 那么这两种方式有何区别呢? 相同点:底层实现 ...
- [How to]基于本地镜像的yum镜像源搭建
1.简介 本文介绍如何在封闭环境(无外网)下安装离线安装本地镜像与基于本地镜像的yum镜像源. 2.环境版本交代: OS:CentOS-6.7-x86_64-minimal yum: yum-3.2. ...
- docker 源码分析 四(基于1.8.2版本),Docker镜像的获取和存储
前段时间一直忙些其他事情,docker源码分析的事情耽搁了,今天接着写,上一章了解了docker client 和 docker daemon(会启动一个http server)是C/S的结构,cli ...
- centos7无网络环境下创建基于scratch镜像的Linux镜像,并带有Java运行环境
一.准备 将下载好的jdk以及scratch镜像放在同一文件夹下:这里放在linux:2.0 二.导入scratch镜像 #docker load -i scratch.tar 三.创建dockerf ...
- 【小白向】基于Docker使用Gogs,Drone以及drone-runner-docker的自动化部署
Gogs是基于Go语言编写的可以替代gitlab的代码托管平台,它没有gitlab那么庞大且不需要占用大量资源,对小型服务器相对于比较友好,我们甚至可以使用树莓派搭建. 服务器配置: * 操作系统:C ...
随机推荐
- 当公有云Azure拥抱Docker容器技术
本文转载至 http://3387405.blog.51cto.com/3377405/1598977 预见未来看似是一件不太可能的事情,然而现在企业科技高速发展的态势完全超乎想象. 就在几周前Inf ...
- PhotoSwipe异步动态加载图片
在开发搜房家居M站的时候,搜房家居装修效果图相册展示效果需要用到PhotoSwipe插件来显示图片.特点:1. 家居提供的接口,每次只能获取一张图片2. 装修效果图的张数不限.3. 从PhotoSwi ...
- 【BZOJ2384】[Ceoi2011]Match KMP
[BZOJ2384][Ceoi2011]Match Description 作为新一轮广告大战的一部分,格丁尼亚的一家大公司准备在城市的某处设置公司的标志(logo).公司经理决定用一些整栋的建筑来构 ...
- Error: member names cannot be the same as their enclosing type
在编译的时候会遇到如下问题:member names cannot be the same as their enclosing type 原因:方法名和类名不能一样,如果一样就是一个构造函数.而构造 ...
- LINUX的LAMP环境搭配
在ubuntu linux下以编译方式安装LAMP(apache mysql php)环境 最近转向到了使用ubuntu做 桌面,安装好系统以来一直都没配置lamp开发环境.由于很久以来没有自己编译安 ...
- velocity 的 escape实现
EscapeHtmlReference的escape方法调用以下方法实现: StringEscapeUtils.escapeHtml(param); 再调用 org.apache.commons.la ...
- MySQL权限系统(三).权限表 Grant Tables
7.2.2 Grant Tables 授权表 The mysql system database includes several grant tables that contain informat ...
- Android系统移植与调试之------->如何使用PhotoShop转换24位的bmp图片为16位bmp图片
使用Android移植时候,很多图片都需要16为的bmp格式,所以研究了一下如何从24位转换成16位,供大家参阅 step1:查看bmp图片的属性,如下图所示,是24位的 step2:用PhotoSh ...
- 0402-服务注册与发现-Eureka Server使用、将服务注册到Eureka server上
一.Eureka Server使用 官方文档地址:http://cloud.spring.io/spring-cloud-static/Edgware.SR3/single/spring-cloud. ...
- sql server2005版本中,len函数计算了字符串末尾的空格
sql server2005版本中,len函数计算了字符串末尾的空格的长度,以下是测试脚本: print @@version declare @v varchar(max) set @v = 'hp, ...