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