(三)Docker 命令

252 阅读1分钟

查看信息

# 查看信息
docker info

# 查看版本
docker version

列出镜像

# 列出所有镜像
docker images

创建镜像

# 实例

# 使用当前目录的 Dockerfile 创建镜像,标签为 runoob/ubuntu:v1。

docker build -t runoob/ubuntu:v1 . 

# 使用URL github.com/creack/docker-firefox 的 Dockerfile 创建镜像。

docker build github.com/creack/docker-firefox

# 也可以通过 -f Dockerfile 文件的位置:

$ docker build -f /path/to/a/Dockerfile .

# 

docker build -t 192.168.1.165:5000/demo2:v1 .

拉取镜像

# 后跟镜像仓库名称,如果要指定某个版本,可以带上tag。
docker pull <repo>[:tag]

# 示例
docker pull jenkins/jenkins:latest

删除镜像

# 可以根据镜像ID,或者镜像仓库名称进行删除。
docker rmi <IMAGE ID>/<repo>

# 示例
docker rmi 192.168.1.100/mydemo

清空none镜像

docker images | grep none | awk '{print $3}' | xargs docker rmi

打标镜像

# 可以将此操作与Git打标进行类比,相当于是release一个可用的镜像版本。
docker tag <repo> <new_repo>[:tag]

# 示例
docker tag mydemo 192.168.1.100/mydemo

推送镜像

# 同样是可以借鉴Git领域的push操作,将打包好的镜像推送给远程仓库(即为Docker Registry)。
docker push <new_repo>[:tag]

# 示例
docker push 192.168.1.100/mydemo

启动容器

# 示例
docker run -d -p 192.168.1.100:5000:5000 -v /var/jenkins_home:/varjenkins_home --privileged=true registry

# 参数介绍
-d 后台启动
-p 映射端口(ip:外部端口:内部端口)
-v 挂载目录
--privileged 让root拥有真正的root
registry 镜像名称

停止容器

docker stop <容器id>

重启容器

docker restart <容器id>

删除容器

docker rm <容器id>

查看容器

# 查看运行中的容器
docker ps

# 查看所有容器
docker ps -a

查看容器日志

docker logs -f <容器id>

# 示例
docker logs -f mydemo

# 查看docker最后10行日志
docker logs -f -t --tail 10 mydemo

进入容器

# 进入容器
docker exec -it mydemo /bin/bash

# 进入容器并支持中文输入
docker exec -it mysql5.7.001 env LANG=C.UTF-8 /bin/bash

复制文件

docker cp host_path containerID:container_path

# 复制文件到镜像
docker cp /usr/bin/vi f16:/bin/.

# 复制镜像中的文件
docker cp f16:/bin/vi .