Docker学习记录

Centos安装docker

yum install docker-io -y

获取新镜像:

docker pull ubuntu #获取ubuntu

运行镜像:

docker run -i -t -p 80:80 ubuntu /bin/bash #-p为端口映射,80映射到80。

查看所有镜像:

docker images

杀死所有running状态的容器:

docker kill $(docker ps -q)

删除所有已经停止的容器:

docker rm $(docker ps -a -q)

删除所有镜像:

docker rmi $(docker images -q)

删除镜像:

docker rmi id #请务必先删除停止的容器才能删除镜像d

使用docker attach命令进入后台docker:

<del> docker attach name 或者 docker attach id #需要先docker ps查看后台运行的docker的id或者名字</del>

使用docker exec命令:
这个命令使用exit命令后,不会退出后台,一般使用这个命令,使用方法如下

docker exec -it db3 /bin/sh 或者 docker exec -it d48b21a7e439 /bin/sh #两种方法都需要获取仅限的别名或者仅限的运行名字

提交修改过的镜像:

先让镜像-d后台运行,然后docker ps查看id或者name,再使用docker exec -it id来进入修改,修改后使用exit依然后台运行,
之后使用docker commit name name:version 来保存文件

常用命令

- docker images 列出所有镜像
- docker ps 查看正在运行的容器
- docker ps -a 查看所有容器,包括不在运行的
- docker rmi [image_name] 删除镜像,如果有已经存在的该镜像的容器,则无法删除
- docker rm [container_name] 删除容器,如果正在运行则无法删除,如果要删除正在运行的容器,则需要加-f选项
- docker [cmd] --help可以查看对应命令的帮助信息

启动容器

docker run -d -p 80:80 --name webserver nginx

容器各选项含义如下:

-d选项:设置detach为true,根据官方的文档,意思是让这个命令在后台运行--name指定一个容器的自定义名称为webserver-p 指定宿主主机端口与容器端口之间的映射,即宿主主机的80端口映射到容器的端口80上,也可以用-P自动指定端口。
在容器中运行命令
docker exec -it webserver bash  #以交互式终端方式进入 webserver 容器,并执行bash命令,获得一个可操作的 Shell。

OPTIONS说明:

-d :分离模式: 在后台运行
-i :即使没有附加也保持STDIN 打开
-t :分配一个伪终端
外部访问容器实现

容器允许外部访问,可以在 docker run 时候通过 -p 或 -P 参数来启用。

» 本文链接:Docker学习记录
» 转载请注明来源:刺客博客
» 如果文章失效或者安装失败,请留言进行反馈。