Docker容器操作 Docker创建并运行Nginx、Redis

容器操作的命令如图:

image

容器命令

# 创建并运行一个容器,运行成功后会返回容器id
docker run

# 暂停,将容器挂起,内存暂存,CPU不再执行
docker pause
# 恢复运行,内存恢复,CPU恢复
docker unpause

# 停止容器,杀死进程,回收内存
docker stop
# 启动容器,创建新的进程
docker start

# 查看所有运行的容器和状态
docker ps
# 查看容器运行日志
docker logs
# 进入容器执行命令
docker exec

# 删除指定容器,先停止,然后删除所有相关文件
docker rm

创建并运行一个容器

举例:docker run --name containerName -p 80:80 -d nginx

  • docker run:创建并运行一个容器
  • --name:给容器起一个名字
  • -p:容器端口映射,左侧得是宿主机器的端口,右侧是容器端口

默认情况下,容器是隔离环境,直接访问宿主机的80端口,是访问不到容器中的nginx。

将容器的80与宿主机的80关联起来,当访问宿主机的80端口时,就会被映射到容器的80,这样就能访问到nginx了。

  • -d :后台运行容器
  • nginx :镜像名称,可以指定版本号,这里指的是运行最新版本的nginx

image

进入容器执行命令

容器内部会模拟一个独立的Linux文件系统,看起来如同一个linux服务器一样

举例:docker exec -it mynginx bash

  • docker exec:进入容器内部,执行一个命令

  • -it:给当前进入的容器创建一个标准输入、输出终端,允许与容器交互

  • mynginx:要进入的容器的名称

  • bash:进入容器后执行的命令,bash是一个linux终端交互命令

创建运行Nginx容器[例]

查看帮助文档

在Docker Hub上查看帮助文档

找到Nginx的详情页,往下拉,有个使用指南

image

运行容器

docker run --name mynginx -p 80:80 -d nginx

查看所有容器状态

docker ps

访问Nginx

image

查看容器日志

docker logs mynginx

持续日志输入

docker logs -f mynginx

使用ctrl + c 关闭持续输出

进入容器操作

进入容器之后,nginx的环境、配置、运行文件全部都在这个文件系统中,包括想要修改的html文件。

docker exec -it mynginx bash

修改Nginx文件

查看DockerHub网站中的nginx页面,可以知道nginx的html目录位置在/usr/share/nginx/html

cd /usr/share/nginx/html

容器内部没有vi 命令,无法直接修改,可以使用下面的命令:

sed -i -e 's#Welcome to nginx#祝月薪过万#g' -e 's#<head>#<head><meta charset="utf-8">#g' index.html

退出容器

exit

停止容器

docker stop mynginx

查看包括已停止容器的状态

docker ps -a

删除容器

docker rm mynginx

强制删除运行的容器

docker rm -f mynginx

创建运行Redis容器[例]

docker run --name redis -p 6379:6379 -d redis redis-server --appendonly yes
  • redis-server --appendonly yes:持久化操作
  • 12
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
Docker是一种容器化技术,它可以将应用程序及其依赖项打包成容器,提供了快速、轻量级和可移植的环境。Nginx是一个高性能的Web服务器和反向代理服务器,它可以处理大量的并发连接。Lua是一种轻量级的脚本语言,可以嵌入到Nginx中,用于定制化和扩展性能。Redis是一个高性能的内存键值存储系统,它支持多种数据结构,并提供了持久化功能。 将这些技术结合起来,可以构建一个高性能、可扩展和可靠的Web应用系统。首先,我们可以使用Docker创建一个包含Nginx、Lua和Redis容器环境。Nginx可以作为Web服务器,将用户请求转发到不同的后端服务,并通过使用Lua脚本来增加自定义的功能和处理逻辑。Redis可以作为Nginx的缓存数据库,存储一些频繁使用的数据,以提高系统的响应速度和性能。 使用Docker可以快速部署整个系统,并且容器之间相互隔离,避免了环境依赖和冲突的问题。同时,通过Docker容器编排工具,我们可以管理和扩展应用程序的实例数量,以满足流量的需求。此外,Docker还能够自动完成部署、升级和回滚等操作,提高了系统的可靠性和可维护性。 总的来说,使用DockerNginx、Lua和Redis可以搭建一个高性能、可伸缩和可靠的Web应用系统。这个系统能够提供快速的响应速度、高并发处理能力,并且具备良好的可扩展性和可维护性。同时,通过使用容器化技术,我们可以更简单地部署和管理整个应用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

VincentHu_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值