Docker从零开始:安装、部署到卸载,一文搞定全流程

在这里插入图片描述

Docker是一种开源容器化平台,它允许开发者将应用程序及其依赖打包成轻量级、可移植的容器。这些容器能确保软件在任何环境中稳定运行,无论是开发者的笔记本电脑还是生产服务器。Docker流行的原因在于其提供的隔离性、可移植性和可扩展性,它简化了软件的部署和管理,降低了环境不一致带来的问题,同时提高了开发效率和资源利用率。

Docker安装

Docker的安装部署有多种方式,1. 使用yum命令安装,2. 使用rpm包的形式进行安装;由于在工作中主要使用的是Centos发行版,下面主要介绍这两种方式;

yum命令安装
  1. 添加Docker软件源:运行以下命令添加Docker的软件源:

    sudo yum install -y yum-utils
    sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
    
  2. 安装Docker引擎:运行以下命令安装Docker引擎:

    sudo yum install -y docker-ce docker-ce-cli containerd.io
    
  3. 启动Docker服务:运行以下命令启动Docker服务:

    sudo systemctl start docker
    
  4. 设置Docker开机自启:运行以下命令设置Docker开机自启:

    sudo systemctl enable docker
    
  5. 验证安装:运行以下命令验证Docker是否成功安装并正在运行:

    sudo docker version
    

    如果一切正常,你将看到Docker的版本信息,表示Docker已成功安装并正在运行。

rpm包安装
  1. 下载RPM包:你可以从Docker官方网站下载适用于你的Linux发行版的Docker RPM包。访问以下链接:https://download.docker.com/linux/centos/7/x86_64/stable/Packages/,该链接使用的是centos7版本,具体使用的过程中,可以找到适合的发行版和架构的RPM包。

  2. 下载RPM包:使用wget命令下载RPM包。例如,如果你要下载Docker CE 20.10.7版本的RPM包,可以运行以下命令:

    wget https://download.docker.com/linux/centos/7/x86_64/stable/Packages/docker-ce-20.10.7-3.el7.x86_64.rpm
    

    这将下载名为docker-ce-20.10.7-3.el7.x86_64.rpm的RPM包。

  3. 这个给大家整理了一个Docker rpm 的安装包,以及相关的依赖,可以直接下载使用:

    链接:https://pan.quark.cn/s/42947687fb04
    提取码:LjU6
    

    也可以关注公众号【IT后浪】,回复【docker】即可下载。

  4. 安装RPM包:运行以下命令安装下载的RPM包:

    sudo rpm -i docker-ce-20.10.7-3.el7.x86_64.rpm
    

    这将安装Docker引擎和相关的依赖软件包。

  5. 启动Docker服务:运行以下命令启动Docker服务:

    sudo systemctl start docker
    
  6. 验证安装:运行以下命令验证Docker是否成功安装并正在运行:

    sudo docker version
    

    如果一切正常,你将看到Docker的版本信息,表示Docker已成功安装并正在运行。

Dcoker常用命令

  1. 启动Docker服务:

    sudo systemctl start docker
    
  2. 停止Docker服务:

    sudo systemctl stop docker
    
  3. 重启Docker服务:

    sudo systemctl restart docker
    
  4. 查看Docker服务状态:

    sudo systemctl status docker
    
  5. 设置Docker开机自启:

    sudo systemctl enable docker
    
  6. 关闭Docker开机自启:

    sudo systemctl disable docker
    
  7. 拉取镜像:

    docker pull <image_name>
    
  8. 列出本地镜像:

    docker images
    
  9. 运行容器:

    docker run <image_name>
    
  10. 列出正在运行的容器:

    docker ps
    
  11. 列出所有容器(包括已停止的):

    docker ps -a
    
  12. 停止容器:

    docker stop <container_id>
    
  13. 启动容器:

    docker start <container_id>
    
  14. 进入容器:

    docker exec -it <container_id> /bin/bash
    
  15. 删除容器:

    docker rm <container_id>
    
  16. 删除镜像:

    docker rmi <image_id>
    

