Docker容器安装启动以及基本指令

2023-11-10

Docker使用步骤

一、ubuntu安装Docker

  1. 更新ubuntu的apt源索引

    • sudo apt-get update
  2. 安装包允许apt通过HTTPS使用仓库

    sudo apt-get install apt-transport-https ca-certificates curl software-properties-common

  3. 添加Docker官方GPG key

    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -

  4. 设置Docker稳定版仓库

    sudo add-apt-repository “deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable”

  5. 添加仓库后,更新apt源索引

    sudo apt-get update

  6. 安装最新版Docker CE(社区版)

    sudo apt-get install docker-ce

  7. 检查Docker CE是否安装正确

    sudo docker run hello-world

    说明: 为了避免每次命令都输入sudo,可以设置用户权限,注意执行后须注销重新登录

    sudo usermod -a -G docker $USER

二、启动与停止

安装完成Docker后,默认已经启动了docker服务,如需手动控制docker服务的启停,可执行如下命令
# 启动docker
sudo service docker start

# 停止docker
sudo service docker stop

# 重启docker
sudo service docker restart

三、Docker指令

  1. 操作镜像

    ◆ docker image pull library/hello-world              => 从仓库中拉取镜像到本地
      说明:
      library/hello-world    image 文件在仓库里面的位置
      library				  image 文件所在的组
      hello-world 		  image 文件的名字。
      由于 Docker 官方提供的 image 文件,都放在library组里面,所以它的是默认组,可以省略
    
    ◆ docker image pull hello-world						=> 从仓库中拉取镜像到本地
    ◆ docker image ls						   		   => 查看镜像列表
    ◆ docker image rm 镜像名或镜像id			   		    => 删除镜像
    ◆ docker load -i 导入的文件 		   	                  => 将镜像文件加载到本地得到镜像
    
  2. 容器操作

    ◆ docker run [option] 镜像名 [向启动容器中传入的命令]     => 创建容器
    
     参数说明:
     -i 表示以“交互模式”运行容器
     -t 表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去。即 分配一个伪终端。
     --name 为创建的容器命名
     -v 表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录,即 宿主机目录:容器中目录),可以使 用多个-v 做多个目录或文件映射。注意:最好做目录映射,在宿主机上做修改,然后 共享到容器上。
     -d 在run后面加上-d参数,则会创建一个守护式容器在后台运行(这样创建容器后不 会自动登录容器,如果只加-i -t 两个参数,创建后就会自动进去容器)。
     -p 表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个-p 做多个端口映射
     -e 为容器设置环境变量
     --network=host 表示将主机的网络环境映射到容器中,容器的网络与主机相同
    
    eg:
    创建一个交互式容器,并命名为myubuntu
    docker run -it --name=myubuntu ubuntu /bin/bash
    
    ◆ docker exec -it 容器名或容器id 进入后执行的第一个命令     => 进入已运行的容器
    ◆ docker container ls            					   => 列出本机正在运行的容器
    ◆ docker container ls    --all     					   => 列出本机正在运行的容器,包括已经终止运行的
    ◆ docker container start 容器名或容器id				  => 启动一个已经停止的容器
    ◆ docker container stop 容器名或容器id				  => 停止一个已经在运行的容器
    ◆ docker container kill 容器名或容器id				  => kill掉一个已经在运行的容器
    ◆ docker container rm 容器名或容器id					  => 删除容器
    ◆ docker commit 容器名 镜像名				 			 => 将容器保存为镜像
    
  3. 镜像备份与迁移

    docker save -o 保存的文件名 镜像名					    => save命令将镜像打包成文件
    
    eg:
    	docker save -o ./ubuntu.tar ubuntu
    说明:
    	docker load -i ./ubuntu.tar     在拿到镜像文件后,可以通过load方法,将镜像加载到本地
    
    
    
    ​
    
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Docker容器安装启动以及基本指令 的相关文章

  • 大多数 Linux 系统头文件与 C++ 兼容吗?

    大多数 Linux 系统头文件 API C 兼容吗 今天我试图做这样的事情 include
  • 使用 Docker 在本地主机上的“requests”连接错误

    我正在尝试开发客户端服务器应用程序 但遇到了一些问题 我的两个服务都是在单独的 docker 容器中本地开发的 客户端使用 api 从 api 获取数据requestspython 库 它可以在生产中使用 但在本地 我无法使用 reques
  • 从 Python 调用 PARI/GP

    我想打电话PARI GP http pari math u bordeaux fr dochtml gpman html仅从Python计算函数nextprime n 对于不同的n是我定义的 不幸的是我无法得到帕里蟒蛇 http code
  • sendfile64 只复制约2GB

    我需要使用 sendfile64 复制大约 16GB 的文件 到目前为止我所取得的成就是 include
  • MySQL集群启动失败

    这不是我第一次创建ndbcluster 但我没有收到这样的问题 我正在关注本手册 https hub docker com r mysql mysql cluster by mysql团队 我正在使用回显的默认配置在此 GitHub 存储库
  • 容器中的 JVM 计算处理器错误?

    最近我又做了一些研究 偶然发现了这一点 在向 OpenJDK 团队抱怨之前 我想看看是否有其他人观察到这一点 或者不同意我的结论 因此 众所周知 JVM 长期以来忽略了应用于 cgroup 的内存限制 众所周知 现在从 Java 8 更新某
  • 如何在 MacBook Pro 上的 Docker 容器内运行 tkinter?

    我正在尝试运行一个使用以下命令的 python GUI 应用程序tkinter我的 MacBook Pro 上的 docker 容器内的模块 所以我安装了XQuartz https www xquartz org 并跟随本教程 https
  • 尝试安装 LESS 时出现“请尝试以 root/管理员身份再次运行此命令”错误

    我正在尝试在我的计算机上安装 LESS 并且已经安装了节点 但是 当我输入 node install g less 时 出现以下错误 并且不知道该怎么办 FPaulMAC bin paul npm install g less npm ER
  • 无法初始化 NVML:几个小时后 Docker 中出现未知错误

    我遇到有趣而奇怪的问题 当我使用 GPU 启动 docker 容器时 它工作正常 并且我看到 docker 中的所有 GPU 然而 几个小时或几天后 我无法在docker中使用GPU 当我做nvidia smi在泊坞窗机器中 我看到这条消息
  • 无法使用 wget 在 CentOS 机器上安装 oracle jdk

    我想在CentOS上安装oracle java jdk 8 我无法安装 java jdk 因为当我尝试使用命令安装 java jdk 时 root ADARSH PROD1 wget no cookies no check certific
  • 如何在Linux内核源代码中打印IP地址或MAC地址

    我必须通过修改 Linux 内核源代码来稍微改变 TCP 拥塞控制算法 但为了检查结果是否正确 我需要记录 MAC 或 IP 地址信息 我使用 PRINTK 函数来打印内核消息 但我感觉很难打印出主机的MAC IP地址 printk pM
  • Docker 教程入门第 4 部分连接被拒绝

    我不明白我错过了什么 docker compose yml version 3 services web replace username repo tag with your name and image details image sv
  • CentOS:无法安装 Chromium 浏览器

    我正在尝试在 centOS 6 i 中安装 chromium 以 root 用户身份运行以下命令 cd etc yum repos d wget http repos fedorapeople org repos spot chromium
  • 热重载在docker中运行的java程序

    我开发了一个java程序 应该在docker中运行 然而 我在调试docker中运行的java程序时遇到了很多痛苦 我在网上搜索 一些教程提出了像 spring dev tools 这样的工具 因为我的java程序是基于spring boo
  • Redis+Docker+Django - 错误 111 连接被拒绝

    我正在尝试使用 Redis 作为使用 Docker Compose 的 Django 项目的 Celery 代理 我无法弄清楚我到底做错了什么 但尽管控制台日志消息告诉我 Redis 正在运行并接受连接 事实上 当我这样做时 docker
  • 如何管理AWS ECS中docker镜像的版本?

    AWS ECS 服务指向一个任务定义 其中包含 docker 镜像的名称 包括标签 因此 当我创建新版本的 docker 映像时 我有两种可能性 将任务定义更新到新版本 然后更新服务以指向任务定义的新版本 使用一些标签指向最后一个版本 假设
  • 安装J语言的JQt IDE,出现错误

    我一直按照这里的说明进行操作 http code jsoftware com wiki System Installation Linux http code jsoftware com wiki System Installation L
  • Tomcat 6找不到mysql驱动

    这里有一个类似的问题 但关于类路径 ClassNotFoundException com mysql jdbc Driver https stackoverflow com questions 1585811 classnotfoundex
  • Linux 中什么处理 ping?

    我想覆盖 更改 linux 处理 ping icmp echo 请求数据包的方式 这意味着我想运行自己的服务器来回复传入的 icmp 回显请求或其他 数据包 但为了使其正常工作 我想我需要禁用 Linux 的默认 ping icmp 数据包
  • ubuntu:升级软件(cmake)-版本消歧(本地编译)[关闭]

    Closed 这个问题是无关 help closed questions 目前不接受答案 我的机器上安装了 cmake 2 8 0 来自 ubuntu 软件包 二进制文件放置在 usr bin cmake 中 我需要将 cmake 版本至少

