docker run --name=xxx -it ubuntu /bin/bash
docker rm 容器 ; docker rmi 镜像; docker stop 容器; docker kill 容器;
ctrl+P ctrl+Q (退出容器)
docker attach 容器 (重新进入容器)
docker logs -f(追加日志打印) -t(显示日志时间) --tail=10 (只显示结尾处多少条) 容器
docker top 容器 (显示容器内的进程)
docker exec -i -t 容器 “CMD” (进入容器,并执行命令“CMD”)
docker -p 80 (映射容器端口80,对应物理机连接端口为随机,可用docker port查看)
docker commit -a '作者' -m '描述' 容器 test/xxx (通过容器构建镜像)
docker build -t='test/xxx' . (通过dockerfile构建镜像)
service docker stop/start/restart (docker服务端重启)
dockerfile 方面:
1.EXPOSE 只是说明该镜像需要暴露哪个端口,只是说明作用,不会在启动时真正暴露
2.RUN 只是在构建镜像中执行的命令
3.CMD 镜像在启动后执行的‘默认’命令,如果启动容器时带命令,则dockerfile中的CMD会被覆盖
4.ENRTRYPOINT 镜像在启动后执行的命令,不会被覆盖
docker容器互联:
docker run --name=xxx -it --link=容器:别名 ubuntu /bin/bash (--link 容器间网络可以互通,如ping 别名)
docker数据卷:
1.docker run -v 物理机目录:容器目录 ubuntu /bin/bash (-v 映射目录)
2.在dockerfile中,使用VOLUME["容器中目录","容器中目录"] ,对应的物理机目录是随机分配的;
3.docker run --volumes-from 数据卷容器 ubuntu /bin/bash
4.备份