【docker】命令之容器操作
一、前言
在上篇博客介绍了关于如何从应用市场,下载镜像后,对镜像的相关操作了。这篇博客呢我们就要讲解我们把镜像下载下来了,启动这个镜像后,就是我们说的容器了,那么容器的具体操作又有那些呢?
二、容器操作命令
我们之前说过,每一个镜像启动后就是一个容器,而且每个容器都代表一个运行中的应用,对这些应用的相关命令操作如下:
1、具体命令
#运行一个新容器
docker run 容器名称# 查看运行中的应用
docker ps
#停止容器
docker stop 容器ID
#启动容器
docker start
#重启容器
docker restart 容器ID
#查看容器资源占用情况
docker stats 容器ID
#查看容器日志
docker logs 容器ID
#删除指定容器
docker rm 容器ID
#强制删除指定容器
docker rm -f 容器ID
# 后台启动容器
docker run -d --name mynginx nginx
# 后台启动并暴露端口
docker run -d --name mynginx -p 80:80 nginx
# 进入容器内部
docker exec -it mynginx /bin/bash
2、具体操作
①运行一个新容器
docker run nginx
② 查看运行中的应用
如果没有运行的应用,则使用该指令找不到应用信息
docker ps
docker ps -a(可以查看所有的容器不管是否在运行)
③停止容器
docker stop 容器ID
④启动容器
docker start 容器ID
docker restart 容器ID:表示不管容器是停止还是运行,都会重启一遍,具体操作和start用法相同。
⑤查看容器资源占用情况
docker stats 容器ID
⑥查看容器日志
docker logs 容器ID
⑦删除指定容器
docker rm 容器ID
强制删除指定容器
docker rm -f 容器ID
(ps:注意这里删除的命令是rm 和 镜像删除的命令 rmi 是不同的)
3、run命令细节
上面用的docker run 容器ID的方法可以,运行容器,但是如果我们想通过浏览器访问其对应的端口却访问不了,这里我们需要对我们的run命令做一些其他操作。
具体指令如下:
①后台启动容器(--name表示自己定义容器名称)
docker run -d --name mynginx(自己命名即可) nginx
②后台启动并暴露端口(-p 表示端口映射,80:80表示外部的服务器的端口80和容器内部的端口80进行映射)
docker run -d --name mynginx -p 80:80 nginx
访问浏览器:
来到nginx首页
特别注意:对于我们外部服务器的端口是不可以重复的,容器内部的端口可以重复!
4、页面修改
当我们进入了Nginx的首页后如何修改里面的内容呢?
使用docker exec -it mynginx(自己定义的容器名称) /bin/bash进入容器内部
docker_hub中nginx的默认静态数据所在位置
再次访问浏览器,内容已经改变!
最后可以通过“exit”退出容器即可。
三、总结
这部分我们介绍了容器中的相关命令操作,以及如何修改容器中的内容。后面我们将以我们修改好的这个mynginx为例,看如何将其保存下来,并分享到我们的docker_hub社区!