반응형
Jen'_'
Jen's Space
Email
GitHub
전체 방문자
오늘
어제
  • 분류 전체보기 (98)
    • Ansible (4)
      • 우아한앤서블 (4)
    • Cloud (19)
      • AWS (17)
      • GCP (2)
    • DevOps (40)
      • Docker (6)
      • Kubernetes (26)
      • CICD (6)
      • Terraform (2)
    • Language (13)
      • Python (12)
      • Node.js (1)
    • Linux (10)
    • etc. (7)
    • 개인기록 (1)
    • AEWS (4)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

  • 피드백 환영합니다 :)

인기 글

태그

  • Docker
  • jenkins
  • gitops
  • ansible
  • argocd
  • autoscaling
  • vagrant
  • karpenter
  • ALB
  • k8s
  • 자격증
  • terraform
  • CICD
  • Kubernetes
  • 쿠버네티스
  • 우아하게앤서블
  • AWS
  • ubuntu
  • INGRESS
  • EKS

최근 댓글

Jen'_'

Jen's Space

[docker] Failed to get D-Bus connection 에러 해결
DevOps/Docker

[docker] Failed to get D-Bus connection 에러 해결

2021. 5. 29. 12:45
반응형


이미지 centos:7를 사용하려고 했더니 systemctl을 사용할 수가 없다 ;;
ubuntu에서는 잘 됐던거 같은데 centos은 안되는게 왜케 많은지 모르겠다

[user01@master ~]$ docker run -it centos:7 bash
[root@9fa1db10b89c /]# systemctl
Failed to get D-Bus connection: Operation not permitted

 

 

1. 컨테이너 해결방법

--privileged 옵션과 -d 옵션으로 /sbin/init을 실행한후 exec로 /bin/bash를 실행시켜야 한다

$ docker run --privileged -d --name mycentos centos:7 /sbin/init
$ docker exec -it mycentos /bin/bash

 

 

2. 쿠버네티스 해결 방법

Dockerfile을 생성할 때 ENTRYPOINT 에서 /sbin/init 을 실행시켜준다

FROM centos:7
RUN yum -y install httpd
ENTRYPOINT ["/sbin/init", "systemctl start httpd", "systemctl enable httpd"]
$ docker build -t mycentos . # 현재 위치에 있는 Dockerfile을 이미지로 만들기
$ docker push <레포명>/mycentos # 이미지를 레포지터리에 올리기


그리고 deployment.yml 을 작성할 때 securityContext:privileged를 true로 해준다.

...
spec:
containers:
  - name: mycentos
  image: <레포명>/mycentos
  securityContext:
    privileged: true
    imagePullPolicy: Always
...

사실 쿠버네티스는 이렇게 하면 된다는데 되는지는 모르겠다 ..

 

3. centos/systemd

그냥 이것도 저것도 다 귀찮다 싶으면 CentOS에서 제공하는 systemd가 가능한 Dockerfile을 사용하자

https://github.com/CentOS/CentOS-Dockerfiles/tree/master/systemd/centos7

 

CentOS/CentOS-Dockerfiles

Dockerfiles for various common implementations. Contribute to CentOS/CentOS-Dockerfiles development by creating an account on GitHub.

github.com


허허... 이렇게 편리한 것을.......... 제일 마지막에 찾아냈다
중간에 build에서 에러가 떠도 놀라지 마세요 별 상관이 없더라고요 ㅎㅎ

 

반응형
저작자표시 (새창열림)

'DevOps > Docker' 카테고리의 다른 글

Docker로 ubuntu, apache, php 환경의 이미지 만들기  (0) 2021.07.15
도커와 쿠버네티스 개념 정리  (0) 2021.05.11
도커 이미지 레이어(Docker Image Layer)  (0) 2021.05.10
docker run 명령어 사용법, 옵션  (1) 2021.05.08
도커 기본 명령어 정리  (0) 2021.05.08
    'DevOps/Docker' 카테고리의 다른 글
    • Docker로 ubuntu, apache, php 환경의 이미지 만들기
    • 도커와 쿠버네티스 개념 정리
    • 도커 이미지 레이어(Docker Image Layer)
    • docker run 명령어 사용법, 옵션
    Jen'_'
    Jen'_'
    DevOps 엔지니어 Jen의 기술 블로그 / 이메일: jenakim47@gmail.com

    티스토리툴바