这些是一些常用的Docker命令;其中,<image_id>表示镜像id,<image_name> 表示镜像名称,<container_id>表示容器id,使用过程中,需要将其替换成具体的镜像或者容器值;可以帮助你管理容器和镜像。还有其他更高级的命令和选项,你可以通过查阅Docker官方文档来了解更多信息。

Docker卸载

  1. 停止Docker服务:

    sudo systemctl stop docker
    
  2. 查找已安装的docker软件包:

    yum list installed | grep docker
    
  3. 移除Docker软件包:

    • 如果你使用的是apt包管理器(如Ubuntu):

      sudo apt-get purge docker-ce docker-ce-cli containerd.io
      
    • 如果你使用的是yum包管理器(如CentOS):

      sudo yum remove docker-ce docker-ce-cli containerd.io
      
  4. 删除Docker相关文件和目录:

    sudo rm -rf /var/lib/docker
    
  5. 删除Docker用户组:

    sudo groupdel docker
    
  6. 删除Docker配置文件(可选):

    sudo rm -rf /etc/docker
    

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/48772.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

2024年展望:人工智能领域将呈现怎样的发展趋势?

2024年&#xff0c;人工智能&#xff08;AI&#xff09;领域将继续保持强劲的发展势头&#xff0c;并呈现出多个重要的发展趋势。以下是对该领域未来发展趋势的详细展望&#xff1a; 一、技术创新与融合 多模态生成式AI的崛起&#xff1a; 多模态生成式AI系统能够处理文本、声…

C# 将字符串数组以树型结构化

例如字符串数组&#xff1a; string[] arr { "1","3-4-5-6-7", "2","3-4","3-4-5","3-4-5-6", "3", "6", "4", "6-1", "6-2", "5", "6-1-1&…

李艳波医生怎么挂号?

对于想要预约李艳波医生的患者来说&#xff0c;北京仁爱堂提供了两种便捷的预约方式&#xff1a;来院面诊和视频会诊。来院面诊是传统的就诊方式&#xff0c;患者可以直接前往仁爱堂&#xff0c;与李艳波医生面对面交流&#xff0c;详细了解自己的病情并接受专业的治疗建议。这…

解决Github Copilot无效,无法使用的问题

如果是在Copilot的终端报错 Invalid copilot token: missing token: 403 原因有三种 1&#xff0c;你的账号没有订阅正版的服务&#xff0c;解决办法是购买正版服务 2&#xff0c;你在购买服务的时候&#xff0c;Github上 billing information 地址信息和支付卡片的地址信息不…

关卡1-3:Git

关卡1-3&#xff1a;Git Git基础fork并拉取本次课程的源创建一个gitee自己的仓库 这个是internLM的3期训练营的通关笔记。 任务&#xff1a; 熟悉git熟悉使用git托管平台&#xff0c;常见有github、giteefork官方的训练营的教程项目&#xff0c;提交文件到自己的项目&#xf…

openGauss触发器详解

openGauss 是一款开源关系型数据库管理系统&#xff0c;广泛应用于企业级应用中。随着数据量的增长和业务逻辑的复杂化&#xff0c;数据库管理和操作的自动化需求越来越高。触发器&#xff08;Triggers&#xff09;作为数据库中重要的编程工具&#xff0c;能够极大地简化复杂操…

【python】OpenCV—Point Polygon Test

文章目录 1、完整代码2、涉及到的库cv2.pointPolygonTestcv2.minMaxLoc 1、完整代码 from __future__ import print_function from __future__ import division import cv2 as cv import numpy as np # Create an image r 100 src np.zeros((4*r, 4*r), dtypenp.uint8) # 创…

前端学习3——自学习梳理

