内容简介:听说好看的人才能点
序章
我,一位土生土长于 口袋大陆 的平凡人,本应按部就班,过着朝九晚五的生活,奈何命本不凡。
在少年时偶得一本奇书《Docker 宝典》,后闲来无事,开始翻看,痴迷于其中。
从此,我踏上了修炼 Docker 的不归路,开启了 996 的生活。
这本《我的 Docker 江湖》是我的笔记。
接下来的故事我将带你一起,见证这一路的修炼过程。
少侠,我们开始吧。
缘起
时间:很久很久很久以前…
地点:口袋大陆
怪老头:啊,靓仔,靓仔,别走啊,不得了,不得了啊!
我:怎么?
怪老头:你有道灵光从天灵盖喷出来,你知道吗?
年纪轻轻的,就有一身横练的筋骨,简直是百年一见的编程奇材。
如果有一天,让你打通任督二脉…那还不飞龙上天啊!
怪老头:正所谓:
我不入地狱,谁入地狱,警恶惩奸,维护世界和平这个任务,就交给你了,好吗?
怪老头:好的,好的,好的
怪老头:这本 《Docker 宝典》 是无价之宝,我看与你有缘,就免费传授给你吧!
我:这是啥?(先收了再说)
…
简介
初入 Docker 江湖 ,我将赠与你一张命令图谱。
当你在修炼中走火入魔时,可根据此图谱,找到正确的解法。
其中每一命令都有更深入的招式,我将会在后续的实践中,一一传授。
目录
Image 之'CRUD' 从 Dockerfile 创建镜像 根据容器的更改创建新镜像 查看镜像列表 查看镜像历史 添加镜像标签 删除镜像 Container 之 'CRUD' 创建一个新的容器 创建新的容器并执行命令 进入容器 查看容器列表 查看容器详情 查看容器内运行的进程 查看容器端口映射 查看容器资源占用信息 查看容器日志 查看服务器实时事件 更新容器配置 更新容器名称 删除容器 Image 保存/加载 保存镜像 加载镜像 Container 生命周期 启动容器 停止容器 暂停/恢复 重启容器 杀掉运行中的容器 等待容器退出 Container 导入/导出 导出容器 导入容器 Container 与本机交互 复制文件/文件夹(本机 ⇆ 容器) 检查容器内文件/文件夹的更改 镜像仓库 从 Docker Hub 搜索镜像 登录/退出 Docker 仓库 从镜像仓库拉取 & 更新/推送指定镜像 信息/版本 查看 Docker 系统范围信息 查看 Docker 版本信息
Image 之'CRUD'
从 Dockerfile 创建镜像
Usage: docker build [OPTIONS] PATH | URL | - Example: docker build -t test/ubuntu:v1 .
根据容器的更改创建新镜像
Usage: docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]] Example: docker commit -m "test" bd3fa0536c33 ubuntu:test
查看镜像列表
Usage: docker images [OPTIONS] [REPOSITORY[:TAG]] Example: docker images
查看镜像历史
Usage: docker history [OPTIONS] IMAGE Example: docker history ubuntu
添加镜像标签
添加的 tag 可理解为创建了 link 链接到原来的镜像,他们具有相同的镜像 ID
执行 docker rmi RESPOSITORY[:TAG] 命令去删除镜像时,若有此镜像还有其它标签,仅会移除当前标签 Untagged ,镜像不会被移除。若当前镜像 ID 仅一个标签时,则会解除标签并删除镜像。
Usage: docker tag SOURCE_IMAGE[:TAG] TARGET_IMAGE[:TAG] Example: docker tag ubuntu:latest testubuntu:latest
删除镜像
Usage: docker rmi [OPTIONS] IMAGE [IMAGE...] Example: docker rmi 03b4557ad7b9
Container 之 'CRUD'
创建一个新的容器
create命令创建容器,默认为停止状态
Usage: docker create [OPTIONS] IMAGE [COMMAND] [ARG...] Example: docker create ubuntu
创建新的容器并执行命令
Usage: docker run [OPTIONS] IMAGE [COMMAND] [ARG...] Example: docker run -it ubuntu bash docker run -it ubuntu echo 'Hello Docker' docker run -d ubuntu /bin/sh -c "while true; do echo hello world; sleep 1; done"
进入容器
进入容器有两种方式: attach 与 exec 命令
attach 介绍:将本地的标准输入、输出、错误流附加到正在运行的容器。
attach 弊端:当多个窗口通过 attach 命令进入同一容器,所有窗口都会同步显示,当某个命令阻塞的时候,其它窗口也无法进行操作了。
exec 介绍:在一个运行的容器中执行命令。
exec 优点:通过制定 -it 参数来保持标准输入打开,并分配一个伪终端,执行 bash 会打开一个新的终端与容器进行交互,对其他用户不影响。
Usage: docker attach [OPTIONS] CONTAINER docker exec [OPTIONS] CONTAINER COMMAND [ARG...] Example: docker attach bd3fa0536c33 docker exec -it bd3fa0536c33 bash
查看容器列表
Usage: docker container ls [OPTIONS] Aliases: ls, ps, list Example: docker container ls docker container ps docker ps docker container list
查看容器详情
inspect可查看镜像、容器详情
container inspect用来查看容器详情
Usage: docker inspect [OPTIONS] NAME|ID [NAME|ID...] docker container inspect [OPTIONS] CONTAINER [CONTAINER...] Example: docker inspect bd3fa0536c33 docker container inspect bd3fa0536c33
查看容器内运行的进程
Usage: docker top CONTAINER [ps OPTIONS] Example: docker top bd3fa0536c33
查看容器端口映射
Usage: docker port CONTAINER [PRIVATE_PORT[/PROTO]] Example: docker port bd3fa0536c33
查看容器资源占用信息
Usage: docker stats [OPTIONS] [CONTAINER...] Example: docker stats bd3fa0536c33
查看容器日志
Usage: docker logs [OPTIONS] CONTAINER Example: docker logs bd3fa0536c33
查看服务器实时事件
Usage: docker events [OPTIONS] Example: docker events
更新容器配置
Usage: docker update [OPTIONS] CONTAINER [CONTAINER...] Example: docker update --cpu-shares 512 ae540ed39427
更新容器名称
Usage: docker rename CONTAINER NEW_NAME Example: docker rename ae540ed39427 test_ubuntu
删除容器
移除指定 CONTAINER 可通过 rm 命令
批量移除所有停止的 CONTAINER 可使用 prune 命令
Usage: docker container rm [OPTIONS] CONTAINER [CONTAINER...] docker container prune [OPTIONS] Example: docker container rm bd3fa0536c33 docker container prune
Image 保存/加载
保存镜像
Usage: docker save [OPTIONS] IMAGE [IMAGE...] Example: docker save -o test_ubuntu.tar 3ff4930bc673
加载镜像
Usage: docker load [OPTIONS] Example: docker load -i test_ubuntu.tar
Container 生命周期
启动容器
Usage: docker start [OPTIONS] CONTAINER [CONTAINER...] Example: docker start bd3fa0536c33
停止容器
Usage: docker stop [OPTIONS] CONTAINER [CONTAINER...] Example: docker stop bd3fa0536c33
暂停/恢复
Usage: docker pause CONTAINER [CONTAINER...] docker unpause CONTAINER [CONTAINER...] Example: docker pause bd3fa0536c33 docker unpause bd3fa0536c33
重启容器
Usage: docker restart [OPTIONS] CONTAINER [CONTAINER...] Example: docker restart bd3fa0536c33
杀掉运行中的容器
Usage: docker kill [OPTIONS] CONTAINER [CONTAINER...] Example: docker kill bd3fa0536c33
等待容器退出
Usage: docker wait CONTAINER [CONTAINER...] Example: docker wait bd3fa0536c33
Container 导入/导出
导出容器
Usage: docker export [OPTIONS] CONTAINER Example: docker export -o docker_bak.tar bd3fa0536c33
导入容器
Usage: docker import [OPTIONS] file|URL|- [REPOSITORY[:TAG]] Example: docker import docker_bak.tar bak/ubuntu:v1.0
Container 与本机交互
复制文件/文件夹(本机 ⇆ 容器)
Usage: docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|- docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATH Example: docker cp bd3fa0536c33:/www /www/py_script/ docker cp /www/py_script bd3fa0536c33:/www/
检查容器内文件/文件夹的更改
Usage: docker diff CONTAINER Example: docker diff docker diff bd3fa0536c33
镜像仓库
从 Docker Hub 搜索镜像
Usage: docker search [OPTIONS] TERM Example: docker search ubuntu
登录/退出 Docker 仓库
Usage: docker login [OPTIONS] [SERVER] Example: docker login docker login -u [username] -p [password] docker logout
从镜像仓库拉取 & 更新/推送指定镜像
Usage: docker pull [OPTIONS] NAME[:TAG|@DIGEST] docker push [OPTIONS] NAME[:TAG] Example: docker pull ubuntu docker push ubuntu:test1
信息/版本
查看 Docker 系统范围信息
Usage: docker info [OPTIONS] Example: docker info
查看 Docker 版本信息
Usage: docker version [OPTIONS] Example: docker version
未完待续
听说好看的人才能点
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。