1. # 查看docker容器是否有运行中
  2. > docker ps
  3. > CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
  4. > 560bb3a0cbed ubuntu:15.10 "/bin/sh -c 'while t…" 6 seconds ago Up 5 seconds cool_allen

输出详情介绍:
CONTAINER ID: 容器 ID。
IMAGE: 使用的镜像。
COMMAND: 启动容器时运行的命令。
CREATED: 容器的创建时间。
STATUS: 容器状态。
状态有7种:

  • created(已创建)
  • restarting(重启中)
  • running 或 Up(运行中)
  • removing(迁移中)
  • paused(暂停)
  • exited(停止)
  • dead(死亡)

PORTS: 容器的端口信息和使用的连接类型(tcp\udp)。
NAMES: 自动分配的容器名称。

  1. # 查看容器标注输出内容 参数:容器ID
  2. > docker logs 560bb3a0cbed
  1. # 停止运行中的容器
  2. > docker stop 560bb3a0cbed
  1. # 拉取容器镜像到本地
  2. > docker pull ubuntu
  3. # 以命令行模式进入容器
  4. > docker run -it ubuntu /bin/bash
  5. # 退出容器的终端
  6. > exit

参数说明:

  • -i: 交互式操作。
  • -t: 终端。
  • ubuntu: ubuntu 镜像。
  • /bin/bash:放在镜像名后的是命令,这里我们希望有个交互式 Shell,因此用的是 /bin/bash
  1. # 查看所有已创建的容器
  2. > docker ps -a
  3. # 启动已存在的容器
  4. > docker start b750bbbcfd88
  5. # 后台运行容器(加参数-d)
  6. > docker run -itd --name ubuntu-test ubuntu /bin/bash
  7. # 重启已停止的容器
  8. > docker restart <容器 ID>

进入容器

在使用 -d 参数时,容器启动后会进入后台。此时想要进入容器,可以通过以下指令进入:

  • docker attach
  • docker exec:推荐使用 docker exec 命令,因为此退出容器终端,不会导致容器的停止。
  1. # 导出容器
  2. > docker export 1e560fca3906 > ubuntu.tar
  3. # 导入容器快照
  4. > cat docker/ubuntu.tar | docker import - test/ubuntu:v1
  5. # 基于URL或者目录导入容器快照
  6. > docker import http://example.com/exampleimage.tgz example/imagerepo
  7. # 删除容器
  8. > docker rm -f 1e560fca3906
  9. # 清理所有停止状态的容器
  10. > docker container prune

挂载目录
  1. # 基于Nginx镜像,创建一个名字为m_container的容器,并将宿主机的~/mydir/tmp/目录通过-v参数挂载到容器的/tmp/目录,可以实现宿主机与容器共享目录
  2. docker run -d -it --name m_container -v ~/mydir/tmp/:/tmp/ nginx
  3. # 将宿主机的文件挂载到容器
  4. docker run -d -it --name m_container -v ~/mydir/tmp/text.txt:/tmp/text.txt nginx

查看容器IP
  1. docker inspect php | grep "IPAddress"

杀死所有正在运行的容器
  1. docker kill $(docker ps -a -q)

删除所有已经停止的容器
  1. docker rm $(docker ps -a -q)

删除所有未打 dangling 标签的镜
  1. docker rmi $(docker images -q -f dangling=true)

删除所有镜像
  1. docker rmi $(docker images -q

强制删除无法删除的镜像
  1. docker rmi -f <IMAGE_ID>
  2. docker rmi -f $(docker images -q)
  1. # 启动指定容器,进入命令模式
  2. docker exec -it main_mongodb_1 bash
  3. # 宿主机中,复制宿主机上的xaa.json文件到容器的指定目录
  4. docker cp /root/geo/xaa.json main_mongodb_1 /home/geo/
  5. # 从宿主机上导入mongoDB的json文件,以JSONArray格式导入到main_mongodb_1容器的test库的geo集合中
  6. docker exec main_mongodb_1 mongoimport -d test -c geo --jsonArray --file /home/geo/poi_001.json --batchSize=1
  7. # MongoDB导入jsonArray文件到指定集合
  8. mongoimport -d test -c geo --jsonArray --file /root/geo/geo.json --batchSize=1
  1. 1.安装pip/pip3
  2. yum install python-pip / apt install python3-pip
  3. 2.安装runlike
  4. pip/pip3 install runlike
  5. 3.查看容器创建信息
  6. runlike 容器名称或ID