Docker在搭建过程中遇到的几个报错信息

本文记录了使用Docker过程中遇到的三个常见问题及其解决方案,包括如何正确启动交互式shell、解决容器无法访问外网的问题以及安装ifconfig命令。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

其实用Docker已经有段时间了,现在因为项目的需要,为此重新搭建了Docker的环境,用来跑实验。太懒了,就直接pull的仓库中的镜像,但是发现了好多问题,在此做个记录。

问题一、出现interactive shell

在我查找Ubuntu的Docker的镜像时,输入

docker search ubuntu

然后就选了一个

docker pull ubuntu

问题出现了,当我进行

docker run --name='Ubuntu'

之后,却出现interactive shell,然后什么也没有发生,查看是否容器创建完毕

docker ps -a

发现已经创建完毕,可是执行完

docker start -i xxxxxxxxx

之后,还是有interactive shell,但是,进不去这个容器,后来查找了一下问题,发现,运行镜像并创建容器的时候,需要这样运行

docker run -it xxxxxxxxx bash

这就好了。。。

问题二、Docker的容器不能访问外网

好不容易折腾完,可以进入容器了,敲个apt更新一下源吧,这时候告诉我“Unable to locate package xxxxxxx”,什么情况??排查了很多问题,最后发现没有网。。。
所以,就在创建的时候加了一句话(删除了之前创建好的容器)

docker run -it --net='host' xxxxxxxx bash

再次打开的时候,就可以执行了。

问题三、没有ifconfig命令

办法, 在Docker中执行:

apt-get install net-tools

即可!




注:
1. 此博客还是会继续更新的!因为,新手遇到的问题实在太多。。。
2.这是我自己的解决办法,有更好的还请指教,谢谢!

当你遇到 Docker 报错 `134` 时,通常表示容器内运行的应用程序遇到了某种未处理的异常、崩溃或其他终止错误。这种错误可能是由多种原因引起的,例如: ### 常见原因分析 1. **应用程序内部逻辑问题** 容器内的应用可能存在 bug 或者配置错误,导致其意外退出并返回非零状态码(如 134)。这通常是由于某些条件触发了诸如段错误 (Segmentation Fault) 的致命问题。 2. **环境变量或依赖缺失** 如果你的镜像缺少必要的库文件或者系统资源不足,则可能导致启动失败,并给出类似的状态码作为反馈信息之一;比如内存分配超限等也可能引发此类情况发生。 3. **Dockerfile 构建问题** 检查构建阶段是否存在问题。如果基础镜像损坏或是安装步骤出错,在实际执行命令之前就已经埋下了隐患。 --- ### 解决思路 #### 步骤一:检查日志 首先查看具体的报错信息: ```bash docker logs <container_id> ``` 通过观察完整的错误堆栈追踪定位到确切的问题所在位置及性质。 #### 步骤二:验证入口点(Entry Point) 确认 `CMD` 和 `ENTRYPOINT` 设置正确无误地指向预期的目标脚本路径名以及所有参数都准确有效。 #### 步骤三:测试宿主机兼容性和资源配置 确保本地机器满足最低硬件需求(CPU架构适配、足够的RAM/Disk空间),并且操作系统版本支持所使用的特定功能特性集。 #### 示例修复操作示例: 假如是因为某个共享对象丢失造成的链接故障,可以尝试更新包管理器缓存后再重新拉取依赖项。 ```Dockerfile RUN apt-get update && \ apt-get install -y libmylib.so.x.y.z --no-install-recommends ``` --- ###
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值