錯誤
如果提示ls: cannot access '/docker-entrypoint-initdb.d/': Operation not permitted 原因是CentOS7中的安全模块selinux把权限禁掉了
解决方法
在运行容器的时候,给容器加特权,及加上 --privileged=true
参数解释
textprivileged:用来给容器root权限,不安全的 environment:设置容器中的环境变量 volumes :用来存储docker持久化的数据,启动tomcat容器后,读取的是主机目录中的文件包 network_mode: 设置容器的网络模式,下面是几种网络模式,有需要的可以自行查找资料 host:容器环境不隔离,将使用主机的端口和ip,不能与ports 端口映射同时使用 bridge overlay Macvlan
提示
docker-compose.yml中的使用
yml
tomcat:
restart: always
image: tomcat:latest
container_name: tomcat
network_mode: host //设置网络模式为host模式
volumes:
- ~/java:/usr/local/tomcat/webapps/ //将主机中的~/java/ 目录挂载到容器中tomcat存放war包的目录
environment:
LOGONAME: tomcat //设置tomcat中的环境变量
privileged: true //设置容器的权限为root
本文作者:澳门🇲🇴工作的IT人
本文链接:
版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!