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地址?
交互式容器
[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