Docker基础 docker创建centos7容器然后安装配置Nginx,并在浏览器访问

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
简介: docker 在容器里下载配置nginx,并可在浏览器上访问的方法, 并将容器转为镜像,或将容器转为文件,再将文件转为镜像的两种方式,创建容器时绑定端口的方法,


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

相关文章
|
5天前
|
Kubernetes Cloud Native Docker
云原生时代的容器化实践:Docker和Kubernetes入门
【10月更文挑战第37天】在数字化转型的浪潮中,云原生技术成为企业提升敏捷性和效率的关键。本篇文章将引导读者了解如何利用Docker进行容器化打包及部署,以及Kubernetes集群管理的基础操作,帮助初学者快速入门云原生的世界。通过实际案例分析,我们将深入探讨这些技术在现代IT架构中的应用与影响。
22 2
|
11天前
|
关系型数据库 MySQL API
|
3天前
|
缓存 监控 开发者
掌握Docker容器化技术:提升开发效率的利器
在现代软件开发中,Docker容器化技术成为提升开发效率和应用部署灵活性的重要工具。本文介绍Docker的基本概念,并分享Dockerfile最佳实践、容器网络配置、环境变量和秘密管理、容器监控与日志管理、Docker Compose以及CI/CD集成等技巧,帮助开发者更高效地利用Docker。
|
5天前
|
监控 持续交付 Docker
Docker 容器化部署在微服务架构中的应用有哪些?
Docker 容器化部署在微服务架构中的应用有哪些?
|
5天前
|
监控 持续交付 Docker
Docker容器化部署在微服务架构中的应用
Docker容器化部署在微服务架构中的应用
|
7天前
|
运维 开发者 Docker
Docker Compose:简化容器化应用的部署与管理
Docker Compose:简化容器化应用的部署与管理
|
7天前
|
Cloud Native 持续交付 Docker
Docker容器化技术:从入门到实践
Docker容器化技术:从入门到实践
|
7天前
|
NoSQL Redis Docker
【赵渝强老师】使用Docker Compose管理容器
Docker Compose 通过 YAML 文件管理多个容器,简化复杂系统的部署和管理。本文介绍了 Docker Compose 的基本概念,并通过一个包含 Redis DB 和 Python Web 模块的示例,展示了如何使用 Docker Compose 部署和管理多容器应用。手动部署和 Docker Compose 部署的对比突显了 Docker Compose 在系统复杂度增加时的优势。
|
7天前
|
前端开发 开发者 Docker
深入探索Docker Compose:简化多容器应用的部署
深入探索Docker Compose:简化多容器应用的部署
27 0
|
7天前
|
数据中心 开发者 Docker
理解并实践Docker容器化技术
理解并实践Docker容器化技术