02_docker容器命令

Docker容器命令

1. 新建并启动容器

命令格式:docker run [参数] IMAGE [COMMAND] [ARG...] # 其中 IMAGE为: 镜像[:TAG]或镜像id

参数: 说明,有些参数是一个- , 有些参数是两个--

  • --name:指定容器名字
  • -i: 以交互模式运行容器,通常与 -t 同时使用
  • -t: 为容器重新分配一个伪输入终端,通常与-i 同时使用
  • -d: 后台运行容器,并返回容器ID, 即启动守护式容器
  • -p: 指定端口映射, 有以下四种格式:
    • ip:hostPort:containerPort
    • ip::containerPort
    • hostPort:containerPort
    • containerPort
  1. 以交互式的方式运行
sudo docker run -it centos
docker run -it --name long_centos  centos

  1. 以后台守护进程的方式运行

    docker run -d 容器名

2. 查看容器

命令格式: docker ps [参数]

参数:

  • -a: 列出所有容器(正在运行的和已经停止运行了的)
  • -l: 显示最近创建的容器
  • -q: 只显示容器编号 (即:CONTAINER ID)
  • --no-trunc : 不截断输出
docker ps    # 显示正在运行的容器
docker ps -a   # 显示所有容器,包括停止运行的容器
docker ps -l   # 显示最近创建的容器
docker ps -q   # 显示正在运行的容器的编号
docker ps -aq   # 显示所有容器的编号
docker ps --no-trunc  

3. 退出容器

  1. exit ---> 退出并停止容器
  2. ctrl + p + q 容器不停止退出

4. 启动容器

命令格式:docker start 容器id或者容器名

5. 重启容器

命令格式: docker restart 容器id或者容器名

6. 停止容器

命令: docker stop 容器id或者容器名 # 相当于关机

7. 强制停止容器

命令: docker kill 容器id或容器名 # 相当于直接拨电源

8. 删除已经停止的容器

docker rm 容器id # 可以带上个参数 -f,把正在运行的容器也删除

docker rm 容器id    # 删除单个
docker rm 容器id [容器id 容器id ...]

# 删除所有容器
docker rm -f $(docker ps -aq)
docker ps -aq | xargs docker rm

9. 查看容器日志

docker logs [参数] 容器id

参数:

  • -t : 加入时间戳
  • -f : 跟随最新的日志打印
  • --tail: 数字,显示最后多少条
docker logs -f -t --tail 容器id
docker logs 

10. 查看容器内运行的进程

docker top 容器id

11. 查看容器内部细节

docker inspect 容器id

12. 进入正在运行的容器并以命令行交互

docker exec -it 容器id /bin/bash
docker attach 容器id

# attach 与 exec 的区别
attach:直接进入容器启动命令的终端,不会启动新的进程
exec: 是在容器中打开新的终端,并且可以启动新的进程

13. 从容器内拷贝文件到主机上

docker cp 容器id:容器内路径 目的主机路径

猜你喜欢

转载自www.cnblogs.com/nichengshishaonian/p/11548760.html