文章目录

  • 1. docker 容器基本操作
  • 2. 案例:创建运行一个Nginx容器
  • 2.1 去docker hub查看Nginx的容器运行命令
  • 2.2 linux终端输入:docker run --name mn -p 80:80 -d nginx
  • 2.3 查看容器状态
  • 2.4 我们现在来查看nginx容器的日志(我们刚刚访问了容器)
  • 3. 案例:进入Nginx容器,修改HTML文件内容,添加“Hello World 你好世界”
  • 3.1 进入容器
  • 3.2 进入nginx的HTML所在目录/usr/share/nginx/html
  • 3.3 步骤三:修改index.html的内容
  • 4. 案例:退出nginx容器,然后停掉nginx容器
  • 5. 案例:启动nginx容器,然后删除nginx容器
  • 6. 案例:创建并运行一个redis容器,并且支持数据持久化
  • 7. 案例:进入redis容器,并执行redis-cli客户端命令,存入num=666
  • 8. 小结


1. docker 容器基本操作

docker容器相关命令:

docker podman 容器种类 docker容器实战_docker podman 容器种类


2. 案例:创建运行一个Nginx容器


2.1 去docker hub查看Nginx的容器运行命令

docker hub官网

docker podman 容器种类 docker容器实战_docker_02

docker podman 容器种类 docker容器实战_docker podman 容器种类_03

我们找到了这样的一条命令:

docker run --name some-nginx -d -p 8080:80 some-content-nginx

我们稍微改造一下:

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

命令解读:

docker podman 容器种类 docker容器实战_容器_04

整体解读一下就是:基于最新版本的nginx创建了一个容器,然后给他起了一个名字mn,做了80:80的端口映射,并让容器后台运行(持续运行)。


2.2 linux终端输入:docker run --name mn -p 80:80 -d nginx

docker podman 容器种类 docker容器实战_docker_05


2.3 查看容器状态

docker podman 容器种类 docker容器实战_redis_06

我们去访问nginx容器:

我们先查看linux的ip:

docker podman 容器种类 docker容器实战_docker_07

然后就可以在我们的Windows上面访问了:游览器url栏输入http://192.168.135.130:80即可访问

docker podman 容器种类 docker容器实战_容器_08


2.4 我们现在来查看nginx容器的日志(我们刚刚访问了容器)

docker podman 容器种类 docker容器实战_redis_09

docker podman 容器种类 docker容器实战_redis_10

这样监控太麻烦了,我们来设置持续的日志输出(自动打印日志):

docker podman 容器种类 docker容器实战_nginx_11

m命令行输入:docker logs -f mn即可持续的输出日志

docker podman 容器种类 docker容器实战_docker podman 容器种类_12


3. 案例:进入Nginx容器,修改HTML文件内容,添加“Hello World 你好世界”


3.1 进入容器

docker podman 容器种类 docker容器实战_redis_13

运行结果:

docker podman 容器种类 docker容器实战_docker podman 容器种类_14


3.2 进入nginx的HTML所在目录/usr/share/nginx/html

docker podman 容器种类 docker容器实战_容器_15

运行结果:

docker podman 容器种类 docker容器实战_redis_16

补充说明:我们怎么知道nginx的HTML所在目录是/usr/share/nginx/html?

docker hub官网给我的提示即可:

docker podman 容器种类 docker容器实战_容器_17


docker podman 容器种类 docker容器实战_容器_18


3.3 步骤三:修改index.html的内容

我们先使用vim命令去试一下,发现行不通,因为容器里面其实是一个阉割版的系统,只保留了必要的命令。

docker podman 容器种类 docker容器实战_nginx_19

不过我们可以通过下面的命令去修改文件:

# 把Welcome to nginx替换为Hello World 你好世界
sed -i 's#Welcome to nginx#Hello World 你好世界#g' index.html
# 支持中文
sed -i 's#<head>#<head><meta charset="utf-8">#g' index.html

然后我们重新去访问nginx:

docker podman 容器种类 docker容器实战_docker podman 容器种类_20


4. 案例:退出nginx容器,然后停掉nginx容器

docker podman 容器种类 docker容器实战_docker podman 容器种类_21


docker podman 容器种类 docker容器实战_容器_22


5. 案例:启动nginx容器,然后删除nginx容器

docker podman 容器种类 docker容器实战_docker_23


6. 案例:创建并运行一个redis容器,并且支持数据持久化

由于前面已经演示过了,我这里就不做详细说明,直接搬出步骤和最后的命令。

docker podman 容器种类 docker容器实战_容器_24

命令行输入:docker run --name redis -p 6379:6379 -d redis redis-server --appendonly yes

运行结果:

docker podman 容器种类 docker容器实战_redis_25


7. 案例:进入redis容器,并执行redis-cli客户端命令,存入num=666

docker podman 容器种类 docker容器实战_docker_26


8. 小结

docker podman 容器种类 docker容器实战_nginx_27


docker podman 容器种类 docker容器实战_docker podman 容器种类_28