docker基础命令笔记

110 阅读3分钟

1. docker的安装

docs.docker.com/engine/inst…

2. docker镜像

2.1 镜像查询

// docker search <镜像名>

docker search ubuntu

image.png

2.2 镜像拉取

docker pull <镜像名>:<版本>
docker pull ubuntu //拉取最新版
docker pull ubuntu:18.04 //拉取指定版本

2.3 镜像查看

docker images //查看已安装的镜像列表
docker images ubtntu

image.png

3. docker容器

3.1 容器启动

docker run --name my-ubuntu ubuntu //启动一个ubuntu容器,并给其命名my-ubuntu, 这样启动没什么乱用,启动后会立即被关闭,因为没有对外暴露任何使用方式,启动着也没什么用处,不如死了算了

docker run -it --name my-ubuntu ubuntu bash //启动后并打开一个终端,用于后续输入命令发送给ubuntu

docker run -d -p 80:80 --name nginx_container nginx:latest //后台启动一个nginx,并将宿主机的80端口映射到docker容器nginx的80端口

参数说明

    --name 为容器指定名称
    -d 后台运行
    -i 以交互模式运行容器
    -t 为容器分配一个伪输入终端
    -P 随机端口映射
    -p 指定端口映射

image.png

3.2 容器终端退出

exit //当我们执行docker run -it 进入到docker容器的终端窗口时,退出后容器随即也会关闭

crtl + p + q //当我们执行docker run -it 进入到docker容器的终端窗口时,仅退出终端,容器不会关闭

3.3 容器停止

docker stop <容器名或容器id>
docker stop ubuntu
docker kill ubuntu //强制停止容器

3.4 容器重启

当需要重新启动已经停止的容器时使用

docker start <容器名或容器id>
docker start ubuntu

3.5 容器重连

docker exec -it <容器名或容器id> /bin/bash

docker exec -it ubuntu bash //重新以终端方式连接ubuntu,/bin/bash或bash都可以
docker attach <容器名或容器id>
docker attach -it ubuntu bash //重新以终端方式连接ubuntu,/bin/bash或bash都可以

两者退出时有一定区别

  • exec启动后,exit退出,容器不会关闭(推荐)
  • attach启动后,exit退出,容器会关闭

3.6 容器查看

docker ps //查看正在运行的容器
docker ps -a //查看所有容器,包含运行的和非运行的
docker ps -n 2 //显示最新2条
docker ps -a -q //返回所有容器id

参数说明

-a 列出当前所有正在运行的容器 + 历史上运行过的容器
-l 显示最近创建过的容器
-n 显示最近n个创建的容器
-q 静默模式,只显示容器编号

image.png

3.7 容器删除

docker rm <容器名或者容器id>
docker rm ubuntu //删除已关闭的容器
docker rm -f ubuntu //可以删除正在运行的容器,请慎重操作
docker rm -f $(docker ps -a -q) //清空所有容器,包含运行和非运行的容器

docker rmi <镜像名或镜像id>

3.8 容器备份资料

将容器中重要的资料备份到宿主机

docker cp <容器id>:<容器内的路径> <目标主机路径>
docker cp f5fa58c8c1c2:/usr/local/mycptest/container.txt /tmp/c.txt //linxu操作系统
docker cp f5fa58c8c1c2:/usr/local/mycptest/container.txt D:\   //windows操作系统l's

3.9 容器的导出和导入

将整个容器进行备份

docker export ddb1ae909a66 > ub.tar //linux会存储到当前账号工作目录

导入,但是报错了

cat .\ub.tar | docker import - leehoo/ubuntu:v1.0

Error response from daemon: Error processing tar file(exit status 1): archive/tar: invalid tar header

4. 手册

docker --help //命令手册
docker run --help //run命令手册