首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Linux Docker systemctl 命令无法使用的解决方案

Linux Docker systemctl 命令无法使用的解决方案

作者头像
f_zyj
发布2021-12-07 16:34:18
发布2021-12-07 16:34:18
4.6K2
举报

据说在 \text{Linux Docker} 中无法使用 \text{systemd(systemctl)} 相关命令的原因是 0 号进程不是 \text{init} ,而是其他例如 \text{/bin/bash} ,所以导致缺少相关文件无法运行。

具体的解决方案是通过 \text{init} 在后台运行一个 \text{docker} 容器,然后再通过 \text{exec} 的方式进入到容器中,不过需要注意的是不同的系统 \text{init} 程序的路径不同。

例如 \text{CentOS 7}

代码语言:javascript
复制
docker run -tid --name test_1 --privileged=true centos:latest /usr/sbin/init
docker exec -it test_1 /bin/bash

再例如 \text{Ubuntu 16.04}

代码语言:javascript
复制
docker run -tid --name test_2 --privileged=true ubuntu:16.04 /sbin/init
docker exec -it test_2 /bin/bash

需要注意的是,第一个命令除了要通过 \text{init} 后台启动 \text{docker} 容器以外, \text{--privileged=true} 是必须的。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/06/23 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
容器服务
腾讯云容器服务(Tencent Kubernetes Engine, TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的企业级容器管理服务。首创单集群混合节点的资源管理模式,全面围绕 Agentic AI 应用部署与极致资源效能提供全场景解决方案,为用户释放 AI 时代的无限算力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档