【Docker】快速入门之Docker的安装及使用

这篇具有很好参考价值的文章主要介绍了【Docker】快速入门之Docker的安装及使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、引言

1、什么是Docker

        Docker是一个开源的应用容器引擎,它让开发者可以将他们的应用及其依赖打包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

        Docker的优点包括简化流程、避免选择恐惧症和节省开支。使用Docker可以更快地打包、测试以及部署应用程序,并可以缩短从编写到部署运行代码的周期。Docker的架构包括Docker daemon(Docker守护进程),这是一个运行在宿主机(DOCKER-HOST)的后台进程。

        Docker进程和普通的进程没有任何区别,它就是一个普通的应用进程,不过是用来操作镜像文件的。所以Docker进程+构建的应用镜像文件就等于Docker容器。

2、Docker三要素

①🐉Docker镜像(Image)

        Docker镜像是一个只读的模板,包含了运行环境、文件系统、应用程序和依赖等。镜像可以用来创建Docker容器,一个镜像可以被多个容器同时使用。

例如:一个镜像可以包含一个完整的 ubuntu 操作系统环境,里面仅安装了 Apache 或用户需要的其它应用程序。

镜像可以用来创建 Docker 容器。

Docker 提供了一个很简单的机制来创建镜像或者更新现有的镜像,用户甚至可以直接从其他人那里下载 一 个已经做好的镜像来直接使用。

②🐉Docker仓库(Container)

        容器是基于镜像创建的一个可运行的实例,它是一个独立且隔离的运行环境。容器可以被快速创建、启动、停止、删除,并且具有轻量级、可移植性和可复用性等特点。可以把容器看做是一个简易版的Linux环境(包括root用户权限、进程空间、用户空间和网络空间等)和运行在其中的应用程序。

仓库是集中存放镜像文件的场所。

有时候会把仓库和仓库注册服务器(Registry)混为一谈,并不严格区分。实际上,仓库注册服务器上 往往存放着多个仓库,每个仓库中又包含了多个镜像,每个镜像有不同的 标签(tag)。

仓库分为公开仓库(Public)和私有仓库(Private)两种形式。

最大的公开仓库是 Docker Hub,存放了数量庞大的镜像供用户下载。 当然,用户也可以在本地网络内创建一个私有仓库。 当用户创建了自己的镜像之后就可以使用 push 命令将它上传到公有或者私有仓库,这样下次在另外一 台 机器上使用这个镜像时候,只需要从仓库上 pull 下来就可以了。

③🐉Docker容器(Repository)

        仓库是用来存储和分享镜像的地方,可以分为本地仓库和远程仓库两种类型。本地仓库存储在本地机器上,而远程仓库则可以通过网络访问。仓库中的每个镜像都有一个唯一的标识符,称为镜像标签(Image Tag),可以用来唯一标识和区分不同的镜像版本。

Docker 利用容器来运行应用。

容器是从镜像创建的运行实例。它可以被启动、开始、停止、删除。每个容器都是相互隔离的、保证安全的平台。

可以把容器看做是一个简易版的 Linux 环境(包括root用户权限、进程空间、用户空间和网络空间等) 和运 行在其中的应用程序。

  1. 提供一次性的环境。比如,本地测试他人的软件、持续集成的时候提供单元测试和构建的环境
  2. 提供弹性的云服务。因为 Docker 容器可以随开随关,很适合动态扩容和缩容
  3. 组建微服务架构。通过多个容器,一台机器可以跑多个服务,因此在本机就可以模拟出微服务架构

二、快速开始

1、服务器选型

在选择服务器操作系统时,Windows附带了许多您需要付费的功能。

Linux是开放源代码,可让用户免费使用。

对比

        Windows服务器和Linux服务器在安装Docker时存在一些差异,主要原因在于它们使用的操作系统不同。

        在Windows服务器上安装Docker,通常是通过Docker Desktop for Windows软件来实现的。Docker Desktop for Windows提供了一个图形化界面,可以方便地安装、管理和部署Docker容器。安装过程比较简单,只需要下载并安装Docker Desktop for Windows,然后按照提示进行操作即可。

        而在Linux服务器上安装Docker,需要根据具体的发行版和版本号进行操作。一般来说,可以使用系统自带的包管理器(如apt、yum等)来安装Docker。例如,在Ubuntu上安装Docker,可以使用以下命令:

