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

相关文章
相关标签/搜索