基于“基于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 ...
随机推荐
- Python动态网站的抓取
网页下载器 # coding:utf-8import requestsimport urllib2import systype = sys.getfilesystemencoding()class H ...
- 时间格式转换 json 转 datetime js c#
情景描述:使用C#在后台中传递时间到ajax中,因为是一个list<model>就直接用了Json 作为载体,但是在js中获得到的时间是var time='/Date(********** ...
- n++ ++n
n = 100 + m++ n = 100 +m; ++m n = 100 + ++m; ++m; n = 100 +m ;
- Git中如何将代码恢复到之前某个节点
本文主要讲如何使用小乌龟软件将代码恢复到之前某个节点. 一 说明 在实际项目开发中,都是很多人一起联合开发,往往会遇到这种情况:马上要发版本了,突然发现一个致命BUG,而这个BUG是由于某个小伙伴修改 ...
- window 注册表上下文菜单如何配置?
注册表结构? Keys Abbreviation Description 描述 HKEY_CLASSES_ROOT HKCR Stores file association and COM objec ...
- PAT 1002. A+B for Polynomials (25)
This time, you are supposed to find A+B where A and B are two polynomials. Input Each input file con ...
- struts2+Oracle实现管理员查看用户提交的意见功能
说一下需求:这个功能类似于邮件功能,当用户在站点中提交一些建议及意见后.后台将其存入到Oracle数据库中.然后管理员登录站点,会看到还没有读过以及读过的意见及建议,并能够将未读过的意见及建议标记为已 ...
- ThreadPoolExecutor 线程池任务队列分析 与 利特尔法则(Little's law)
一. 演示 public class ThreadPoolTest { static class MyThread implements Runnable { private String name; ...
- python的分布式爬虫框架
scrapy + celery: Scrapy原生不支持js渲染,需要单独下载[scrapy-splash](GitHub - scrapy-plugins/scrapy-splash: Scrapy ...
- ABAP f4帮助输入多个值
*---------------------------------------------------------------------- * INITIALIZATION *---------- ...