当前位置 博文首页 > 高级网络工程师的博客:Docker常用命令,很实用

    高级网络工程师的博客:Docker常用命令,很实用

    作者:[db:作者] 时间:2021-08-21 16:12

    一. 关于容器的命令

    1. 容器创建并运行
      命令【docker run】,语法如下:
      docker run [OPTIONS] IMAGE [COMMAND] [ARG…]

    常用可选参数OPTIONS说明:

    –d : 容器后台运行

    –p:指定端口映射

    –v:映射容器外部宿主主机磁盘

    –name:容器名称

    –privileged=true:获取正真的主机root权限

    注:还有很多不长用的参数,可以参考官方api,下面列举了一个创建并运行nginx的示例:

    docker run -di --name mynginx\

    -p 443:443
    -p 80:80
    –privileged=true
    -v /root/nginx/data:/usr/share/nginx/html:rw\

    -v /root/nginx/config/nginx.conf:/etc/nginx

    /nginx.conf/:rw\

    -v /root/nginx/logs:/var/log/nginx/:rw
    -v /root/nginx/ssl:/ssl
    -d nginx

    1. 容器停止

    命令【docker stop 容器名/容器ID】

    例如停止上述创建的容器

    docker stop mynginx

    1. 启动容器

    命令【docker start 容器名/容器ID】

    例如启动上述创建的容器

    docker start mynginx

    1. 重启容器,命令【docker restart 容器名/容器ID】

    例如重启上述创建的容器

    docker restart mynginx

    1. 删除容器

    命令【docker rm 容器名/容器ID】

    例如删除上述创建的容器

    docker rm mynginx

    1. 容器保存为镜像

    命令【docker commit 容器名/容器ID 新的镜像名称】

    例:将上述创建的容器保存为镜像

    docker commit mynginx nginx

    1. 列出所有容器列表

    命令【docker ps a】

    1. 列出运行中的容器列表

    命令【docker ps 】

    1. 进入到运行中的容器内部

    命令【docker exec -it 容器名/容器ID /bin/bash】或者【docker attach 容器名/容器ID】

    例:进入上述容器内部:

    #方式一#
    docker exec -it mynginx /bin/bash

    #方式二#
    docker attach mynginx

    二. 关于镜像的命令

    1. 查看镜像列表

    命令【docker images】

    1. 拉取镜像

    命令【docker pull 镜像名称:版本】

    1. 从本地上传镜像

    命令【docker push 镜像名称:版本】

    1. 在Docker Hub中查找镜像

    命令【docker search 镜像名称】

    1. 删除镜像

    命令【docker rmi 镜像名称/镜像ID】

    (注意:先删除该镜像的容器,才可以删除该镜像)

    1. 导出镜像

    命令【docker save -o 镜像快照名称 镜像名称】

    例如镜像nginx,导出示例:

    docker save -o nginx.tar nginx:latest
    #或者也可通过如下方式
    docker save > nginx.tar nginx:latest

    1. 导入镜像

    命令【docker load -i 镜像快照名称 】

    例如上述导出的镜像,再把它导入示例:

    docker load -i nginx.tar
    #或者也可通过如下方式
    docker load < nginx.tar

    三. 其它

    1. 启动命令:

    systemctl start docker

    1. 守护进程重启命令:

    sudo systemctl daemon-reload

    1. 重启docker服务命令:

    systemctl restart docker 或者 sudo service docker restart

    1. 关闭docker服务命令:

    docker systemctl stop docker 或者 docker service docker stop

    cs