操作镜像命令:
拉取镜像: docker pull [镜像url]
显示所有镜像:docker images
删除镜像:docker rmi [镜像id]
操作容器命令:
查看所有运行的容器:docker ps
查看所有的容器:docker ps -a
创建容器:docker run [操作] [镜像名称]:[版本号]
为容器命名:docker run --mycassandra -d cassandra:3.11
启动Cassandra3.11版本,命名为mycassandra
为容器命名附带参数:docker run --name myos -dit centos:6.7 /bin/bash
启动CentOS 6.7,命名为myos,启动参数/bin/bash,启动bash,防止run起来以后就退出
显示当前存在的容器: docker ps -a
显示当前运行的容器: docker ps
删除容器:docker rm [容器id]
删除名为mycentos1的容器:docker rm mycentos1
启动已存在的容器: docker start [容器id]
启动名为mycql的容器: docker start mycql
停止已经启动的容器:docker stop [容器id]或[容器名称]
停止名为mycentos1的容器:docker stop mycentos1
进入已启动的容器: docker attach [容器id]
进入mycs容器内:docker attach myos
进入已启动的容器: docker exec -it bash
进入mycql容器内: docker exec -it mycql bash
其他:
exec与attach方式的迷思:1.使用exec方式进入的,通过exit命令只会退出容器的界面,但容器仍然会运行。attach方式的exit会直接stop容器。2.目前测试了两个容器,一个是CentOS,一个是Cassandra,CentOS在容器启动的时候,在run命令后带上了/bin/bash,然后可以通过attach进入。Cassandra在run的时候,带/bin/bash无效,所以需要在进入的时候带上bash。操作完整命令如下:
CentOS
docker run --name Mycentos -dit centos:6.7 /bin/bash
docker attach Mycentos
Cassandra
docker run --name MyCassandra -dit cassandra:3.11
docker start MyCassandra
docker exec -it MyCassandra bash
想了一下,Cassandra镜像在run的时候带命令无效的原因,估计是镜像中包含了命令