Docker 镜像常用命令

搜索镜像

docker search *image_name*
docker search java

下载镜像

docker pull *image_name*

- docker pull java:8
- docker pull macro/eureka-server:0.0.1

列出镜像

docker images

删除镜像


docker rmi *image_name*

docker image rm *image_name*

- docker rmi java
- docker rmi -f java 
- docker rmi -f $(docker images)

导出docker镜像

docker save *image_name* > /save/image/path/name.tar.gz

导出docker镜像

docker save *image_name* > /save/image/path/name.tar.gz

导入docker镜像

docker load < /save/image/path/name.tar.gz

docker镜像打标签时的注意事项


docker tag bac2 gandoufu/centos7-wget:latest
# bac2 是镜像的id
# gandoufu/centos7-wget 镜像的名称必须是自己的id名称/镜像名称
# latest 默认版本号,可以不用加

Docker 容器常用命令

新建并启动容器

docker run -d -p 91:80 nginx

列出容器

docker ps

停止容器

docker stop $ContainerId

强制停止容器

docker kill $ContainerId

启动已停止的容器

docker start $ContainerId

进入容器

- docker inspect --format "{{.State.Pid}}" $ContainerId
- nsenter --target "$pid" --mount --uts --ipc --net --pid

删除容器

- docker rm $ContainerId
- docker rm -f $(docker ps -a -q)

查看启动错误日志

docker logs $ContainerIdName(或者$ContainerId)

查看容器的IP地址(172.17.0.*)

docker inspect --format '{{ .NetworkSettings.IPAddress }}' $ContainerId

同步宿主机时间到容器

docker cp /etc/localtime $ContainerName:/etc/

在宿主机查看docker使用cpu、内存、网络、io情况

- 查看指定容器情况:docker stats $ContainerName
- 查看所有容器情况:docker stats -a

进入docker内部的bash

docker exec -it $ContainerName /bin/bash

docker run

docker run [OPTIONS] IMAGE根据镜像新建并启动容器。IMAGE是镜像ID或镜像名称
OPTIONS说明:
 --name=“容器新名字”:为容器指定一个名称
 -d:后台运行容器,并返回容器ID,也即启动守护式容器
 -i:以交互模式运行容器,通常与-t同时使用
 -t:为容器重新分配一个伪输入终端,通常与-i同时使用
 -P:随机端口映射
 -p:指定端口映射,有以下四种格式:
  ip:hostPort:containerPort
  ip::containerPort
  hostPort:containerPort
  containerPort

参数说明:

  • i 进入交互模式
  • t 创建一个虚拟终端
  • d 后台运行
  • rm 退出后自动删除容器
  • name 创建的容器使用自定义的名字
  • 注:i和t参数一起指定 (-it),在实际操作时发现只指定i参数时,attach到实例时会出现卡死的情况。

常用命令

- 构建、创建、启动相关容器:docker-compose up
- 列出所有容器:docker-compose ps
- 删除指定服务的容器:docker-compose rm eureka
- 对容器进行动态扩容:docker-compose scale eureka=3
- 停止相关容器:docker-compose stop eureka
- 启动相关容器:docker-compose start eureka