programing

바이온 도커 컨테이너를 실행하는 방법은 무엇입니까?

codeshow 2023. 7. 31. 22:04
반응형

바이온 도커 컨테이너를 실행하는 방법은 무엇입니까?

호스트 가상 시스템에 도커를 설치했습니다.그리고 이제 다음을 사용하여 파일을 만들고자 합니다.vi.

하지만 그것은 나에게 오류를 보여줍니다.

bash: vi: command not found

다음 명령을 사용하여 컨테이너에 로그인합니다.

docker exec -it <container> bash

그런 다음 다음 명령을 실행합니다.

apt-get update
apt-get install vim

실행할 명령은 사용 중인 기본 이미지에 따라 달라집니다.

알인의경우.viOS의 됩니다. 기본 OS의 일부입니다.를 설치하는 입니다.vim다음과 같습니다.

apk -U add vim

데비안 및 우분투의 경우:

apt-get update && apt-get install -y vim

의 경우, CentOS 경우의,vi일반적으로 기본 OS와 함께 설치됩니다.vim:

yum install -y vim

이 작업은 초기 개발 단계에서만 수행해야 합니다.작업 컨테이너를 가져오면 컨테이너 외부에 저장된 이미지 또는 구성에 파일을 변경해야 합니다.도커 파일 및 도커가 새 이미지를 빌드하는 데 사용하는 기타 파일을 업데이트합니다.컨테이너 내부의 변경 사항은 설계상 일시적인 것이며 컨테이너를 교체할 때 손실되기 때문에 생산 과정에서 이 작업을 수행해서는 안 됩니다.

사용:

apt-get update && apt-get install -y vim

위 명령에 대한 설명

  1. apt-get update => 현재 패키지를 업데이트합니다.
  2. apt-get install => 패키지를 설치합니다.
  3. -y => 권한을 무시하고 기본 권한은 예로 설정됩니다.
  4. vim => 설치할 패키지의 이름.

당신의 컨테이너는 아마도 박스 밖으로 그것을 설치하지 않았을 것입니다.

려달을 합니다.apt-get install vim당신은 갈 준비가 되어 있어야 합니다.

도커 파일에 다음 행을 추가한 다음 도커 이미지를 다시 작성합니다.

RUN apt-get update && apt-get install -y vim

오류:bash: vi: command not found

컨테이너에 root 사용자로 기록하여 다음 명령을 실행합니다.

docker exec --user="root" -it (container ID) /bin/bash
apt-get update
apt-get install vim

또는 불필요한 편집기를 설치하지 않고 도커 이미지를 작게 유지합니다.ssh를 통해 도커 호스트에서 컨테이너로 파일을 편집할 수 있습니다.

vim scp://remoteuser@container-ip//path/to/document

Debian 기반 컨테이너에서 다음 명령 사용:

apt-get install vim-tiny

Docker 파일에서 사용하기 위한 전체 지침:

RUN apt-get update && apt-get install --no-install-recommends -y \   
 vim-tiny \  
 && apt-get clean && rm -rf /var/lib/apt/lists/*

불필요한 패키지를 설치하지 않고 불필요하게 다운로드된 파일을 제거하므로 도커 이미지 크기가 크게 증가하지 않습니다.

가장 많이 투표된 답은 정확한 생각을 가지고 있지만, 저의 경우에는 효과가 없었습니다.@java25의 댓글이 제 경우에 도움이 되었습니다.나는 도커 컨테이너에 로그인해야 했습니다.root가 vim.을 설치합니다저는 비슷한 문제를 가진 다른 사람들이 쉽게 찾을 수 있도록 답변으로 댓글을 올리는 것입니다.

docker exec -ti --user root <container-id> /bin/bash

도커 내부에 들어가면 다음 명령을 실행하여 vi를 설치합니다.

apt-get update
apt-get install vim

Docker 컨테이너 내에 설치하려면 명령을 실행합니다.

도커 exec apt-get update &&apt-get install-yvim

그러나 이것은 vim이 설치된 컨테이너로 제한될 것입니다.모든 컨테이너에서 사용할 수 있도록 하려면 도커 파일을 편집하고 다음을 추가합니다.

RUN apt-get update & & apt-get install -yvim

또는 새 도커 파일의 이미지를 확장하고 위의 명령을 추가할 수도 있습니다.예.

시작 < 이미지 이름 >

RUN apt-get update & & apt-get install -yvim

컨테이너 내부(VM이 아닌 도커)에서는 기본적으로 이러한 컨테이너가 설치되지 않습니다.apt-getwget은 작동하지 않습니다.내 VM은 Ubuntu 17.10에서 실행되고 있습니다.는 yum 패키지 매니저가 일했습니다.

Yum은 Debian이나 Ubuntu의 일부가 아닙니다.그것은 빨간 모자의 일부입니다.그러나 Ubuntu에서 작동하며 apt-get처럼 기본적으로 설치됩니다.

vim을 설치하려면 다음 명령을 사용합니다.

yum install -y vim-enhanced 

vim을 제거하는 방법

yum uninstall -y vim-enhanced 

유사하게,

yum install -y wget 
yum install -y sudo 

-y는 yum install package-name을 수행한 후에 묻는 질문이 나타나면 yes로 가정하기 위한 것입니다.

오류: bash: vim: 명령을 찾을 수 없습니다.

컨테이너에 루트 사용자로 기록하여 다음 명령을 실행합니다.

microdnf install -y vim

도커에서 간단한 하우스키핑을 위한 소형 편집기를 실제로 사용하려면 도커 파일에서 다음을 사용합니다.

RUN apt-get install -y busybox && ln -s /bin/busybox /bin/vi

Ubuntu 18 기반 도커에서 사용했습니다. (물론 필요할 수도 있습니다.)RUN apt-get update이전에는 Docker 파일을 직접 만들고 있다면 이미 가지고 있을 것입니다.)

일반적으로 도커 컨테이너의 파일을 변경하는 것은 좋은 생각이 아닙니다.시간이 지나면 모든 사람들이 그 변화에 대해 잊어버릴 것입니다.좋은 방법은 원래 이미지에서 다른 도커 이미지를 만드는 것입니다.

도커 이미지에서 /path/to/docker/image/에서 myFile.xml이라는 파일을 변경해야 합니다.그래서, 당신은 해야 합니다.

  1. 로컬 파일 시스템에서 myFile.xml을 복사하고 필요한 내용을 변경합니다.
  2. 다음과 같은 내용의 '도커 파일'이라는 이름의 파일을 만듭니다.
FROM docker-repo:tag
ADD myFile.xml /path/to/docker/image/

그런 다음 사용자만의 도커 이미지를 구축합니다.docker build -t docker-repo:v-x.x.x .

그런 다음 새로 빌드한 도커 이미지를 사용합니다.

도커 컨테이너 시작:

docker run -it <image_name> /bin/bash

Vim 설치:

sudo apt update
sudo apt install vim

언급URL : https://stackoverflow.com/questions/31515863/how-to-run-vi-on-docker-container

반응형