도커 컨테이너의 위치 및 구성 팁

도커 사용 팁


  1. 모든 고정 표시기 컨테이너를 청소 중지

    때때로 우리는 용기를 많이 사용할 수없는 오류로 인해 중단 또는 컨테이너에서 철수하고있다가, 우리는 제거해야하지만 우리는 RM 우리가 고정 표시기 수있는 횟수를 RM은 얼마나 많은 용기 문제를 많이 삭제 추신 -qa ID는 우리가 막을 수 있도록 모든 일회용 용기 제거, RM 컨테이너 삭제할 수 없습니다 실행, 실행 삭제됩니다 컨테이너에 대해 걱정하지 마십시오, 일회용이 모두 삭제, 모든 컨테이너를 식별

    # 只适用于Linux环境下
    docker rm $(docker ps -qa)
  2. 보기 미러는 환경 변수가

    우리는 좋은 이미지를 만들거나 우리가 자신의 환경 변수를 알고 싶다면 거울을 얻을 때, 우리의 첫번째 생각은 알고 볼 수있는 컨테이너를 만드는 것입니다, 사실, 당신은 우리가 ENV를 통해 직접 볼 수 필요가 없습니다

    docker run nginx env

  3. 윈도우와 리눅스의 차이

    주된 이유는, 가상 머신, 경우는 리눅스 커널에 의존, 우리 모두가 리눅스에 대한 문제로 시작하는 고정 표시기 알고,이 두 고정 표시기 환경 지원 문제 사이의 차이가 있지만 윈도우에서, 다음, 지금 우리가 사용하는 방법입니다 다음은 기본적으로 버추얼 가득되는 win10 버전입니다, 많은 win10 데스크톱 버전, 사용의 Hyper-V뿐만 아니라 가상 머신을 선택합니다. 고정 표시기와 가상 머신 윈도우에서 사용할 후에 만에 어디 우리가에서 두 사이의 차이를 알아야 할

    직접 리눅스 시스템에 고정 표시기,하지만 리눅스에 다른 창에서, Windows 시스템에 가상 머신은, 가상 머신은 고정 표시기입니다

    리눅스 시스템 << 고정 표시기 용기

    가상 머신 시스템이기 << << 고정 표시기 용기

    그것은 우리가 프로세스의 사용에서 약간 다른 결과를 가지고, 그 이유는, 가장 일반적인 포트를 열어야 할 때입니다

    Linux 시스템 : 고정 표시기 컨테이너 포트는 직접 리눅스 시스템에 매핑

    Windows 시스템 : 가상 머신에 고정 표시기 컨테이너 포트 매핑, 그리고 그 다음 우리의 창에 가상 머신에 의해 매핑

    참고 : 네트워크 주소 변환 (NAT)을 선택할 때 우리의 가상 시스템 네트워크의 선택을, 그래서 우리는이 계층 포트 매핑 문제의 창에 가상 머신의 중앙을 고려하지 않는다

  4. 설치

    거울처럼 사람들의 부두 노동자의 많이 사용하는 경우, 피할 수없는 응용 프로그램 거울에 직접 패키지, 직접 부팅 이미지, OK 다,하지만 우리는 때때로, 특히, 구성 파일 또는 일부 프로젝트를 약간 수정을 할 것입니다 약간의 수정,이 시간 우리는 여전히 거울을 다시 할 필요가? 대답은 필요하지 않습니다, 필요하지 않습니다

    우리의 nginx 프런트 엔드 이미지 배포를 사용하지만 릴리스 패턴이 약간의 미세 조정이 필요한 발견 후, 우리는 또한의 미러 이미지를 다시 만들 필요가있다, 그래서 우리는, 우리가 생각하는 (적어도 내가 문제를 많이 느낄 것) 문제를 많이 느끼지 않을 것 단순히 수정 된 파일을 라인에 컨테이너를 다루는 문서를 넣어, 어떻게 수정 된 파일 덮여 컨테이너 파일을 두 가지 방법으로 안내 : 첫 번째 CP 파일을 직접 용기에, 우리는 여전히에있는 프로세스를 선박의 작업은 어떻게 용기를 이동할 수없는 이유는 무엇입니까? 파일이나 컨테이너를 호스트 디렉토리를 마운트하기 위해 -v 매개 변수를 사용하여 시작 시간을 우리는 호스트 부팅시에 장착 된 용기의 뒷면에 뭔가를 수정하는 직접 장착 할 수 있습니다, 그래서 우리는 컨테이너를 이동하지 않습니다

    docker run -d -p 80:80 -v /c/Users/SunArmy/Desktop/html:/usr/share/nginx/html nginx