sudo apt-get update  
sudo apt-get install docker.io

在CentOS上安装Docker,可以使用以下命令:

sudo yum install docker
安装完成后,可以通过运行
sudo yum install docker
命令来检查Docker是否成功安装并查看相关信息。
  • Linux是开源的,因此是免费的。Web主机仅需要支付技术支持即可安装和维护程序(如果需 要)。服务器提供商不需要将额外的成本转嫁给客户。另一方面,对于Windows服务器,公司通常 必须为操作系统和定期使用许可证付费。
  • Linux服务器及其运行的应用程序通常设计为精益运行,因此通常使用较少的计算机资源。好处是 程序员可以“即时”修改Linux服务器和软件,而无需重新启动,这在Windows环境中是不可能的。 Microsoft Windows服务器在多数据库任务下趋向于变慢,崩溃的风险更高。
  • Linux比Windows更安全。尽管没有哪个系统能幸免于黑客和恶意软件的攻击,但是Linux往往是 一个低调的目标。由于Windows运行着世界上大多数软件,因此,黑客们渴望获得低挂的果实 Windows。

2、虚拟机安装

可查看【Linux】虚拟机安装Linux、客户端工具及Linux常用命令(详细教程)_安装虚拟机和linux操作系统使用的命令格式和执行结果(截图显示)-CSDN博客中Linux的安装

本篇我使用的是国产OpenAnolis龙蜥操作系统,是基于Linux 的系统。

3、Docker安装

Docker支持运行CentOS版本:CentOS 7.X

内核版本检查: uname -r

卸载可能存在的旧版本

yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-engine

旧版本的docker叫做docker或者docker-engine,如果有安装,先卸载其以及其依赖,新版本的
docker叫做docker-ce
docker-ce(社区版,免费)
docker-ee(专业版,收费)

1、安装必要的系统工具:

yum install -y yum-utils device-mapper-persistent-data lvm2

【Docker】快速入门之Docker的安装及使用,docker,容器,运维

2、添加docker-ce安装源:

yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

配置阿里云Docker Yum源:

yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

两个配置源选择哪一个都可以,我这里选择的是阿里云的源

【Docker】快速入门之Docker的安装及使用,docker,容器,运维

3、更新yum缓存:

yum makecache fast

【Docker】快速入门之Docker的安装及使用,docker,容器,运维

如果出现yml.pid占用:

-- rm -f /var/run/yum.pid

4、安装docker-CE:

yum -y install docker-ce

【Docker】快速入门之Docker的安装及使用,docker,容器,运维

出现以下代表安装成功/已安装

【Docker】快速入门之Docker的安装及使用,docker,容器,运维

1)默认安装的是最新版本的稳定版

2)查看版本列表请使用如下命令:yum list docker-ce --showduplicates | sort -r

【Docker】快速入门之Docker的安装及使用,docker,容器,运维

3)如果要安装特定版本的docker-CE请使用如下命令格式: yum install docker-ce-

三、Docker基本使用

  1. 镜像操作:首先需要从Docker仓库中获取镜像,可以使用docker pull命令从远程仓库下载镜像。如果本地仓库中没有需要的镜像,则可以通过docker search命令搜索并下载。
  2. 容器操作:在获取镜像后,可以使用docker run命令创建并启动容器。容器可以用来运行应用程序,并且每个容器都是相互隔离的。可以通过docker ps命令查看正在运行的容器,使用docker stopdocker start命令来停止和启动容器。
  3. 镜像和容器的管理:Docker还提供了其他一些命令来管理镜像和容器,例如docker image命令可以用来管理本地镜像,docker container命令可以用来管理本地容器。
  4. 仓库管理:如果需要将本地镜像上传到远程仓库,可以使用docker push命令。同时,也可以使用docker tag命令给本地镜像添加标签,以便于管理和区分不同的镜像版本。

1、基本操作

systemctl status docker #查看服务状态
systemctl start docker #启停服务
systemctl stop docker #停止服务
systemctl restart docker #重启
systemctl enable docker #开机自启动
systemctl disable docker #取消开机自启动

