centos7容器里安装配置Nginx,然后测试是否能在网页打开,并将该容器转换为模板,再将模板转成镜像,然后将该镜像创建容器,并在该容器启动nginx,然后再浏览器访问
要求:
开始操作:
拉取centos7镜像:
docker pull centos:7
创建centos7容器命名为mycentos(容器名可自取)创建时要确保没有其他容器和该容器重名:
docker run -it --name mycentos centos:7 /bin/bash
代码格式:docker run -it 容器名 依赖的镜像名 存放目录
将刚创建的容器转为镜像,命名为mycentos:
docker commit mycentos mycentos
代码格式:docker commit 容器名 镜像名:功能(功能可不写)
基于mycentos镜像创建容器,容器名为:mycentos_nginx 并绑定端口号:
docker run -it --name mycentos_nginx -p 8080:80 mycentos:vim /bin/bash
代码使用方法:
docker run -it --name 容器名 -p 端口号 依赖的镜像名 存放的目录
开始下载Nginx:
安装依赖包:
yum -y install gcc-c++ pcre pcre-devel zlib zlib-devel openssl openssl-devel
下载并解压安装包:
创建一个文件夹:
cd /usr/local
mkdir nginx
cd nginx
下载tar包,下载地址找自己的版本:
wget http://nginx.org/download/nginx-1.19.1.tar.gz
如果wget这条命令失败,就下载wget,然后在执行重新执行上一步:
yum install -y wget
下载好后解压该文件 解压:
tar -zxvf nginx-1.19.1.tar.gz
安装nginx:
进入nginx目录
cd /usr/local/nginx/nginx-1.19.1
执行编译命令,通过--prefix=安装目录,指定nginx安装目录
./configure --prefix=/usr/local/nginx
执行make命令
make
执行make install命令
make install
进入 /usr/local/nginx/,删除nginx安装包,这一步自行决定
rm -rf nginx-1.19.1*
查看nginx版本:
进入nginx目录
cd /usr/local/nginx/sbin
查看版本大写-V信息更多一些:
./nginx -V
启动nginx:
指定配置文件方式启动
进入nginx目录,执行启动命令
cd /usr/local/nginx/sbin
./nginx -c /usr/local/nginx/conf/nginx.conf
出现这个字段表示启动成功:
然后打开浏览器,输入虚拟机的IP地址,后面在加上端口号:
退出停止容器,将该容器转为镜像:
这里采用的是docker expot的方法,先将容器转为文件,再将文件转为镜像:
第一步:将容器转为文件
docker export fad752ad963b > my_nginx
代码使用方法
docker export 容器名 > 文件名
第二步:将文件转为镜像
cat my_nginx | docker import - mycentos:nginx
代码使用方法:
cat 文件名 | docker import - 镜像名
使用该镜像创建容器,并绑定9080端口:
docker run -it --name m_nginx -p 9080:80 mycentos:nginx /bin/bash
以指定配置文件的方式启动nginx:
进入nginx文件夹
cd /usr/local/nginx/sbin
执行nginx启动命令
./nginx -c /usr/local/nginx/conf/nginx.conf
然后就可以打开浏览器,输入虚拟机IP地址,加创建容器时绑定的端口号访问了
最后可以做一个开机自启
开机启动nginx服务:
编辑自启动脚本:
vim /etc/rc.d/rc.local
在最后面添加下面的代码
nginx
/usr/local/nginx/sbin/nginx
然后保存退出(Esc 然后加:wq 回车即可)
添加执行权限
chmod +x /etc/rc.d/rc.local