第一个Dockerfile

本文介绍如何通过Docker快速部署Nginx服务。包括创建Docker目录、编写Dockerfile、构建Docker镜像、运行镜像及访问Nginx服务等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、 创建docker目录

$ mkdir docker && cd docker

 

2、 编写Dockerfile

$ vim Dockerfile

 

[docker/Dockfile]

FROM ubuntu:16.04
MAINTAINER Foo Bar < foo@bar.com>

RUN apt-get update
RUN apt-get install -y nginx 
RUN echo “\ndaemon off:”>> /etc/nginx/nginx.conf
RUN chown –R www-data:www-data /var/lib/nginx

VOLUME [“/data”,”/etc/nginx/site-enabled”,”/var/log/nginx”]

WORKDIR /etc/nginx

CMD [“nginx”]

EXPOSE 80
EXPOSE 443

上述代码基于ubuntu 14.04创建Docker镜像,且安装nginx服务器。

* FROM:指定基于的基础镜像。Docker镜像基于已创建的镜像。指令格式为<镜像名称>:<标签>。

* MAITAINER:维护者信息

*  RUN:运行shell脚本或命令

*  VOLUME:要与主机共享的目录。也可以在docker run命令中使用 -v 选项进行设置。例如,-v /root/data:/data将主机的/root/data目录连接到Docker窗口的/data目录。

*  CMD:指定容器启动时执行的文件或者shell脚本。

*  WORKDIR:为CMD中设置的可执行文件设置运行目录

*  EXPOSE:与主机相连的端口号

 

3、 使用build命令创建镜像

$ docker build - -tag hello:0.1  .

$ docker images

 

 

4、 运行刚刚创建的镜像

$ docker run --name hello-nginx -d -p 80:80 -v /root/data:/data hello:0.1

$ docker ps

  * -d选项在后台运行容器。

  * -p 80:80选项将主机的80端口与容器的端口连接起来,并暴露到外部。这样设置后,连接http://<主机名>:80就会连接到容器的80端口了。

  * -v /root/data:/data选项将主机的/root/data:/data选项将主机的/root/data目录连接到容器的/data目录。若将文件放入/root/data目录,则能从容器读取相应文件。

 

5、 访问nginx服务器:http://<主机IP>:80,打开后即可出现 welcome to nginx 页面。

转载于:https://www.cnblogs.com/jefflee168/p/7383405.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值