2、仓库、镜像操作

        Docker 运行容器前需要本地存在对应的镜像, 如果镜像不存在, Docker 会尝试先从默认镜像仓库下 载 (默认使用 Docker Hub 公共注册服务器中的仓库), 用户也可以通过配置,使用自定义的镜像仓

  • 配置加速器(通过阿里云控制台容器镜像服务 (aliyun.com)获得加速地址)

【Docker】快速入门之Docker的安装及使用,docker,容器,运维

sudo mkdir -p /etc/docker
sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["你的阿里云专属加速器地址"]
}
EOF
sudo systemctl daemon-reload #重新加载daemon
sudo systemctl restart docker #重启
  • 搜索镜像

比如nginx 

docker search 镜像名称
  • 下载镜像

安装nginx镜像,nginx镜像是一个Linux系统。

docker pull 镜像名
docker pull nginx
获取一个 centos 系统的基础镜像可以使用如下的命令:
docker pull centos (未指定版本一般会使用latest(最新的)版本)
docker pull centos:版本号 (或者直接指定版本)

【注意】

如果不能下载,你就需要查看你有没有权限访问

/var/run/docker.sock

ls -l /var/run/docker.sock

更改该文件的权限或所有权

sudo chown ${USER} /var/run/docker.sock

重启Docker守护进程

sudo systemctl restart docker

这样你就可以解决下载问题了

【Docker】快速入门之Docker的安装及使用,docker,容器,运维

  • 查看宿主机上的镜像
docker images
查看image位置
cd /var/lib/docker/containers (/var/lib/docker为docker默认安装目录) && ll

【Docker】快速入门之Docker的安装及使用,docker,容器,运维

  • docker rmi 镜像ID/标签
docker rmi centos
docker rmi -f centos:latest
如果提示镜像被使用,需要先停止某个ID的容器,那么要先删除容器再删除镜像。或者强制删除镜像。
正确做法:先删除依赖该镜像的所有容器, 再来删除镜像

3、容器操作

容器是Docker的另一个核心概念。简单来说,容器是镜像的一个运行实例。

镜像是静态的只读文件,而容器带有运行时需要的可写文件层,同时,容器中的应用进程处于运行状态

  • 创建容器
docker create -it centos:latest
docker create -it --name n1 nginx
  • centos:latest 即镜像名字:版本(或镜像ID),将使用指定镜像创建容器。另外,Docker会检查本地是否存在指定的镜像,不存在就从公有仓库下载
  • -it:是两个参数,-i:interactive容器具有交互功能,-t:容器将提供伪终端
  • --name:指定生成的容器的名字,允许空,如果不指定会自动生成
  • 启动、停止、重启容器
docker start 容器ID|name|name:tag
docker stop 容器ID|name|name:tag
docker restart 容器ID|name|name:tag
  • 查看当前的容器
docker ps #查看运行的容器
docker ps -a # 查看所有的容器
  • 删除容器
docker rm 容器ID
docker rm -f 容器ID #强制删
docker rm -f $(docker ps -aq) #强制删除所有容器

【Docker】快速入门之Docker的安装及使用,docker,容器,运维

  • 进入容器
docker exec -it 容器ID/容器NAME /bin/bash
docker exec -it 容器ID/容器NAME bash (简写)

【Docker】快速入门之Docker的安装及使用,docker,容器,运维

  • 退出容器
退出时如果想继续运行容器:按顺序按【ctrl+p】,【ctrl+q】
如果不想继续运行:按【ctrl+d】或输入exit

 文章来源地址https://www.toymoban.com/news/detail-786949.html

