A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© xiaozuoquan 中级黑马   /  2018-9-27 15:30  /  1814 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 xiaozuoquan 于 2018-9-27 16:13 编辑

3.3 docker pull && docker push

[AppleScript] 纯文本查看 复制代码
$ sudo docker pull ubuntu # 下载官方 ubuntu docker 镜像,默认下载所有 ubuntu 官方库镜像
[AppleScript] 纯文本查看 复制代码
$ sudo docker pull ubuntu:14.04 # 下载指定版本 ubuntu 官方镜像 
[AppleScript] 纯文本查看 复制代码
$ sudo docker push 192.168.0.100:5000/ubuntu # 推送镜像库到私有源[可注册 docker 官方账户,推送到官方自有账户]
[AppleScript] 纯文本查看 复制代码
$ sudo docker push 192.168.0.100:5000/ubuntu:14.04 # 推送指定镜像到私有源 


3.4 docker images  

[AppleScript] 纯文本查看 复制代码
$ sudo docker images # 显示当前系统镜像,不包括过渡层镜像 
[AppleScript] 纯文本查看 复制代码
$ sudo docker images -a # 显示当前系统所有镜像,包括过渡层镜像 
[AppleScript] 纯文本查看 复制代码
$ sudo docker images ubuntu # 显示当前系统 docker ubuntu 库中的所有镜像 

REPOSITORY                 TAG              IMAGE ID            CREATED             VIRTUAL SIZE

ubuntu                  12.04             ebe4be4dd427                    4 weeks ago                210.6 MB

ubuntu                  14.04              e54ca5efa2e9                    4 weeks ago                276.5MB

ubuntu                   14.04-ssh            6334d3ac099a                    7 weeks ago                383.2 MB
3.5 docker rmi  删除镜像
[AppleScript] 纯文本查看 复制代码
[root@xiaozuoquan ~]# docker images


REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE

kiwenlau/hadoop     1.0                 a96b45d40715        11 days ago         729MB

ubuntu              14.04               c32fae490809        3 weeks ago         188MB

hello-world         latest              2cb0d9787c4d        2 months ago       1.85kB

kiwenlau/hadoop     <none>              a59a34125272        2 years ago         829MB
[AppleScript] 纯文本查看 复制代码
[root@xiaozuoquan ~]# docker rmi hello-world


Untagged: hello-world:latest
Untagged: hello-world@sha256:4b8ff392a12ed9ea17784bd3c9a8b1fa3299cac44aca35a85c90c5e3c7afacdcDeleted: sha256:2cb0d9787c4dd17ef9eb03e512923bc4db10add190d3f84af63b744e353a9b34Deleted: sha256:ee83fc5847cb872324b8a1f5dbfd754255367f4280122b4e2d5aee17818e31f5

3.6 docker run
分配名称并分配伪TTY( - name,-it)
[AppleScript] 纯文本查看 复制代码
$ docker run --name test -it debian

root@d6c0fe130dba:/# exit 13
$ echo $?
13
$ docker ps -a | grep test
d6c0fe130dba        debian:7            "/bin/bash"         26 seconds ago      Exited (13) 17 seconds ago  

此示例使用debian:latest镜像运行名为test的容器。 -it指示Docker分配连接到容器stdin的伪TTY; 在容器中创建交互式bash shell。
在该示例中,通过输入exit 13退出bash shell。此退出代码被传递给docker run的调用者,并记录在测试容器的元数据中。

捕获容器ID(--cidfile)


[AppleScript] 纯文本查看 复制代码
$ docker run --cidfile /tmp/docker_test.cid ubuntu echo "test"


这将为控制台创建容器和打印测试。 cidfile标志使Docker尝试创建一个新文件并将容器ID写入其中。
如果文件已存在,Docker将返回错误。 Docker运行退出时,Docker将关闭此文件。
完整的容器功能( - 特权)


[AppleScript] 纯文本查看 复制代码
$ docker run -t -i --rm ubuntu bash
root@bc338942ef20:/# mount -t tmpfs none /mnt
mount: permission denied



这不起作用,因为默认情况下,大多数潜在危险的内核功能都会被删除;
包括cap_sys_admin(挂载文件系统所需)。 但是,--privileged标志将允许它运行:

[AppleScript] 纯文本查看 复制代码
$ docker run -t -i --privileged ubuntu bash
root@50e3f57e16e6:/# mount -t tmpfs none /mnt
root@50e3f57e16e6:/# df -h
Filesystem      Size  Used Avail Use% Mounted on
none            1.9G     0  1.9G   0% /mnt


-privileged标志为容器提供了所有功能,它还解除了设备cgroup控制器强制执行的所有限制。
换句话说,容器几乎可以完成主机可以执行的所有操作。 此标志存在以允许特殊用例,例如在Docker中运行Docker。


1 个回复

倒序浏览
奈斯
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马