docker - Docker 无法使用退出代码 139 构建映像
问题描述
我正在尝试从 CentOS 6.9 构建图像。使用这个 Dockerfile:
FROM centos:6.9
RUN ls
但它不断失败,退出代码为 139,输出如下:
$ docker build -t centos-6.9 .
[+] Building 1.1s (7/7) FINISHED
=> [internal] load build definition from Dockerfile 0.0s
=> => transferring dockerfile: 72B 0.0s
=> [internal] load .dockerignore 0.0s
=> => transferring context: 2B 0.0s
=> [internal] load metadata for docker.io/library/centos:6.9 0.6s
=> [internal] load build context 0.1s
=> => transferring context: 72B 0.0s
=> CACHED [1/3] FROM docker.io/library/centos:6.9@sha256:6fff0a9edc920968351eb357c5b84016000fec6956e6d745f695e5a34f18ecd2 0.0s
=> [2/3] COPY . . 0.0s
=> ERROR [3/3] RUN ls 0.3s
------
> [3/3] RUN ls:
------
executor failed running [/bin/sh -c ls]: exit code: 139
我在跑:
- Windows 10 企业版 2004
- Docker 桌面 3.0.0
解决方案
这似乎是 WSL 2 与较旧基础映像的问题,而不是 docker 或映像本身。
创建
%userprofile%\.wslconfig
文件。添加以下内容:
[wsl2]
kernelCommandLine = vsyscall=emulate
重新启动 WSL。
wsl --shutdown
重新启动 Docker 桌面。
参考:
推荐阅读
- android - 接收短信安卓应用
- cassandra - 卡桑德拉安装
- visual-studio-code - 如何使用 bazel 将所有依赖项下载到本地?
- python - Scrapy 重复过滤器可以在 Jobs 中保持不变吗?
- powerapps - 使用 Navigate on screen OnVisible 重定向未经授权的用户
- java - 如何在 Spring Boot 应用程序中测试 Quartz 作业的正常工作
- sql-server - 关于条件的 PARTITION BY 语句
- ios - 使用 Firebase 登录 iOS 13.2 的导航/Segue
- python - 如何从纽约时报网络抓取某个类别的所有文章
- c++ - 模板类使用参数包时如何传递其他模板参数?