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

查看本地镜像列表

bash 复制代码
docker images

删除本地镜像

bash 复制代码
# docker rmi [容器 ID]

docker rmi a6bd71f48f68

查找镜像

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

拉去镜像

bash 复制代码
# docker pull nginx:[标签] 
# 不指定标签,则下载latest标签
docker pull nginx

查看本地镜像列表

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

查看镜像信息

bash 复制代码
docker info

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

进入Docker Root Dir并查看目录
bash 复制代码
cd /var/lib/docker/

ll
进入image
bash 复制代码
cd image/overlay2/

ll
查看repositories.json
bash 复制代码
cat repositories.json 
根据镜像ID查看信息
bash 复制代码
# docker inspect [镜像ID]

docker inspect a6bd71f48f68

给镜像增加新的标签

bash 复制代码
# 格式:docker tag 名称:[标签] 新名称:[新标签]

docker tag nginx:latest nginx:test

镜像ID是同一个。

导出镜像文件

bash 复制代码
# docker save -o 新镜像名  源镜像名

docker save -o nginx-test  nginx:latest

运行Nginx容器

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

进入容器,修改文件

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

cd /usr/share/nginx/html
bash 复制代码
# 修改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创建。
bash 复制代码
docker commit -m="update index" -a="chengxuyuanshitang" b8e5e42969da  shitang/nginx:v2
  • -m: 提交的描述信息 ,如:update index
  • -a: 指定镜像作者 ,如:chengxuyuanshitang
  • a6bd71f48f68:容器 ID
  • shitang/nginx:v2: 指定要创建的目标镜像名

再次查看镜像

bash 复制代码
docker images



相关推荐
九皇叔叔几秒前
Linux Shell 中的 $():命令替换的核心用法
linux·运维·chrome
筑梦之路12 分钟前
etcd节点噶了导致的k8s集群瘫痪处理参考——筑梦之路
docker·kubernetes·etcd
liulilittle39 分钟前
Linux内核网络优化:两个网络调优解决方案
linux·运维·服务器·网络·内核·信息与通信·通信
hweiyu001 小时前
Linux运维实战:系统及服务管理(视频教程)
linux·运维·服务器
三坛海会大神5551 小时前
K8S入门1.20版本部署
云原生·容器·kubernetes
柳鲲鹏2 小时前
交叉编译:strip: Unable to recognise the format of the input file xx.c.o
linux·运维·服务器
Le1Yu3 小时前
微服务拆分以及注册中心
linux·运维·服务器
zzzsde3 小时前
【Linux】linux基础指令入门(1)
linux·运维·学习
moxiaoran57533 小时前
nginx中proxy_pass配置
运维·服务器·nginx
风清再凯3 小时前
03-docker存储与网络
网络·docker·容器