우리는 단지이 index.html을 환영 nginx를 쓰기로 쓰기

아래에 index.html을 / 옵션 / 고정 표시기 / HTML /를 포함하는이 문서

다시 방문

확인을 직접 다시 시작할 필요가 없습니다

왜 용기에 직접 CP를 선택하지

거기 당신은 확실히 다시 시작해야합니다 구성 파일을 수정해야하는 경우 경우이지만, 수정 된 구성 파일에 때 용기 실수로 잘못이 시간에 일어나 싶어 용기의 구성을 수정, 그것은 그렇게 할 것 (하지 않는 한 다시 만들 컨테이너를) 우리가 외부에 장착하는 구성 파일을 넣을 경우, 연습을 위해, 당신이 올바르게 구성 다시 시작됩니다 시작할 때 당신은 호스트에서 직접 편집 할 수 있습니다 그것은, 요약을 시작 CP 컨테이너 편리하고 안전한 방법보다 방법을 장착 할 수 있습니다

  1. JQ 도구

    마지막으로, JSON 도구 작업이 우리가 검사 우리가 고정 표시기를 선택합니다 정상적인 상황에서, 우리가 염려하는 일부 정보를 필터링하는 경향이 ID보기 컨테이너 구성을 검사 고정 표시기를 사용, 사용되는 컨테이너 구성의보기는 --format = 또는 GREP을 사용하여

    그러나 사용하는 일없이 시원한으로 작동 JSON을 필터링하는 가장 친숙한 방법은 없습니다

    JQ 도구 냠 JQ는 별도의 설치가 필요

    사용 JQ 필터 고정 표시기 주소를 얻기 검사

    docker inspect ac |jq -r .[0].NetworkSettings.IPAddress

    . 代表管道前面的输出,之后的[0]就是数组的第1个元素,后面的 . 就是类似于点出对象中的属性一样,跟我们平时使用json是一样的,jq还能方便的格式化查看json文件,对于在命令行下查看json文件简直是利器

  2. 修改Docker本地镜像和容器的存储位置

    很多人都是只知道创建了容器,从来没有关注过创建的容器在哪?本地镜像在哪?

    但是,当你不得不关注的时候往往就是你的docker镜像和容器把你的盘装满了

    查看Docker镜像和容器存储的位置

    docker info |greo Docker

    默认位置就是:/var/lib/docker

    修改存储位置的方法有两种:

    一):通过建立软连接,把/var/lib/docker 移动到其他地方,建立到这里的软连接

    # 停止docker
     service docker stop
    # 移动/var/lib/docker 到/usr/local/
     mv /var/lib/docker /usr/local/
    # 建立软连接
     ln  -s /usr/local/docker /var/lib/docker
    # 启动Docker
     service docker start

    这个时候我们已经修改了,但是查看位置的时候看到的位置还是/var/lib/docker

    但是这是个链接,可以查看大小发现是空的,真实的存储位置已经成为了/usr/local/docker

    # 查看/var/lib/docker目录大小
     du -dh /var/lib/docker

    二):修改配置文件

    默认配置文件/etc/docker/daemon.json

    如果没有的话就自己创建

    {
      "registry-mirrors": ["http://hub-mirror.c.163.com"],
      "graph":"/opt/docker"
    }

    直接修改 graph 的值为你的位置然后重启,OK

    启动

    service docker stop

    停止

    service docker start

    重启

    service docker restart

    再查看docker的存储位置,已经修改成功

추천

출처www.cnblogs.com/SunArmy/p/11128842.html