参考:http://siwei.me/blog/posts/docker-image-container

image: 镜像, 静态的,  可以被commit. 可以被删除。 

container:  docker "run" (注意是不是start ) image 之后的到的.   内容不会被自动保存。  docker run 命令 就会产生新的。 而且docker 的理念是container 可以随时随地产生和抛弃。

docker run 命令: 根据image 来得到一个运行中的 container .这是一个崭新的container. (如果启动postgres后,postgres停止了,然后再次启动的不是使用ID启动,就是启动了了新的postgres,IP address会不一样。当然ID也不一样)

docker start 命令: 把之前停止的 container 跑起来

可以通过 --help 来查看 详细命令,例如  $ docker run --help 会打印出详细的解释。

docker run  <image_name> 

根据已有的image  创建一个新的container 并运行

例子: 运行 image: 933f6,  使用host ip,  并且把 host 的 /workspace 文件夹加载到container 中的 /workspace

docker run -v /workspace:/workspace --net=host -it --hostname=admin-container 933f6

docker create  创建一个新的container ,但是不启动

docker start <id>  运行一个已经存在的,并且已经停止的container  

docker stop <id>  停止已经一个存在的container 

docker rm <container id>  删除一个或者多个container 

docker image ls   或者  $ docker images    查看本地所有的image

docker exec -it <container id> /bin/bash 直接类似于使用ssh 登录一个container 

docker attach <container id>  查看某个container

docker logs <container id>  查看某个container 的shell的输出

docker inspect <container id> , 查看某个container的详细情况. 包括ip 等。

docker ps   列出运行中的container    ( 如果要列出所有,包括已经启动的和已经停止的所有,就 docker ps -a )

docker image ls  列出所有的docker image

REPOSITORY TAG IMAGE ID CREATED SIZE
ubuntu add_vim 4efbaa2d43fc About a minute ago 167MB

docker export  把 container 导出 , 例如:   docker export -o rails_container.tar c7180f611c13

docker save  把 image 导出, 例如: docker save -o rails_image.tar 253ea174ad29

docker load  导入使用 docker save 命令导出的镜像。

例如: 导入镜像:

$ docker image ls
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
$ docker load &lt; busybox.tar.gz
Loaded image: busybox:latest
$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
busybox             latest              769b9341d937        7 weeks ago         2.489 MB
$ docker load --input fedora.tar
Loaded image: fedora:rawhide
Loaded image: fedora:20
$ docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
busybox             latest              769b9341d937        7 weeks ago         2.489 MB
fedora              rawhide             0d20aec6529d        7 weeks ago         387 MB
fedora              20                  58394af37342        7 weeks ago         385.5 MB
fedora              heisenbug           58394af37342        7 weeks ago         385.5 MB
fedora              latest              58394af37342        7 weeks ago         385.5 MB

docker import   把image 导入。(但是不运行,仅仅导入到本地的image 仓库)

docker cp  把本地的copy到container 中。 或者反之

docker cp <containerId>:/file/path/within/container /host/path/target

或者  docker cp ~/.vim <containerid>:/root

docker run 运行docker ,并且加上各种参数。

-v 加上本地存储

docker-compose

运行某个指定的yml文件:

docker-compose -f ./docker-compose.yml up