0
点赞
收藏
分享

微信扫一扫

docker常用命令总结

醉东枫 2022-03-11 阅读 53

# Docker的常用命令
* docker version #查看docker的版本信息
* docker info #显示docker的系统信息,包括镜像和容器的数量
* docker xxx -- help #帮助命令,可以显示docker的所有命令

---
# 镜像命令
* docker images #查看所有本地的主机的镜像
    * REPOSITORY :镜像的仓库源
    * TAG         :镜像的标签
    * IMAGE ID     :镜像的ID
    * CERATED     :镜像的创建时间
    * SIZE         :镜像的大小
    * docker  images  [可选项]
        * -a,--all      # 列出所有镜像
        * -q,--quiet    # 只显示镜像的ID
* docker search 镜像名 # 搜索镜像
    * 可选项,通过搜过过滤 --filter-STARS=3000 #搜索出来的镜像修饰STARS大于3000的
* 下载镜像 docker pull 镜像名 [:tag] # 下载镜像,默认是下载最新版 latest
* 删除镜像
    * 删除镜像 (  -f就是全部删除,后面的条件是根据什么来删除,这里是根据容器的id进行删除)
        * docker  rmi -f  容器id   
    * 删除多个镜像
        * docker  rmi -f  容器id  容器id 容器id 
    * 删除所有的镜像 
        * docker  rmi -f $(docker images -aq)
        
---

# 容器命令
    说明:我们有了镜像才可以去创建容器
* 下载镜像
    * docker pull xxx (xxx为镜像名称)
        * 例如下载centos镜像
            * docker pull centos
* 新建容器并启动
    * docker run [可选参数] image
    * 参数说明:
        * --name="Name" : 容器名字 ,tomcat01、tomcat02,用来区分容器
        * -d :后台方式运行
        * -it:使用交互方式运行,进入容器查看内容
        * -p :指定容器的端口   -p  8080:8080
            * -p     ip:主机端口:容器端口  
            * -p     主机端口:容器端口(常用方式)
            * -p     容器端口  
            * -p : 随机指定端口 
* 测试,启动并进入容器 
    * docker run -it xxx /bin/bash #启动容器(xxx为容器名称)
        * 例如启动进入centos镜像
            * docker run -it centos /bin/bash 
    * 进入容器内部 sudo docker exec -it 容器id  /bin/bash 
* 列出所有运行中的容器
    * docker ps [可选参数] # 列出当前正在运行的程序
        * -a #列出当前正在运行的容器+带出历史运行过的容器
        * -n=?      #显示最近创建的容器
        * -p            #只显示容器的编号
* 退出容器
    * exit  # 直接停止容器并退出
    * Ctrl + P + Q # 容器不停止退出
* 删除容器
    * docker rm  容器id # 删除指定的容器,不能删除正在运行的容器
    * docker rm -f $(docker ps -aq)       # 删除所有的容器
    * docker ps -a -q|xargs docker rm     # 删除所有的容器
* 启动和容器的操作
    * docker start 容器id # 启动容器
    * dock er restart 容器id # 重启容器
    * docker stop 容器id # 停止正在运行的容器
    * docker kill 容器id # 强制停止当前正在运行的容器

# 常用的其他命令
* 后台启动容器
    * docker run -d 镜像名
    * 例如后台启动centos镜像
        * docker run -d centos
        * 常见的坑:docker容器使用后台运行的时候就必须要一个前台线程,不然docker发现没有应用就会自动停止
* 查看系统CPU状态
    * docker stats [容器id]
* 查看容器中进程信息
    * docker top 容器id
* 查看镜像中的元数据
    * docker inspect 容器id
* systemctl start docker 启动
* systemctl daemon-reload 守护进程重启
* systemctl restart  docker 重启docker服务
* systemctl stop docker 关闭 


# 将镜像打包成tar包
* docker save 镜像名称(或镜像id) > 路径/路径/名字.tar

# 将容器生成新的镜像
* docker commit [containerid] [new_imagename] (容器必须正在运行)

# tar包生成镜像
* docker load -i 名字.tar

# 镜像更名
* docker tag 镜像id 名称:tag

# docker-compose 安装
* sudo curl -L https://github.com/docker/compose/releases/download/1.21.2/docker-compose-$(uname -s)-$(uname -m) -o /usr/local/bin/docker-compose
* sudo chmod +x /usr/local/bin/docker-compose
* 查看版本 docker-compose --version

# 根据Dockerfile来创建镜像
* docker build -t  镜像名称 路径

# 容器里面拷文件到宿主机
*  docker cp 容器名:要拷贝的文件在容器里面的路径 要拷贝到宿主机的相应路径 (宿主机里面执行)

# 从宿主机拷文件到容器里面
* docker cp 要拷贝的文件路径  :要拷贝到容器里面对应的路径(宿主机里面执行)

举报

相关推荐

0 条评论