在win10 docker启动的centos容器中安装nginx

Posted 孤剑者

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在win10 docker启动的centos容器中安装nginx相关的知识,希望对你有一定的参考价值。

我是在win10机器上搭建了一个docker,在docker启动了centos容器,在centos中安装nginx

  • 安装配置docker

          直接在官网下载docker for windows:https://store.docker.com/editions/community/docker-ce-desktop-windows,下载完成,点击按照默认一步步安装就行了。如果希望加快pull镜像的速度,可以选择配置一个阿里云镜像加速器。

  • 安装centos

         用管理员身份运行docker,根据实践来看,如果不这样做的话,docker容器无法ping 通外外网。

        从阿里云镜像服务中拉取一个centos镜像:docker pull registry.cn-hangzhou.aliyuncs.com/max/centos6.7-docker

        启动容器:docker run --name my-cnt-centos-6.7  -itd -p 80:80  <镜像> /bin/bash

        查看运行的容器:docker ps,找到刚刚启动的容器id

        进入这个容器:docker exec -it <容器id>  /bin/bash

       

     这样便成功启动了centos。

  • 安装Nginx

          必要的环境安装:yum -y install gcc gcc-c++ automake pcre pcre-devel zlib zlib-devel open openssl-devel

          下载nginx: cd /usr/local ,wget http://nginx.org/download/nginx-1.7.4.tar.gz

           解压nginx:tar -zxvf nginx-1.7.4.tar.gz

          安装nginx:进入解压目录,执行./configure prefix=/usr/local/nginx,配置安装目录;执行make和make install命令,就安装完成了。

  • 访问Nginx

          这里或许就是我写这篇随笔的目的,因为的确在这里耽搁了很长的时间。

          遇到的第一个问题,centos中始终无法ping通外网,后来改为用管理员启动docker后,再次启动centos就解决了这个问题。

          遇到的第二个问题,如何访问Nginx,因为直接在浏览器中输入centos的IP,无法访问到Nginx的welcome页面。后来才知道宿主机要访问docker容器中的服务,必须要进行端口映射,在启动容器时,如果不配置宿主机器与docker容器的端口映射,外部是无法访问docker容器。这就是为什么我在前面启动centos时,加了-p 80:80端口映射的原因。然后需要通过:localhost:80进行访问。

       

 

 

 

 

 

          

以上是关于在win10 docker启动的centos容器中安装nginx的主要内容,如果未能解决你的问题,请参考以下文章

物理机centos6上使用docker创建centos7容器并在容器中使用KVM搭建win10系统

2021-07-10 docker 启动milvus失败

本地搭建Spring Initializr服务器(运行在docker中)

Centos 配置开机启动脚本启动 docker 容器

10.Docker之CMD指令

Win10系统下Docker容器测试问题笔记及注意事项