容器
是 Docker 又一核心概念。Docker 的容器十分轻量级
,用户可以随时创建或删除
容器。容器是直接提供应用服务
的组件
,也是已经掌握了对容器整个生命周期进行管理的各项操作命令。
简单的说,容器是独立运行的一个或一组应用,以及它们的运行态环境。而虚拟机可以理解为模拟运行的一整套操作系统(提供了运行态环境和其他系统环境)和运行在上面的应用。
下面将具体介绍如何来管理一个容器,包括创建
、启动
、停止
和删除
等。
容器
是 Docker 又一核心概念。Docker 的容器十分轻量级
,用户可以随时创建或删除
容器。容器是直接提供应用服务
的组件
,也是已经掌握了对容器整个生命周期进行管理的各项操作命令。
简单的说,容器是独立运行的一个或一组应用,以及它们的运行态环境。而虚拟机可以理解为模拟运行的一整套操作系统(提供了运行态环境和其他系统环境)和运行在上面的应用。
下面将具体介绍如何来管理一个容器,包括创建
、启动
、停止
和删除
等。
构建指令,必须指定且需要在 Dockerfile 其他指令的前面。后续的指令都依赖于该指令指定的 image。FROM 指令指定的基础 image 可以是官方远程仓库中的,也可以位于本地仓库。
该指令有两种格式:
|
|
指定基础 image 为该 image 的最后修改的版本。或者:
|
|
用户在使用 Docker 的过程中,往往需要能查看容器内应用产生的数据,或者需要把容器内的数据进行备份,甚至多个容器之间进行数据的共享,这必然涉及容器的数据管理操作。
在容器中管理数据
主要有如下两种方式:
大量的互联网应用服务包括多个服务组件,这往往需要多个容器之间通过网络进行相互配合。Docker 目前提供映射端口到宿主机和容器互联机制为容器提供网络服务。
容器中可以运行一些网络应用,要让外部也可以访问这些应用,可以通过 -P
或 -p
参数来指定端口映射。
当使用 -P
标记时,Docker 会随机映射一个 49000~49900 的端口到内部容器开放的网络端口。
使用 docker ps
可以看到,本地主机的 49155 被映射到了容器的 5000 端口。此时访问本机的 49155 端口即可访问容器内 web 应用提供的界面。
|
|
同样的,可以通过 docker logs
命令来 查看应用的信息 。
|
|
-p(小写的)则可以指定要映射的端口,并且,在一个指定端口上只可以绑定一个容器。支持的格式有 ip:hostPort:containerPort | ip:containerPort | hostPort:containerPort。
Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.
|
|
More info: Writing
|
|
More info: Server
|
|
More info: Generating
|
|
More info: Deployment