首页 > 系统相关 >制作nginx docker镜像

制作nginx docker镜像

时间:2023-07-20 20:32:04浏览次数:35  
标签:容器 NGINX nginx 镜像 docker Docker 80

制作NGINX Docker镜像流程

1. 准备工作

在开始制作NGINX Docker镜像之前,我们需要确保已经满足以下条件:

  • 安装Docker:在主机上安装好Docker,确保可以正常运行。
  • 准备NGINX配置文件:将NGINX的配置文件放置在一个目录中,后续会将其复制到Docker镜像中。

2. 创建Dockerfile

Dockerfile是用来定义Docker镜像构建过程的文本文件。请按照以下步骤创建一个Dockerfile:

步骤 代码 说明
1 FROM nginx:latest 基于最新版本的NGINX镜像构建新的镜像。
2 COPY nginx.conf /etc/nginx/nginx.conf 将之前准备好的NGINX配置文件复制到新镜像的指定位置。
3 EXPOSE 80 声明将在容器中使用80端口。
4 CMD ["nginx", "-g", "daemon off;"] 在容器启动时自动运行的命令,启动NGINX并保持容器运行。

3. 构建镜像

在创建好Dockerfile后,我们需要使用以下命令构建NGINX镜像:

docker build -t nginx-custom .
  • docker build:构建镜像的命令。
  • -t nginx-custom:为镜像指定一个名称,这里我们命名为"nginx-custom",你可以根据需要自定义名称。
  • .:告诉Docker在当前目录寻找Dockerfile文件,并以此构建镜像。

4. 验证镜像构建是否成功

构建镜像完成后,我们可以使用以下命令验证是否成功:

docker images

你应该看到新构建的镜像"nginx-custom"出现在列表中。

5. 运行容器

现在我们可以使用刚刚构建的镜像运行一个NGINX容器了。使用以下命令:

docker run -d -p 80:80 --name nginx-container nginx-custom
  • docker run:运行一个新容器的命令。
  • -d:在后台运行容器。
  • -p 80:80:将主机的80端口映射到容器的80端口,这样我们可以通过主机的80端口访问容器中的NGINX服务。
  • --name nginx-container:为容器指定一个名称,这里我们命名为"nginx-container",你可以根据需要自定义名称。
  • nginx-custom:运行的镜像名称。

6. 验证容器是否成功运行

使用以下命令可以验证容器是否成功运行:

docker ps

你应该看到"nginx-container"容器正在运行。

7. 测试NGINX服务

现在可以通过浏览器或者curl命令来测试NGINX服务是否正常工作。在浏览器中访问http://localhost或运行以下命令:

curl http://localhost

如果你能看到NGINX的欢迎页面,那么恭喜你,制作NGINX Docker镜像并成功运行容器的任务完成了!

希望本文对你有所帮助,如果还有任何问题,欢迎随时提问!

标签:容器,NGINX,nginx,镜像,docker,Docker,80
From: https://blog.51cto.com/u_16175505/6791096

相关文章

  • Python监控Nginx 4、7层健康检查
    [root@acs-hk-ctos7-prod-01scripts]#catupstrem.py#!/usr/bin/envpython#-*-coding:utf-8-*-#@Time:2023/6/2517:18#@File:nginx_upstram.py#@Software:PyCharmimportrequestsfromurllib.requestimporturlopenimportos,socket,datetim......
  • You don't have either docker-client or docker-client-latest installed. Pleas
    如何安装docker-client或docker-client-latest概述在本文中,我将向您展示如何安装docker-client或docker-client-latest,并解释每一步所需的代码及其用途。无论您是一名刚入行的开发者还是有经验的开发者,这篇文章都将帮助您完成安装过程。准备工作在开始之前,请确保您已经正......
  • docker把本地文件夹挂载到容器中
    如何将本地文件夹挂载到Docker容器中1.概述在使用Docker进行应用程序开发时,经常需要将本地文件夹挂载到Docker容器中,以便在容器中进行代码的调试和测试。本文将详细介绍如何完成这个过程,并提供每一步的示例代码和解释。2.操作步骤步骤操作1创建一个本地文件夹,用于......
  • error creating overlay mount to /var/lib/docker/overlay2/b2e5a97deb6343f6dfb
    错误创建overlay挂载点到/var/lib/docker/overlay2/b2e5a97deb6343f6dfb在使用Docker时,有时会遇到错误信息"errorcreatingoverlaymountto/var/lib/docker/overlay2/b2e5a97deb6343f6dfb"。这个错误通常出现在试图创建Docker容器时,它指示Docker无法创建overlay2的挂载点。ove......
  • docker安装包安装linux
    Docker安装包安装Linux介绍Docker是一种容器化平台,它可以在不同的操作系统上运行,如Linux、Windows和Mac。本文将重点介绍如何使用Docker安装包在Linux系统上安装Docker。步骤1.更新系统在安装Docker之前,我们首先要确保系统是最新的状态。我们可以使用以下命令来更新系统:sudo......
  • Docker自建DNS服务器
    www.yuansredevsecops.top1.搭建搭建依然使⽤docker,安装前请安装好docker的运⾏时环境。 #创建⼀个持久化存放⽂件的⽬录 mkdir-p/opt/docker/bind #使⽤容器创建应⽤ dockerrun--namebind-d--restart=always\ --publish53:53/tcp--publish53:53/udp--publ......
  • Nginx常用配置
    一、基础配置userroot;worker_processes1;events{worker_connections10240;}http{log_format'$remote_addr-$remote_user[$time_local]''"$request"$......
  • nginx变量
    一、配置多个location匹配规则location^~/admin{alias/var/www/admin/;indexregist.html;}location/{root/data/html/;indexindex.htmlindex.html;}二、root和alias的区别root与alias主要区别在于nginx如何解释location后面的uri......
  • docker常用命令
    dockeroperationcommand:查询镜像sudodockerimages删除镜像dockerrmibf756fb1ae65(镜像id)#启动镜像#sudodockerrun-it-d--nametest01ubuntu18.04:docker_test1/bin/sh创建macvlan网络sudodockernetworkcreate-dmacvlan--subnet=172.16.2.1/23--......
  • 【容器架构】你知道有 Docker 为什么还要 K8s 吗?
    ......