部署 Docker
-
登录服务器
-
添加 yum 源。
yum install epel-release -y
yum clean all
-
安装并及配置 Docker。
yum install docker-io -y
安装完后配置docker加速镜像
systemctl enable docker
-
检查安装结果。
docker --version
回显如下类似信息,表示 Docker 安装成功。
Docker version 1.13.1, build 8633870/1.13.1
Docker 基本用法
-
Docker 进程管理。
-
运行 Docker
systemctl start docker
-
停止 Docker
systemctl stop docker
-
重启 Docker
systemctl restart docker
-
-
镜像管理。
-
拉取镜像。此处以 Apache 和 CentOS 官方镜像为例。
docker pull httpd
docker pull centos
-
查看已有镜像
docker images
-
强制删除镜像
docker rmi centos
-
-
容器管理。
-
创建一个容器并运行。
docker run -it -d -p 80_:80 –name datahttpd -v _/data/:_/var/www/httpd/_ httpd
参数说明如下:
- -i:以交互模式运行容器,通常与 - t 同时使用。
- -t:为容器重新分配一个伪输入终端,通常与 - i 同时使用。
- -d:后台运行容器,并返回容器 ID。
- -p:端口映射,格式为 “宿主机端口: 容器端口”。
- –name:为容器指定一个名称。
- -v:把宿主机上的一个目录挂载到镜像里,格式为 “宿主机目录: 镜像内挂载的路径”,必须为绝对路径。
说明:
上述参数说明中的宿主机表示所创建的弹性云服务器实例。
示例命令表示:使用镜像 httpd,以交互模式启动一个容器,将容器的 80 端口映射到宿主机的 80 端口,宿主机的目录 / data 映射到容器的 / var/www/httpd 目录,并返回容器 ID。
-
查看容器启动情况。
docker ps -a
-
在浏览器输入弹性云服务器所绑定的弹性公网 IP,访问测试容器运行情况。出现以下内容表示运行成功。
-
镜像制作
通过 Dockerfile 定制一个简单的 Nginx 镜像。
-
创建一个名为 Dockerfile 的文件。
mkdir mynginx
cd mynginx
touch Dockerfile
-
编辑 Dockerfile。
vim Dockerfile
增加文件内容如下:
FROM nginx RUN echo '<h1>Hello, Docker!</h1>' > /usr/share/nginx/html/index.html
Dockerfile 指令介绍如下。以下仅介绍简单指令,如需了解更多,请参见官方网站 https://hub.docker.com/。
- FROM 语句:表示使用 nginx 镜像作为基础镜像,一个 Dockerfile 中 FROM 是必备的指令,并且必须是第一条指令。
- RUN 语句:格式为 RUN <命令>,表示执行 echo 命令,在显示器中显示一段 “Hello, Docker!” 的文字。
-
构建镜像。
docker build -t nginx:v3 .
- -t nginx:v3:指定镜像的名称和版本。
- .:指定上下文路径,镜像构建命令将该路径下所有的内容打包给 Docker 引擎帮助构建镜像。
-
查看部署的 nginx 镜像,版本为 v3。
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE nginx v3 09422e465d96 10 seconds ago 109 MB