1.学习一下盒子模型(盒子就是元素&#xff0c;标签) 盒子模型又分为4种&#xff1a;块级&#xff0c;内联级&#xff0c;内联块级&#xff0c;弹性盒子 (弹性盒子续在下一节) 2.元素的结构 1.盒子模型 <!DOCTYPE html> <html lang"en"> <head>&l…

【C++杂货铺】智能指针

目录 &#x1f308; 前言&#x1f308; &#x1f4c1; 内存泄漏 &#x1f4c2; 概念 &#x1f4c2; 分类 &#x1f4c2; 如何避免 &#x1f4c1; RAII &#x1f4c1; C11智能指针 &#x1f4c2; auto_ptr &#x1f4c2; unique_ptr &#x1f4c2; shared_ptr &#x1…

电子电器架构 --- 智能汽车的大脑(域控制器)

我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不对。非必要不费力证明自己,无利益不试图说服别人,是精神上的节…

QT--进程

一、进程QProcess QProcess 用于启动和控制外部进程&#xff0c;管理其输入输出流。 使用方法 start()&#xff1a;启动一个新进程。setStandardInputFile()&#xff1a;将文件作为标准输入。将进程的标准输入&#xff08;stdin&#xff09;重定向到指定的文件。换句话说&am…

AV1技术学习:Constrained Directional Enhancement Filter

CDEF允许编解码器沿某些(可能是倾斜的)方向应用非线性消阶滤波器。它以88为单位进行。如下图所示&#xff0c;通过旋转和反射所示的三个模板来定义八个预设方向。 Templates of preset directions and their associated directions. The templates correspond to directions of…

MATLAB: ode45 求解常微分方程

引入 ode45 是 MATLAB 中用于求解非刚性常微分方程&#xff08;ODE&#xff09;的数值方法。它基于 Runge-Kutta 方法&#xff0c;并具有自适应步长调整机制&#xff0c;能够在一定误差控制范围内高效地计算 ODE 的数值解。 下面我们通过这个包含详细注释的代码&#xff0c;一…

Windows 11 系统对磁盘进行分区保姆级教程

Windows 11磁盘分区 磁盘分区是将硬盘驱动器划分为多个逻辑部分的过程&#xff0c;每个逻辑部分都可以独立使用和管理。在Windows 11操作系统中进行磁盘分区主要有以下几个作用和意义&#xff1a; 组织和管理数据&#xff1a;分区可以帮助用户更好地组织他们的数据&#xff0c…

无人机之降落操作及紧急情况处理

一、无人机降落操作 1、选择降落地点 a.提前选择一个平坦且没有障碍物的降落点&#xff1b; b.确认降落点周围没有行人或障碍物&#xff0c;保证降落的安全性。 2、降低飞行高度 a.缓慢降低飞行高度&#xff0c;尽量保持匀速下降&#xff0c;防止因下降过快导致无人机受损…

Day20 | 39. 组合总和 40.组合总和II 131.分割回文串

语言 Java 39. 组合总和 组合总和 题目 给你一个 无重复元素 的整数数组 candidates 和一个目标整数 target &#xff0c;找出 candidates 中可以使数字和为目标数 target 的 所有 不同组合 &#xff0c;并以列表形式返回。你可以按 任意顺序 返回这些组合。 candidate…

最新可用度盘不限速后台系统源码_去授权开心版

某宝同款度盘不限速后台系统源码&#xff0c;验证已被我去除&#xff0c;两个后端系统&#xff0c;账号和卡密系统 第一步安装宝塔&#xff0c;部署卡密系统&#xff0c;需要环境php7.4 把源码丢进去&#xff0c;设置php7.4&#xff0c;和伪静态为thinkphp直接访问安装就行 …

qt 如何制作动态库插件

首先 首先第一点要确定我们的接口是固定的&#xff0c;也就是要确定 #ifndef RTSPPLUGIN_H #define RTSPPLUGIN_H #include "rtspplugin_global.h" typedef void (*func_callback)(uint8_t* data,int len,uint32_t ssrc,uint32_t ts,const char* ipfrom,uint16_t f…

【前端学习笔记】CSS基础一

一、什么是CSS 1.CSS 介绍 CSS&#xff08;Cascading Style Sheets&#xff0c;层叠样式表&#xff09;是一种用来控制网页布局和设计外观的样式语言。它使得开发者可以分离网页的内容&#xff08;HTML&#xff09;和表现形式&#xff08;样式&#xff09;&#xff0c;提高了…

Spring Security 介绍

1.概要 Spring Security是一个用于在Java应用程序中实现身份验证和访问控制的强大框架。它可以轻松地集成到任何基于Spring的应用程序中&#xff0c;提供了一套丰富的功能来保护应用程序的安全性。 https://spring.io/projects/spring-security/ demo:https://docs.spring.i…