小编Omn*_*ous的帖子

如何在 docker 容器内的命名空间内挂载私有 /proc?

我需要在 Docker 容器内创建命名空间。作为其中的一部分,我需要将/proc私有挂载到内部命名空间。我意识到我必须以特定权限运行容器才能实现这一点,但我更愿意启用最小集。

这有效:

$ sudo docker run --privileged --security-opt=seccomp=unconfined \
 -it fedora:rawhide /usr/bin/unshare -Ufmp -r \
 /bin/sh -c 'mount -t proc proc /proc'
Run Code Online (Sandbox Code Playgroud)

这不会:

$ sudo docker run --cap-add=sys_admin --security-opt=seccomp=unconfined \
  -it fedora:rawhide /usr/bin/unshare -Ufmp -r \
   /bin/sh -c 'mount -t proc proc /proc'
mount: /proc: cannot mount proc read-only.
Run Code Online (Sandbox Code Playgroud)

因此,仅关闭 seccomp 过滤器并添加CAP_SYS_ADMIN是不够的。什么足够了吗?

更新: Selinux 是问题的一部分。如果您全局关闭 selinux 强制,它会起作用。但是,您也可以使用 关闭对特定容器的强制执行--security-opt label:disable,这在在线 Docker 手册安全配置部分有记录

sudo docker run --cap-add=sys_admin --security-opt …
Run Code Online (Sandbox Code Playgroud)

security namespaces docker

8
推荐指数
1
解决办法
6955
查看次数

tomcat 的 org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory 在哪里?

在此页面上:http : //tomcat.apache.org/tomcat-7.0-doc/jndi-resources-howto.html描述了如何为 DataSource 资源设置 JNDI 名称。它告诉您 Tomcat 的标准数据源工厂是 org.apache.tomcat.dbcp.dbcp.BasicDataSourceFactory,但是在 Fedora 17 上安装 Tomcat 后,我​​搜索了系统上的每个 jar 文件,但找不到包含此类的文件。

它在哪里?

tomcat java fedora

2
推荐指数
1
解决办法
7409
查看次数

标签 统计

docker ×1

fedora ×1

java ×1

namespaces ×1

security ×1

tomcat ×1