Docker 命令集

2018-10-26  本文已影响0人  元瑞科技

寻找网络镜像命令

docker search centos

root@test ~]# docker search centos

名字                                            描述                                            下载次数  是否官方  是否是Dockerfile构建的

INDEX      NAME                                            DESCRIPTION                                    STARS    OFFICIAL  AUTOMAT

docker.io  docker.io/centos                                The official build of CentOS.                  3301      [OK]    

下载镜像

docker pull centos

查看镜像

docker images

 删除镜像

 docker rmi


容器命令

启动容器

docker run --name -h hostname

启动容器2

docker start CONTAINER ID

停止容器

docker stop CONTAINER ID

查看容器

docker ps -a

进入容器

docker exec | docker attach

删除容器

docker rm


进入后台运行容器

docker attach 68e5c66ee5c9        退出自动停止运行容器

进入容器

docker run --name mydocker -it docker.io/centos /bin/bash

        -d        进入后台运行

        --run    运行

        --name 指定名字

        -i        输入终端打开

        -t        开一个伪终端

进入容器不退出

1、进入容器

docker run --name mydocker -it docker.io/centos /bin/bash

2、退出

3、启动容器

docker ps -a查询ID号

docker start ID号

4、获取Pid号

docker inspect --format "{{.State.Pid}}" 68e5c66ee5c9

5、进入容器而不退出

nsenter --target 19205 --mount --uts --ipc --net --pid    退出不停止运行容器

如果没有这个命令,需要安装util-linux包    nsenter

6、懒人写法

nsenter --target `docker inspect --format "{{.State.Pid}}" ID` --mount --uts --ipc --net --pid  

docker 网络访问

docker run -P

        -P    随机映射

        -p    hostport:containerPort

        -p    ip:hostPort:containerPort

        -p  ip::containerPort

        -p  hostPort:containerPort

        -p  hostPort:containerPort

数据卷管理

    docker

        -v /data

        -v /src:/dsrc

        -v /src:/src:ro


容器的制作

docker commit -m "my nginx" f443e801f545 shijia/my-nginx:v1

Docker file 的方式构建docker镜像

    FROM        他的妈妈是谁(基础镜像)

    MAINTAINER    告诉别人,你创造了他(维护者信息)

    RUN            你想让他干啥(把命令前面加上RUN)

    ADD        相当于cp命令(COPY文件,会自动解压)

    WORKDIR        相当于cd命令(当前工作目录)

    VOLUME        给我一个放行李的地方(目录挂载)

    EXPOSE        我要打开的门是啥(端口)

    RUN            奔跑吧,兄弟!(进程要一直运行下去)

    Docker 案例

    vim /opt/docker-file/nginx/Dockerfile

    # This is My first Dockerfile

    # Version 1.0

    # Author : Shijia Zhang

    #Base images

    FROM centos

    #MAINTAINER

    MAINTAINER ShiJia Zhang

    #ADD

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

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

    #RUN

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

    RUN useradd -s /sbin/nologin -M www

    #WORKDIR

    WORKDIR /usr/local/src/nginx-1.9.3

    #RUN

    RUN ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_ssl_module --with-http_stub_status_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"]

运行Dockerfile

    docker build -t nginx-file:v1 /opt/docker-file/nginx/

其他命令

    docker run -it --rm stree --cpu 1

    --rm    容器运行完即可删除

    --cpu    指定分多少颗CPU

上一篇 下一篇

猜你喜欢

热点阅读