到了这里,关于【Docker】快速入门之Docker的安装及使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Docker入门安装、镜像与容器下载 —— 基本操作

    目录 前言 Docker 1. docker介绍 2. docker安装 3. docker基本使用 3.1 镜像下载 3.2 操作容器         虚拟机:基于主机(物理机或虚机)的多服务实例。 在该模式下,软件开发人员可以提供单个或多个物理机或虚机,同时在每个主机上运行多个服务实例。 此模式有几种不同的实现形式

    2024年01月17日
    浏览(81)
  • docker入门(七)—— 容器数据卷介绍及使用

    docker的理念回顾 : 将应用和运行的环境打包形成容器运行,运行可以伴随着容器,但是我们对于数据的要求,是希望能够持久化的! 就好比,你安装一个 MySQL,结果你把容器删了,就相当于删库跑路了,这TM也太扯了吧! 所以我们希望容器之间有可能可以共享数据,docker

    2024年04月15日
    浏览(34)
  • 『Docker入门指南』- 详细安装与配置教程,助你起航容器化世界!

    在探索云计算和自动化部署的时代,Docker以其独特的容器化技术站在了风口浪尖。如果你期待着无缝地将你的应用从一个环境迁移到另一个环境,那么Docker无疑是你的得力助手。但首先,我们得学会如何正确地安装和配置Docker。这篇文章将详细指导你完成这一关键步骤。 容器

    2024年02月19日
    浏览(53)
  • Docker 安装Apache Superset 并实现汉化和快速入门

    Apache Superset是一个现代化的企业级商业智能Web应用程序。Apache Superset 支持用户的各种数据类型可视化和数据分析,支持简单图饼图到复杂的地理空间图表。Apache Superset 是一个轻量级、简单化、直观化、可配置的BI 框架。 Docker 检索 superse Docker 下载并查看superset镜像 创建supe

    2024年04月11日
    浏览(41)
  • 第七次作业 运维高级 docker容器进级版

    1、使用mysql:5.6和 owncloud 镜像,构建一个个人网盘。 (1)拉取相应镜像 (2)运行mysql:5.6容器 (3)运行owncloud容器 (4)查看并验证 之后在浏览器中输入ipaddress:8080 2、安装搭建私有仓库 Harbor (1)下载好harbor和docker-compose (2)上传到Linux服务器 (3)复制docker-compose并修改权限 (4)解压harbor (

    2024年02月12日
    浏览(57)
  • 【Docker容器】Docker安装MySQL镜像详细步骤(适合新手使用)

    前言 自从用了Docker之后,发现装东西是真的香,不用在自己根据下载压缩包一个个的去解压、执行、配置环境等等操作。想要啥直接就用Docker直接即拿即用,灰常的舒服啊。话不多说,正式开干,直接开始安装步骤。以下所有的安装前提是你装了Docker引擎了,不要告诉我连

    2023年04月25日
    浏览(79)
  • 使用docker以容器方式安装redis

    docker pull redis #默认获取redis:latest,即最新的镜像 docker images 创建并进入目录 [root@VM-16-11-centos /]# mkdir -p /usr/local/docker/redis [root@VM-16-11-centos /]# cd /usr/local/docker/redis [root@VM-16-11-centos /]# cd /usr/local/docker/redis wget http://download.redis.io/redis-stable/redis.conf //下载redis配置文件 vim redis.conf

    2024年01月23日
    浏览(48)
  • Docker容器—Windows下的安装与使用

    1.1 先决条件 Docker自身要求 Docker 并非是一个通用的容器工具,它 依赖于已存在并运行的 Linux 内核环境 。 Docker 实质上是在已经运行的 Linux 下制造了一个隔离的文件环境,因此它执行的效率几乎等同于所部署的 Linux 主机。 因此,Docker 必须部署在 Linux 内核的系统上。如果W

    2024年02月03日
    浏览(59)
  • 使用docker 容器安装go-cqhttp

    第一步,生成config.yml 配置文件 执行以下命令 mkdir /root/gocq1 docker run --rm -it --name=\\\"gocq1\\\" -v /root/gocq1:/data xzsk2/gocqhttp-docker:latest  选择通讯方式时选择 02 (http通讯和正向websocket通信) 回车结束当前命令 找到 /root/gocq1 目录下的 config.yml 文件并修改 删除第四行 1233456 修改http,

    2023年04月08日
    浏览(40)
  • K8S自动化运维容器化(Docker)集群程序

    1.什么是K8S K8S全程为Kubernetes,由于K到S直接有8个字母简称为K8S。 版本:目前一般是1.18~1.2.0,后续可能会到1.24-1.26,1.24版本后丢弃了docker(如需要使用需要第三方插件配合),目前最新版本是1.27 官网:https://kubernetes.io GitHub:GitHub - kubernetes/kubernetes: Production-Grade Container Schedul

    2024年02月10日
    浏览(69)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包