Docker run 容器使用-v挂载目录总会启动失败的解决方案

问题:docker run一个容器,并且挂载了目录;但是总是启动失败【docker ps 后发现没有启动】

[root@localhost tomcat]# docker run -d -p 9090:8080 -v /home/dockerfile/tomcat/test:/usr/local/apache-tomcat-8.5.61/webapps/test -v /home/dockerfile/tomcat/logs/:/usr/local/apache-tomcat-8.5.61/logs --name yjytomcat diytomcat
b13fc0b57b9fc17019bc8119cb572677889d663f24813150506f381842066c2d
[root@localhost tomcat]# docker ps
CONTAINER ID        IMAGE                 COMMAND             CREATED             STATUS              PORTS                    NAMES
2c245c597ae4        portainer/portainer   "/portainer"        2 days ago          Up 6 hours          0.0.0.0:8088->9000/tcp   optimistic_lamport


原因: CentOS7中的安全模块selinux把权限禁掉了,无法使用-v命令进行挂载
解决方案: 添加selinux规则,将要挂载的目录添加到白名单

[root@localhost tomcat]# chcon -Rt svirt_sandbox_file_t /home/dockerfile/tomcat/test
[root@localhost tomcat]# chcon -Rt svirt_sandbox_file_t /home/dockerfile/tomcat/logs


再重新创建容器即可。

转载:https://blog.csdn.net/qq_40569835/article/details/112854523

引用:docker中 启动所有的容器命令 docker start $(docker ps -a | awk '{ print $1}' | tail -n 2) 。 引用:docker中 关闭所有的容器命令 docker stop $(docker ps -a | awk '{ print $1}' | tail -n 2) 。 引用:执行 docker‐compose 进入docker-compose.yml的同级目录 docker-compose up -d 。 对于命令 "docker run -it -v",这是用来创建并启动一个新的容器的命令。其中的参数含义如下: - -i :交互模式,允许通过终端输入或输出 - -t :为正在运行的容器分配一个伪终端 - -v :指定容器与主机之间的文件系统挂载关系 在具体使用时,-v参数后面需要指定主机目录容器目录的对应关系,用冒号(:)分隔。例如,-v /host/dir:/container/dir 表示将主机上的 /host/dir 目录挂载容器的 /container/dir 目录。 这样,当你执行 "docker run -it -v"命令时,会创建一个新的容器,并在容器内部启动一个伪终端,同时将主机目录容器目录进行挂载。你可以通过输入和输出与容器进行交互,并且主机目录文件将会在容器内部的目录中可见。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [Docker常用操作指令](https://blog.csdn.net/qq_36539042/article/details/117594055)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值