当前位置: 首页 > news >正文

docker 常用命令教程

文章目录

  • docker常用命令教程
    • 1. 镜像
      • 拉取镜像
      • 删除镜像
      • 查看镜像列表
    • 2. 容器
      • 运行容器
      • 启动容器
      • 停止容器
      • 查看容器
      • 设置容器开机自启
      • 向容器输入命令
    • 3. 镜像传输
      • 提交容器为镜像
      • 镜像解压缩
      • 登录命令
      • 推送远程仓库(需先在主机上登录账号)

docker常用命令教程

1. 镜像

拉取镜像

docker pull 镜像:版本号

删除镜像

docker rmi 镜像名/镜像id

查看镜像列表

docker image list

2. 容器

运行容器

docker run 镜像名

常用选项:

--name=: 指定容器名
-d: 后台运行
--restart=: 指定重启策略 默认为nono: 不自动重启容器on-failure: 只有在容器以非零状态码退出时才重启。always: 无论容器以什么状态码退出,都重启容器。unless-stopped:始终尝试重启容器,除非容器被手动停止。
-p: 向主机映射容器端口。-p 80:80 将主机的80端口指向容器中的80端口

启动容器

docker start 容器名

停止容器

docker stop 容器名

查看容器

docker ps 
选项: -a: 查看所有

设置容器开机自启

docker update 容器名 

向容器输入命令

docker exec 容器名
选项:
-d: 后台运行
-i: 需要交互式输入命令使用, 通常和-t一起出现组成 -it
-t: 显示一个容器伪终端
-u: 以指定用户身份运行. 可以指定用户名、用户id或用户组id
-e: 指定环境变量
--rm: 在命令执行完成后自动删除容器, 通常用于一次性任务中
--network: 指定容器网络模式
--privileged: 以特权模式运行

3. 镜像传输

提交容器为镜像

docker commit 容器id 容器名:版本号
选项: 
-a: 指定作者
-m: 说明提交改变内容

镜像解压缩

# 将镜像保存为压缩包
docker save -o 压缩包名.tar 镜像名:版本号# 将镜像压缩包加载为镜像
docker load -i 压缩包名.tar

登录命令

docker login 	# 登录 docker.hub
docker logout 	# 退出 docker.hub

推送远程仓库(需先在主机上登录账号)

docker tag 镜像名:版本号 登录账号的仓库名/镜像名:版本号

容器挂载:允许将主机上的文件或目录挂载到容器内部,以实现数据的共享和持久化.

  1. 卷挂载

    • 使用Docker管理的卷来存储数据。
    • 示例命令:docker run -v myvolume:/container/path myimage
  2. 绑定挂载

    • 将主机上的文件或目录与容器内的路径关联。

    • 示例命令:

    • docker run -v /host/path:/container/path myimage
      
  3. tmpfs挂载

    • 在容器的内存中创建一个临时文件系统。

    • 数据不会持久保存,重启容器后数据会丢失。

    • 示例命令:

    • docker run --mount type=tmpfs,destination=/container/path myimage
      

http://www.mrgr.cn/news/93713.html

相关文章:

  • Ubuntu 下 nginx-1.24.0 源码分析 (1)
  • 【 <一> 炼丹初探:JavaWeb 的起源与基础】之 Servlet 过滤器:实现请求的预处理与后处理
  • VBA 列方向合并单元格,左侧范围大于右侧范围
  • WSL安装及问题
  • Nginx快速安装-Linux-CentOS7
  • 美杜莎:带多个解码头的简单LLM推理加速框架
  • UI自动化测试Selenium安装教程(1)
  • 【Linux内核系列】:深入解析输出以及输入重定向
  • selenium库
  • TI毫米波雷达开发 —— 串口输出数据解析
  • 09第三方库的使用
  • VBA 数据库同一表的当前行与其他行的主键重复判断实现方案
  • 迅投miniQMT量化交易之【网格交易】的实现(七)——__init__()方法
  • 【网络】HTTP协议、HTTPS协议
  • 【linux网络编程】套接字编程API详细介绍
  • 08动态库与静态库
  • element-plus中table组件的使用
  • 算法进阶——双指针
  • c语言笔记 数组进阶题目的理解
  • 渗透测试之利用sql拿shell(附完整流程+防御方案)【上】