Docker常用命令(零)

2019-06-19  本文已影响0人  岑景

docker的安装以及镜像,容器,仓库的基本操作

docker的安装(centos7中可以直接yum安装)

    yum install –y docker

# 搜索镜像

docker search <image> # 在docker index中搜索image

    --automated=false 仅显示自动创建的镜像

    --no-trunc=false 输出信息不截断显示

    -s 0 指定仅显示评价为指定星级的镜像

# 下载镜像

docker pull <image> # 从docker registry server 中下拉image

还可通过指定标签下载某镜像

    docker pull [:TAG]

    docker pull centos:7

# 存出和载入镜像

    存出本地镜像文件为.tar

    docker save -o ubuntu_14.04.tar ubuntu:14.04

    导入镜像到本地镜像库

    docker load --input ubuntu_14.04.tar或者

    docker load < ubuntu_14.04.tar

# 上传镜像

    用户在dockerhub网站注册后,即可上传自制的镜像。

    docker push NAME[:TAG]

# 创建(使用镜像创建容器):

    首先得查看镜像的REPOSITORY和TAG

docker run -i -t REPOSITORY:TAG (等价于先执行docker create 再执行docker start 命令)

其中-t选项让docker分配一个伪终端并绑定到容器的标准输入上, -i则让容器的标准输入保持打开。若要在后台以守护态(daemonized)形式运行,可加参数-d

启动容器。  docker run -t -i nginx /bin/bash     #nginx为容器

exit退出容器

docker attach [container_id] #连接一个正在运行的container实例(即实例须为start状态,可以多个 窗口同时attach 一个container实例),但当某个窗口因命令阻塞时,其它窗口也无法执行了。

exec可直接在容器内运行的命令。docker exec -ti [container_id] /bin/bash

# 删除容器:

docker rm <container...> #:删除一个或多个container

docker rm `docker ps -a -q` #:删除所有的container

docker ps -a -q | xargs docker rm #:同上, 删除所有的container

docker -rm

    -f 强制中止并运行的容器

    -l 删除容器的连接,但保留容器

    -v 删除容器挂载的数据卷

# 修改容器:

docker commit <container> [repo:tag] # 将一个container固化为一个新的image,后面的repo:tag可选。

# 导入和导出容器:

    导出到一个文件,不管是否处于运行状态。

    docker export CONTAINER > test.tar

    导入为镜像:

cat test.tar | docker import - centos:latest

docker启动命令,docker重启命令,docker关闭命令

启动        systemctl start docker

守护进程重启   sudo systemctl daemon-reload

关闭docker服务   systemctl restart  docker

重启docker服务  sudo service docker restart

没有报错就说明关闭和重启成功!

docker start/stop/restart <container> #:开启/停止/重启container

停止所有的container,这样才能够删除其中的images: 

      docker stop $(docker ps -a -q)

docker ps -a -q   查看全部的容器id

     -a标志列出所有容器,-q标志只列出容器的ID,然后传递给rm命令

删除全部image的:  docker rmi $(docker images -q)

docker rmi <image ID>: # 删除一个或多个image

docker images         # 查看本地镜像dockerimages

docker start

# 启动一个已经停止的容器dockerstart 容器ID# 重启一个容器docker restart 容器ID

docker attach

# 进入一个运行中的容器dockerattach 容器ID

docker rmi 镜像名

# 删除所有镜像docker rmi $(docker images| grep -v RESPOSITORY |awk'{print $3}')

docker build

# 构建容器dockerbuild -t 镜像名称 .# 后面的. 指的是当前文件夹 (其实是Dockerfile存放的文件夹)# 建立映像文件。–rm 选项是告诉Docker,在构建完成后删除临时的Container,Dockerfile的每一行指令都会创建一个临时的Container,一般这些临时生成的Container是不需要的docker build --rm=true-t loen/lamp .

删除容器:docker -rm  CONTAINERID 

强制删除容器:docker -rm -f CONTAINERID 

不能够删除一个正在运行的容器,会报错。需要先停止容器。

删除镜像:docker -rmi  IMAGEID

强制删除镜像:docker -rmi -f  IMAGEID  

# 删除容器docker rm 容器ID# 删除所有容器docker rm $(docker ps-a)

docker history

# 查看历史dockerhistory镜像ID

docker export

# 导出容器dockerexport容器ID > xxx.tar

docker save???

# 把 mynewimage 镜像保存成 tar 文件dockersave myimage | bzip2 -9-c> /home/save.tar.bz2

docker load

# 加载 myimage 镜像bzip2-d-c < /home/save.tar.bz2 | docker load

sudo docker inspect 74eb50b00a3a        查看ip为74容器的详细信息

获取所有容器名称及其IP地址:

docker inspect -f '{{.Name}} - {{.NetworkSettings.IPAddress }}' $(docker ps -aq)

docker rename old_name new_name更改容器的名称????

docker info

显示 Docker 系统信息,包括镜像和容器数。?!!

上一篇下一篇

猜你喜欢

热点阅读