• Docker常用命令


    原文链接:https://www.zhoubotong.site/post/68.html

    Docker常用命令

    删除安装包:

    sudo apt-get purge docker-ce
    

    删除镜像、容器、配置文件等内容:

    sudo rm -rf /var/lib/docker
    

    清理掉所有处于终止状态的容器

    sudo docker container prune
    

    使用 docker port bf08bxxx(容器id) 或 docker port namexxx(容器名称) 来查看容器端口的映射情况

    使用 docker logs [ID或者名字] 可以查看容器内部的标准输出。

    sudo docker logs -f bf08bxxx
    

    -f:  让 docker logs 像使用 tail -f 一样来输出容器内部的标准输出。\

    使用 docker top 来查看容器内部运行的进程

    sudo docker top bf08bxxx(或容器名称)
    

    使用 docker inspect 来查看 Docker 的底层信息。它会返回一个 JSON 文件记录着 Docker 容器的配置和状态信息。

    sudo docker inspect bf08bxxx(或容器名称)
    

    使用 docker stop/start  bf08bxxx 停止/启动容器

    sudo docker ps -l #查询最后一次创建的容器
    

    使用 docker rm 命令来删除不需要的容器

    sudo docker rm wizardly_chandrasekhar
    

    删除容器时,容器必须是停止状态,否则会报错。

    使用 docker rmi 命令删除镜像,比如我们删除 ubutun 镜像:

    sudo docker rmi ubutun
    

    镜像更新提交

    当我们从 docker 镜像仓库中下载的镜像不能满足我们的需求时,我们可以通过以下两种方式对镜像进行更改。

    1、从已经创建的容器中更新镜像,并且提交这个镜像

    2、使用 Dockerfile 指令来创建一个新的镜像

    更新镜像之前,我们需要使用镜像来创建一个容器。

    uos@root:~docker run -t -i uos:15.10 /bin/bash
    uos@e218ed11ee1:/#
    

    在运行的容器内使用 apt-get update 命令进行更新。

    在完成操作之后,输入 exit 命令来退出这个容器。

    此时 ID 为 e218ed11ee1 的容器,是按我的需求更改的容器。可以通过命令 docker commit 来提交容器副本。

    uos@root:~docker commit -m="uos update" -a="zhoubotong" e218ed11ee1 zhoubotong/uos:v2
    

    各个参数说明:

    • -m: 提交的描述信息
    • -a: 指定镜像作者
    • e218ed11ee1: 容器 ID
    • zhoubotong/uos:v2: 指定要创建的目标镜像名

    我们可以使用 docker images 命令来查看我们的新镜像 zhoubotong/uos:v2, 这里不再阐述。

    镜像构建

    使用命令 docker build , 从零开始来创建一个新的镜像。我们需要创建一个 Dockerfile 文件,其中包含一组指令来告诉 Docker 如何构建我们的镜像。

    文件不存在请新建:touch Dockerfile

    uos@root:~$ cat Dockerfile  
    FROM    centos:6.7 
    MAINTAINER      Fisher "zpt@uniontech.com" 
    RUN     /bin/echo 'root:123456' |chpasswd 
    RUN     useradd uos
    RUN     /bin/echo 'uos:123456' |chpasswd 
    RUN     /bin/echo -e "LANG="en_US.UTF-8"" >/etc/default/local 
    EXPOSE  22 
    EXPOSE  80 
    CMD     /usr/sbin/sshd -D
    

    每一个指令都会在镜像上创建一个新的层,每一个指令的前缀都必须是大写的。

    第一条FROM,指定使用哪个镜像源

    RUN 指令告诉docker 在镜像内执行命令,安装了什么。。。

    然后,我们使用 Dockerfile 文件,通过 docker build 命令来构建一个镜像。

    uos@root:~docker build -t uos/centos:6.7 .
    

    参数说明:

    • -t :指定要创建的目标镜像名
    • . :Dockerfile 文件所在目录,也可以指定Dockerfile 的绝对路径

    完后可以使用docker images 查看创建的镜像已经在列表中存在。

    镜像标签设置

    使用 docker tag 命令,为镜像添加一个新的标签。

    uos@root:~docker tag e218ed11ee1 zhoubotong/centos:dev
    

    docker tag 镜像ID,这里是 e218ed11ee1,用户名称、镜像源名(repository name)和新的标签名(tag)。

    使用 docker images 命令可以看到,ID为e218ed11ee1的镜像多了一个标签。

    uos@root:~docker images
    REPOSITORY              TAG                 IMAGE ID            CREATED             SIZE
    zhoubotong/centos       6.7                 e218ed11ee1        1 hours ago         190.6 MB
    zhoubotong/centos       dev                 e218ed11ee1        1 hours ago         190.6 MB
    

    上面大致就介绍这么多了。

  • 相关阅读:
    2022 IDEA 在包下再建立多个包的做法
    字节跳动|后端|提前批|一面+二面+三面+HR 面
    Element Plus 全球化配置
    HttpUtils工具类
    银河麒麟4.0Kylin桌面版安装Java环境
    Bee Mobile组件库重磅升级
    教你m4a怎么转换成mp3
    华为数通方向HCIP-DataCom H12-821题库(多选题:241-260)
    【27. 表达式求值(中缀表达式)】
    Qt5.9.9交叉编译(带sqlite3、OpenSSL)
  • 原文地址:https://www.cnblogs.com/phpper/p/16584906.html