programing

Mac/OS X에서 /var/lib/docker는 어디에 있습니까?

javamemo 2023. 8. 23. 21:33
반응형

Mac/OS X에서 /var/lib/docker는 어디에 있습니까?

폴더를고찾있다니습▁folder다니있습▁i폴./var/lib/dockerMac용 도커를 설치한 후 Mac에 설치합니다.

와 함께docker info알겠습니다

    Containers: 5
     ...
    Server Version: 1.12.0-rc4
    Storage Driver: aufs
     Root Dir: /var/lib/docker/aufs
     Backing Filesystem: extfs
     Dirs: 339
     Dirperm1 Supported: true
    ...
    Name: moby
    ID: LUOU:5UHI:JFNI:OQFT:BLKR:YJIC:HHE5:W4LP:YHVP:TT3V:4CB2:6TUS
    Docker Root Dir: /var/lib/docker
    Debug Mode (client): false
    ....

저는 /var/lib/docker 호스트에

했습니다./Users/myuser/Library/Containers/com.docker.docker/하지만 거기서 아무것도 찾을 수 없었습니다.그게 어디에 있는지 아세요?

위의 답변에서 언급한 바와 같이 다음에서 확인할 수 있습니다.
screen ~/Library/Containers/com.docker.docker/Data/vms/0/tty

하면 tty 실되탐수있습니다로 할 수 ./var/lib/docker

2021년 현재, Mac 사용자는 문서화된 방법으로 VM을 쉽게 액세스할 수 있으며, 따라서 볼륨도 쉽게 액세스할 수 있습니다.

Rocky Chen이 Mac에서 VM을 사용할 수 있는 방법을 찾았습니다.이것으로 당신은 실제로 유명한 것을 조사할 수 있습니다./var/lib/docker/volumes.

docker run -it --privileged --pid=host debian nsenter -t 1 -m -u -n -i sh

방법을 검토해 보겠습니다.

  • -STDIN이 연결되지 않았더라도 열어두기 + 유사 TTY 할당을 위해 사용됩니다.
  • --privileged "모든 기능을 컨테이너에 추가합니다.도커 실행과 같은 특수한 경우를 허용합니다."
  • --pid는 호스트 VM 네임스페이스를 사용하도록 정의합니다.
  • 사용할 실제 이미지를 debian합니다.
  • ndebian 도구를 입력하여 다른 네임스페이스에서 프로그램을 실행합니다.
  • -t는 대상 PID입니다.
  • -m은 제공된 PID 네임스페이스를 마운트합니다.
  • -u는 UTS(Unix Time Sharing) 네임스페이스를 입력합니다.
  • -n 제공된 PID 네트워크 네임스페이스를 입력합니다.
  • -제공된 PID IPC 네임스페이스를 입력합니다.

실행한 후 다음으로 이동/var/lib/docker/volumes/당신의 책을 찾을 수 있을 것입니다.

다음 질문은 다음과 같습니다.

이러한 볼륨을 호스트에 백업하는 방법은 무엇입니까?

저는 댓글에 있는 아이디어에 감사드립니다!

VSCode 사용자를 위한 업데이트

당신이 공식 도커 확장을 다운로드했다면, 태양이 당신을 위해 빛날 것입니다.

Docker Extension

Visual Studio Code에서 볼륨을 검사하기만 하면 됩니다.로컬에 저장할 파일을 마우스 오른쪽 단추로 클릭하고 다운로드합니다.그거 쉽군요!

두 번째 업데이트

2021년 7월부터 Mac용 Docker Desktop은 GUI에서 볼륨에 직접 액세스할 수 있지만 Pro 및 Team 계정에만 액세스할 수 있다고 발표했습니다.

enter image description here

Mac용 도커를 사용하는 경우 여기에 있는 다른 답변은 구식입니다.

VM에 액세스할 수 있었던 방법은 다음과 같습니다.다음 명령을 실행합니다.

screen ~/Library/Containers/com.docker.docker/Data/vms/0/tty

경로이지만 할 수도 : 이경는기경만먼저다수할음야수있다습니도행해을지이본로로.cd ~/Library/Containers/com.docker.docker/Data/vms

그리고 나서.lsVM이 어떤 디렉토리에 있는지 확인하고 그에 따라 "0"을 바꿉니다.

안에 있으면 빈 화면이 보일 수도 있습니다.Enter 키를 누릅니다.

페이지에서는 VM을 종료하려면 "Ctrl-a"를 누른 후 "d"를 눌러야 한다고 설명합니다.

답변 보기