随机推荐

  • AM、FM、PM调制技术

    AM调制 幅度调制 本博客为转载 原文部分截取 仅供博主自己学习 请点击跳转原文 概念 使载波的振幅按照所需传送信号的变化规律而变化 但频率保持不变的调制方法 优缺点 传播距离远 但是抗干扰能力差 分类 普通调幅 AM 双边带调幅 DSB
  • 文献计量三大定律之一---洛特卡定律及普赖斯定律

    科学生产率是洛特卡定律的基础 科学生产率 Scientific Productivity 是指科学家 科研人员 在科学上所表现出的能力和工作效率 通常用其生产的科学文献的数量来衡量 1926年 洛特卡在一篇论文中提出了科学生产率的频次分布规
  • CentOS 7升级gcc/CentOS 7 yum 安装gcc

    centos7自带的gcc版本是4 8 手动升级安装很锻炼 毕竟已经0202年了 devtoolset 7 Developer Toolset is designed for developers working on CentOS or
  • phpmyadmin打不开500错误

    phpmyadmin打不开500错误 提示500错误 可以去掉友好提示 显示出具体错误 我处理的时候显示的具体错误是白页现象 解决方案 给上级目录一个users写入权限即可 如直接在某个磁盘下 可以给它新建一个上级目录放进去 ps 很多ph
  • c语言指令 mul bl,MUL是进行无符号乘法的指令

    MUL 无符号乘法 指令有三种格式 第一种是将8位的操作数于al相乘 第二种是将16位的操作数与ax相乘 第三种是将32位的操作数与eax进行相乘 乘数和被乘数大小必须相同 乘积的尺寸是乘数 被乘数大小的两倍 三种格式都既接受寄存器操作数
  • 【C语言实现简单数据结构】单链表

    C语言实现简单数据结构 单链表 心有所向 日复一日 必有精进 文章目录 C语言实现简单数据结构 单链表 前言 链表 1 1链表的概念和结构 1 2链表的分类 1 3单链表的实现 1 3 1接口实现 1 3 2动态申请一个结点 1 3 3单链
  • 【Linux】文件目录操作指令(pwd、ls、cd、mkdir、rmdir、touch、cp、rm、mv、cat、echo、tail等)

    目录 1 指定运行级别 1 1 基本介绍 1 2 应用实例 2 帮助指令 2 1 man获得帮助信息 2 2 help指令 3 文件目录类 3 1 pwd指令 3 2 ls指令 3 3 cd指令 3 4 mkdir指令 3 5 rmdir指
  • sort自定义排序方式

    2022 05 14 sort 方式1 结构体内重载运算符 方式2 cmp参数 与优先队列类比 Java和python的处理方式 Java python sort sort a begin a end sort a a n n为数组长度 通
  • C/C++Unix网络编程-IPC简介

    IPC是进程间通信的简称 进程 线程与信息共享 Unix进程间的信息共享的方式 1 左边的两个进程共享存留于文件系统中某个文件上的某些信息 为访问这些信息 每个进程都得穿越内核 例如read write lseek等 当一个文件有待更新时
  • Hadoop MapReduce执行过程详解(带hadoop例子)

    为什么80 的码农都做不了架构师 gt gt gt 分析MapReduce执行过程 MapReduce运行的时候 会通过Mapper运行的任务读取HDFS中的数据文件 然后调用自己的方法 处理数据 最后输出 Reducer任务会接收Mapp
  • UE4_模型_Bound(边界)

    放置在关卡中的每个Actor都有一个bound bound由两部分组成 蓝色的长方体和黄色的球体 Bound是专门用来测试一个物体是否可见的 边界球用于通过简单的距离测试进行快速碰撞检测 而且 通常情况下 它的大小大于它包含的对象 另一方面
  • 逻辑左移、逻辑右移、算术左移、算术右移、循环左移、循环右移的学习

    逻辑左移时 最高位丢失 最低位补0 逻辑右移时 最高位补0 最低位丢失 算术左移时 依次左移一位 尾部补0 最高的符号位保持不变 算术右移时 依次右移一位 尾部丢失 符号位右移后 原位置上复制一个符号位 循环左移时 将最高位重新放置最低位
  • Vue promise的用法

    1 promise是什么 它可以说是异步编程的一种解决方法 就拿传统的ajax发请求来说 单个还好 如果是一个请求回来的数据还要被其他请求调用 不断地嵌套 可想而知 代码看起来是很乱的 promise主要是为了解决这种情景而出现的 2 简单
  • 山东科技大学oj题库1165 打印金字塔 之一

    include
  • vs查看宏展开

    宏在我们的代码中能经常给我们带来很大的便利 但是有些宏会造成意向不到的错误 能够查看宏展开就能够查看宏错误的根源 VS2008对编译是不保存预处理的文件信息的 而宏展开的信息就是在预编译阶段 如下图 工程属性 配置属性 c c 预处理器 生
  • 【数据分析】数据分析方法(七):AARRR 模型分析 & 漏斗分析

    数据分析方法 七 AARRR 模型分析 漏斗分析 1 AARRR 模型分析方法 如果把产品看作一个鱼塘 使用产品的用户看作鱼塘里的鱼 AARRR 模型的五个环节可以描述如下 获取用户 Acquisition 想办法给鱼塘里添加新的鱼 从而扩
  • vue注册自定义指令

    src 新建文件夹directive directive下新建modules文件夹 里面存放指令js文件 新建prevetMultiClick jk 防按钮多次重复点击的指令 export default inserted el bindi
  • python open3d点云可视化(本节会根据实际所用持续更新)

    本文为博主原创文章 未经博主允许不得转载 本文为专栏 python三维点云从基础到深度学习 系列文章 地址为 https blog csdn net suiyingy article details 124017716 为了便于加强对点云数
  • 基于cocos2d-x的2D空间中的OBB(Orient Bounding Box)碰撞检测算法

    引言 最近在与好友聊天的过程中 好友问我如何实现类似这样的游戏 它主要想知道 如何检测旋转过后的物体与其他物体之间的碰撞 我们知道 在没有旋转的情况下 对于这样的方块 比较规则的物体 我们完全可以使用AABB Axie Align Bond
  • Docker容器安装启动以及基本指令

    Docker使用步骤 一 ubuntu安装Docker 更新ubuntu的apt源索引 sudo apt get update 安装包允许apt通过HTTPS使用仓库 sudo apt get install apt transport h