概述
这里记录一些docker、k8s的一些常用的命令,仅在忘记命令时,自己拿来翻查一下
docker、 kubernets安装
https://kubernetes.io/docs/setup/independent/install-kubeadm/
docker 基本命令
1、列出镜像
docker images
选项:
-a, --all=true|false: 列出所有的镜像文件(包括临时文件), 默认时false
--digests=true|false: 列出镜像的数字摘要值, 默认为否
-f, --filter=[] : 过滤列出的镜像,如dangling=true 只显示没有被使用的镜像;也可指定带有特定标注的镜像等。
--no-trunc=true|false: 只对输出结果中太长的部分是否进行截断,如镜像的ID信息, 默认为是
-q, --quiet=true|false: 仅输出ID信息, 默认为否
2、添加镜像标签
docker tag ubuntu:latest myubuntu:latest
3、查看详细信息
docker inspect ubuntu:14.04
4、删除镜像
docker rmi myubuntu:latest
5、创建镜像
5.1 基于已有镜像的容器创建
先启动一个镜像,并对其进行修改操作,之后退出,再执行以下命令(e9f03aea4ce6 是原容器ID):
docker commit -m "touch new file" -a "yuminghao" e9f03aea4ce6 test:0.1
选项:
-m, --message="": 提交信息
-a, --author="": 作者信息
-c, --change=[]: 提交时执行Dockerfile 指令。 包括: CMD| ENTRYPOINT| ENV| EXPOSE| LABEL| ONBULLD | USER| VOLUME|WORKDIR 等
-p, --pause=true: 提交时可以使用ID 或名称来指定容器。
5.2 基于本地模板导入
cat ubuntu-14.04-x86_64-minimal.tag.gz | docker import - ubuntu:14.04
5.3 基于dockerfile
6、导出镜像到本地文件(可以复制该文件将镜像分享给他人)
docker save -o ubuntu_14.04.tar ubuntu:14.04
7、从本地文件载入镜像
docker load --input ubuntu_14.04.tar
或
docker load < ubuntu_14.04.tar
8、 上传镜像到远程仓库, 默认上传到 Docker Hub 官方仓库(需要登陆)
命令格式:
docker push NAME[:TAG] | [REGISTRY_HOST[:REGISTRY_PORT]/]NAME[:TAG]
先打tag
docker tag test:latest user/test:latest
docker push user/test:latest
docker 容器操作
1、创建容器(create)
docker create -it ubuntu:14.04
2、启动一个已经创建的容器(start)
docker start [容器id]
3、新建并启动容器(run)
docker run ubuntu /bin/echo 'hello world'
4、终止容器
docker stop [容器id]
5、进入容器
在使用 -d 参数时, 容器启动后会进入后台,这个时候如果需要进入容器进行操作, 有多种方法,包括官方的attach、exec命令及第三方的nsenter工具等。
5.1 attch
docker attch [容器id]
5.2 exec (推荐使用exec代替attch)
docker exec it [容器id] /bin/bash
5.3 nsenter 工具
查找容器进程的pid
docker inspect --format "{{ .State.Pid }}" [容器id]
连接容器
sudo nsenter --target [pid] --mount --uts --ipc --net --pid
6、删除容器
docker rm
选项:
-f, --force=false: 是否强行终止并删除一个运行中的容器;
-l, --link=false; 删除容器的连接,但保留容器;
-v, --volumes=false; 删除容器挂载的数据卷。