Docker for Mac Application을 사용하면 컨테이너가 다음 위치에 있는 VM 내에 저장된 것으로 나타납니다.

~/라이브러리/컨테이너/com.docker.docker/데이터/com.docker.driver.amd64-linux/Docker.qcow2

@Dmitriy가 말한 것처럼:

screen ~/Library/Containers/com.docker.docker/Data/vms/0/tty

를 사용할 수 있습니다.ctrl a+d

및사를 합니다.screen -dr화면을 다시 표시합니다(단순히 화면을 다시 부착하면 터미널 텍스트가 왜곡되므로).

언급

종하려를니다사합용면료다를 합니다.ctrl + a+k,그리고 나서 선택합니다.y화면을 죽입니다.

새로운 도커 버전(내 버전은 20.10.5)은 가상 머신과 통신하기 위해 TTY 대신 소켓을 사용하므로 스크린 명령 대신 nc 명령을 사용할 수 있습니다.

nc -U ~/Library/Containers/com.docker.docker/Data/debug-shell.sock

좀비 스레드와 비슷하지만 방금 발견한 것처럼 화면이 필요하지 않거나 셸을 엉망으로 만드는 다른 솔루션이 있습니다.

에서 입니다.docker volume inspect <vol_name>

컨테이너의 경로를 반환합니다. 다음과 같습니다.

"Mountpoint": "/var/lib/docker/volumes/coap_service_db_data/_data"

그자리의 _data는 성구요 설경마로구요다에서 입니다.volumes:특정 볼륨을 사용하는 서비스 섹션(예:

volumes: - db_data:/var/lib/postgresql/dataobvs 당신의 마일리지는 다를 것입니다.

쉬운 은 실제로 입니다./docker호스트에서 사용되는 볼륨에 액세스할 수 있는 디렉토리입니다.

docker run --rm -it -v /:/docker alpine:edge

이 시점에서 볼륨에 CD를 넣을 수 있습니다.

cd /var/lib/docker/volumes/coap_service_db_data/_data

Mac용 도커의 새 버전이 이를 여기 보이는 UI 요소로 이동한 것 같습니다.CLI를 클릭하면 도커 Docker CLI Button파일 시스템을 탐색하는 데 사용할 수 있는 터미널이 실행됩니다.

실행:

docker run -it --privileged --pid=host debian nsenter -t 1 -a bash
ls /var/lib/docker

MacOS I의 경우 다음 단계를 사용합니다.

  1. 에서는 가상 가능, 도커가로그인 (MacOS 도커는서이있에며신머툴, VM 는있커이있음도우 VirtualBox만):docker-machine ssh
  2. 하자마자 ' 유저'에서 ' 유저'로 .docker사용자:sudo -i
  3. 저는 이제확수있다니습할인을 확인할 수 ./var/lib/docker

파일은 다음과 같습니다.

/var/run/docker.sock

실제 위치:

/Volumes/{DISKNAME}/var/run/docker.sock

하는 경우 8 이상을 이것실 VirtualBox 5.2.8 이상을에 대한 한./Volumes는 자동 및 했습니다. Virtualbox에서는 가상 머신을 사용할 수 없습니다.

#!/bin/bash
docker run -d --restart unless-stopped -p 9000:9000 \
-v /var/run/docker.sock:/var/run/docker.sock portainer/portainer \
--no-auth

그런 다음 Portainer(192.168.99.100:9000)에 액세스하거나 localhost:9000에 액세스합니다.

이 경로는 "Docker for Mac Application"이 "기본값"이었던 "Docker for Mac Application" 이전의 Docker 호스트(MacOS가 아님)에서 왔으며, 이 VM 내부에는 언급된 경로가 존재합니다. 이제 "Docker for Mac Application"에는 Docker.qow2 이미지(Qemu 기반 VM)가 있습니다.이 VM @mik-jagger 방식으로 이동하는 것은 괜찮습니다(그러나 더 이상은 없습니다).

도커 로그가 MacOS의 /var/lib/docker에 없습니다.

MacOS 사용자는 이 경로에서 도커 로그를 찾을 수 있습니다.

/Users/Barrack.케냐/도서관/컨테이너/com.docker.docker/데이터/로그/호스트

  • job_name: 도커 static_configs:

    • 대상:
      • 도커 레이블: 작업: 도커 로그 경로: (경로를 입력하십시오)

    pipeline_vmdk:

    • 도커: {}

언급URL : https://stackoverflow.com/questions/38532483/where-is-var-lib-docker-on-mac-os-x

반응형