Docker Hello World

时光总嘲笑我的痴心妄想 提交于 2020-04-04 10:29:05

docker run 运行一个应用程序

docker run ubuntu:15.10 /bin/echo "Hello world"

镜像ubuntu,版本15.10,Docker 首先从本地主机上查找镜像是否存在,如果不存在,Docker 就会从镜像仓库 Docker Hub 下载公共镜像。

问题本地镜像地址?

/Users/{YourUserName}/Library/Containers/com.docker.docker/Data

里面没发现镜像的名字??待确认

Docker Hub地址?

https://hub.docker.com/

交互式容器

[running]jihite@:~$ docker run -i -t ubuntu bin/bash
root@f0d76625c291:/# echo "Hello World"
Hello World
root@f0d76625c291:/# exit
exit

参数含义
-t 在新容器指定一个终端

-i 对容器进行交互

分析

第二行开头是root@, 表示已经进入容器了

启动、关闭容器(后台模式)

[running]jihite@:~$ docker run -d ubuntu /bin/sh -c "while true; do echo hello world; sleep 1; done"
ad8073ac968c87abbe6d4afbe36364392aec79884aff943bd320e65f5febbd6f

参数含义

-d 后端执行

分析

结果并没有输出hello,而是一长串字符串,这个长字符串是容器的id

可以通过 docker ps 查看哪些容器运行

[running]jihite@:~$ docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS               NAMES
ad8073ac968c        ubuntu              "/bin/sh -c 'while t…"   19 minutes ago      Up 19 minutes                           angry_wing

可以通过容器id(CONTAINER ID)、名字(NAMES)查看容器内标准输出

docker logs ad8073ac968c

docker logs angry_wing

docker logs ad8073ac968c87abbe6d4afbe36364392aec79884aff943bd320e65f5febbd6f

问题上面有两个contaner id, 长ID、短ID 二者啥关系??

停止容器

docker stop angry_wing

或 docker stop ad8073ac968c

或 docker stop ad8073ac968c87abbe6d4afbe36364392aec79884aff943bd320e65f5febbd6f

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!