Docker經常使用命令整理

1、Docker鏡像管理:
html


一、搜索鏡像nginx

docker searchc++


二、獲取鏡像spring

docker pulldocker


三、查看鏡像ubuntu

docker imagescentos


四、刪除鏡像(操做前先檢查)bash

docker rmi網絡


五、保存鏡像koa

docker save spring-boot-docker  -o  /home/wzh/docker/spring-boot-docker.tar


六、加載鏡像

docker load -i spring-boot-docker.tar 


七、鏡像掛載

把一個宿主機上的目錄掛載到鏡像裏。

docker run -it -v /home/dock/Downloads:/usr/Downloads ubuntu64 /bin/bash


默認掛載的路徑權限爲讀寫。若是指定爲只讀能夠用:ro

docker run -it -v /home/dock/Downloads:/usr/Downloads:ro ubuntu64 /bin/bash


2、Docker容器管理


一、啓動容器

docker run --name -h hostname


二、中止容器

docker stop CONTAINER ID


三、查看容器

docker ps –a -l


四、進入容器

docker exec | docker attach |nsenter


五、刪除容器

docker rm


若是但願批量刪除全部已經退出的容器,能夠執行docker rm -v $(docker ps -aq -f status=exited)


六、列出本機正在運行的容器

docker container ls


七、列出本機全部容器,包括終止運行的容器

docker container ls --all


八、強制終止容器

docker container kill [containID]


九、重啓容器

docker restart [containID]


說明:

a、容器可能會因某種錯誤而中止運行。對於服務類容器,咱們一般但願在這種狀況下容器可以自動重啓。啓動容器時設置 --restart 就能夠達到這個效果。

b、--restart=always 意味着不管容器因何種緣由退出(包括正常退出),就當即重啓。該參數的形式還能夠是 --restart=on-failure:3,意思是若是啓動進程退出代碼非0,則重啓容器,最多重啓3次。


3、Docker網絡訪問


一、隨機映射

docker run -P


二、指定映射

-p hostPort:containerPort

-p ip:hostPort:containerPort 

-p ip::containerPort

-p hostPort:containerPort:udp

-p 81:80 –p 443:443


數據集:

-v /data

-v src:dst


數據集容器:

--volumes-from


3、Dockerfile


* 基礎鏡像信息

* 維護者信息

* 鏡像操做指令

* 容器啓動時執行指令


FROM  這個鏡像的媽媽是誰?(指定基礎鏡像)

MAINTAINER 告訴別人,誰負責養它?(指定維護者信息)

RUN    你想讓它幹啥(在命令前面加上RUN便可)

ADD 給它點創業資金(COPY文件,會自動解壓)

WORKDIR 我是cd,今天剛化了妝(設置當前工做目錄)

VOLUME          給它一個存放行李的地方(設置卷,掛載主機目錄)

EXPOSE 它要打開的門是啥(指定對外的端口)

CMD             奔跑吧,兄弟!(指定容器啓動後的要乾的事情)


4、image文件


一、列出本機的全部image文件

docker image ls


二、刪除image文件

docker image rm [imageName] 


三、將image 文件從倉庫抓取到本地

docker image pull [imageName] 


四、爲本地的image標註用戶名和版本

docker image tag koa-demos:0.0.1 ruanyf/koa-demos:0.0.1


參考資料:

```

# This docker file uses the centos image

# VERSION 1

# Author: Jason Zhao

 

# Base image

FROM centos

 

# Maintainer

MAINTAINER shundong.zhao zhaoshundong@gmail.com

 

#Commands to update the image

ADD pcre-8.37.tar.gz /usr/local/src/

ADD nginx-1.9.3.tar.gz /usr/local/src/

 

RUN yum install -y wget gcc gcc-c++ openssl-devel make

RUN useradd -s /sbin/nologin -M www

WORKDIR /usr/local/src/nginx-1.9.3

RUN ./configure --prefix=/usr/local/nginx --user=www --group=www \

     --with-http_ssl_module --with-http_stub_status_module --with-file-aio \

     --with-http_dav_module --with-pcre=/usr/local/src/pcre-8.37 && make && make install

RUN echo "daemon off;" >> /usr/local/nginx/conf/nginx.conf

ENV PATH /usr/local/nginx/sbin:$PATH

 

EXPOSE 80

CMD ["nginx"]

```


5、其它經常使用的命令


一、啓動已經生成、已經中止運行的容器文件

docker container start


二、中止容器

docker container stop [containerID]


三、查看容器的日誌

docker container logs


四、進入容器

docker container exec -it [containerID] /bin/bash


五、拷貝容器中的文件到本機

docker container cp [containID]:[/path/to/file] .


六、拷貝文件到docker容器中

docker cp /etc/passwd [containID]:[/path/to/file]


七、查看docker網絡

docker network ls


八、用於顯示每一個容器各類資源的使用狀況

docker container stats


九、查看容器運行了哪些進程

docker container top [containerID] 


參考資料:

http://www.runoob.com/docker/docker-command-manual.html

https://www.cnblogs.com/anliven/p/6218741.html

相關文章
相關標籤/搜索