【docker】镜像使用(Nginx 示例)

2023-12-13 12:54:55

查看本地镜像列表

docker images

删除本地镜像

# docker rmi [容器 ID]

docker rmi a6bd71f48f68

查找镜像

docker search nginx

参数介绍
  • NAME: 镜像仓库源的名称
  • DESCRIPTION: 镜像的描述
  • OFFICIAL: 是否 docker 官方发布
  • STARS: 点赞、喜欢
  • AUTOMATED: 自动构建。

拉去镜像

# docker pull nginx:[标签] 
# 不指定标签,则下载latest标签
docker pull nginx

?查看本地镜像列表

docker images

参数介绍
  • REPOSITORY:表示镜像的仓库源
  • TAG:镜像的标签
  • IMAGE ID:镜像ID
  • CREATED:镜像创建时间
  • SIZE:镜像大小

查看镜像信息

docker info

看到 Docker Root Dir: /var/lib/docker

进入Docker Root Dir并查看目录
cd /var/lib/docker/

ll

进入image
cd image/overlay2/

ll

查看repositories.json
cat repositories.json 
根据镜像ID查看信息
# docker inspect [镜像ID]

docker inspect a6bd71f48f68

给镜像增加新的标签

# 格式:docker tag 名称:[标签] 新名称:[新标签]

docker tag nginx:latest nginx:test

镜像ID是同一个。

导出镜像文件

# docker save -o 新镜像名  源镜像名

docker save -o nginx-test  nginx:latest

?运行Nginx容器

docker run --name nginx-demo -p 8086:80 -d nginx
  • --name nginx-demo? : 容器名
  • -p 8086:80? ??: 端口进行映射,将本地 8086 端口映射到容器内部的 80 端口
  • -d nginx? ?:??设置容器在在后台一直运行

?进入容器,修改文件

 docker exec -it nginx-demo  bash
  • docker? exec : 进入容器内部,执行一个命令
  • -it :? ?给进入的容器创建一个标准输入、输出终端,允许我们与容器交互
  • nginx-demo:进入的容器的名称
  • bash:进入容器后执行的命令,bash是一个linux终端交互命令
# 进入nginx的HTML所在目录

cd /usr/share/nginx/html
# 修改index.html的内容
sed -i -e 's#Welcome to nginx#程序员食堂 开饭啦#g' -e 's#<head>#<head><meta charset="utf-8">#g' index.html

退出

exit 

创建镜像

commit方式创建和Dockerfile 方式创建。推荐使用Dockerfile创建。但是在这里我们使用commit创建。
docker commit -m="update index" -a="chengxuyuanshitang" b8e5e42969da  shitang/nginx:v2
  • -m: 提交的描述信息? ,如:update index
  • -a: 指定镜像作者? ,如:chengxuyuanshitang
  • a6bd71f48f68:容器 ID
  • shitang/nginx:v2: 指定要创建的目标镜像名

再次查看镜像

docker images




文章来源:https://blog.csdn.net/wochunyang/article/details/134952271
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。