前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Docker入门:Docker安装与基本使用

Docker入门:Docker安装与基本使用

作者头像
KenTalk
发布2023-04-07 15:42:32
1.4K0
发布2023-04-07 15:42:32
举报
文章被收录于专栏:Ken的杂谈Ken的杂谈

一、前言

Docker支持主流的Linux Server、也支持Windows Server,同时为了方便开发者在开发环境中使用Docker,Docker官方也提供了支持Windows以及macOS的Docker Desktop。

1、本篇主要内容

  • Docker for CentOS安装
  • Docker Desktop for Windows安装
  • Docker Desktop for macOS安装
  • Docker的基础配置与使用
  • Docker核心概念介绍
  • Docker常用命令使用说明

2、环境信息

环境

说明

Docker

Docker CE 20.10.21

Docker Desktop

4.14

CentOS

CentOS 7

Windows

Windows 10

macOS

macOS Ventura 13.0

二、Docker安装

1、 Docker for CentOS 7 安装

  • 卸载旧版本(如果有)
代码语言:javascript
复制
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine
  • 指定 Docker yum源
代码语言:javascript
复制
sudo yum install -y yum-utils

sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo
  • 安装Docker(最新版or指定版本)
代码语言:javascript
复制
#安装最新版本
sudo yum -y install docker-ce docker-ce-cli containerd.io docker-compose-plugin

#安装指定版本
#sudo yum -y install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io docker-compose-plugin
sudo yum -y install docker-ce-20.10.21 docker-ce-cli-20.10.21 containerd.io docker-compose-plugin

#查看可用版本:https://docs.docker.com/engine/install/centos/
  • 启动Docker并设置为开机启动
代码语言:javascript
复制
#启动
sudo systemctl start docker

#开机启动
sudo systemctl enable docker
  • 验证Docker安装情况
代码语言:javascript
复制
#查看Docker版本
docker --version

# 运行hello world镜像
sudo docker run hello-world

#运行成功将会看到
Hello from Docker!
This message shows that your installation appears to be working correctly.
…………
  • 更换国内镜像源
代码语言:javascript
复制
#修改Docker守护进程配置
vi /etc/docker/daemon.json

#新增以下内容
{"registry-mirrors":["http://hub-mirror.c.163.com"]}

#重启Dokcer服务
sudo systemctl daemon-reload
sudo systemctl restart docker

2、 Docker Desktop 安装

Docker是一个基于Linux的虚拟化的技术,但是开发者日常大部分使用Windows、macOS设备,不过没关系,Docker官方为开发者提供Docker Desktop ,相当于在Windows、macOS上运行了一个带Docker的Linux虚拟机,并且提供了图形化的管理界面,可以非常便捷的管理镜像、容器等,对不熟悉命令的新手非常友好

  • 环境要求

操作系统

安装要求

Windows

Windows 10及以上版本开启Hyper-v或者开启WSL2

macOS

macOS 10.15及以上版本不能安装 4.3.30 之前的 VirtualBox

  • 安装

下载之后按照默认选项安装即可~

安装之后可以在命令行查看安装后的Docker版本

代码语言:javascript
复制
#执行命令
docker info

#输出内容
Client:
 Context:    default
 Debug Mode: false
 Plugins:
  buildx: Docker Buildx (Docker Inc., v0.9.1)
  compose: Docker Compose (Docker Inc., v2.12.2)
  dev: Docker Dev Environments (Docker Inc., v0.0.3)
  extension: Manages Docker extensions (Docker Inc., v0.2.13)
  sbom: View the packaged-based Software Bill Of Materials (SBOM) for an image (Anchore Inc., 0.6.0)
  scan: Docker Scan (Docker Inc., v0.21.0)
  …………

如果在Windows上安装时没有选择基于WSL2,那么打开Hyper-V则会看到一个名为DockerDesktopVM的虚拟机

  • 设置开机启动 Windows设置路径:Settings->General macOS设置路径: Preferences->General √Start Docker Desktop when you log in
  • 更换国内镜像源 Windows设置路径:Settings->Docker Engine macOS设置路径: Preferences->Docker Engine
代码语言:javascript
复制
{
  "debug": true,
  "experimental": false,
  "insecure-registries": [],
  "registry-mirrors": ["http://hub-mirror.c.163.com"]
}

替换成以上设置后,选择 ‘Apply&restart’ ,等待重启完成后

三、Docker介绍

1、Docker核心概念

概念

说明

镜像(Image)

Docker镜像是一个特殊的文件系统,镜像中包含了自己特有的资源、软件、配置等环境信息,Docker镜像就相当于一个模板帮助我们快捷创建一个Docker容器

容器(Container)

Docker容器就是镜像的实例,容器可以被创建、启动、停止、删除、暂停等。

仓库(Repository)

仓库就是公共的镜像存储中心,官方Repository:https://hub.docker.com/ ,格式:{respository name}:{version},version缺省值为:latest

守护进程 (Daemon)

Docker守护进程监听Docker客户端的API请求并管理所在宿主机上的镜像、容器、网络等等

客户端(Client)

Docker客户端通过命令行或者Docker SDK与守护进程通信,一个客户端可以与多个Docker宿主机上额守护进程通信,例如:docker pull ubuntu

镜像跟容器就好比是虚拟机备份文件跟虚拟机的关系,我们可以根据备份文件创建多个具备同样环境的虚拟机,镜像跟仓库的关系就类似于Jar包跟Maven的关系,我们可以在Docker Hub搜索我们想要的镜像Repository,例如Redis官方镜像Nginx官方镜像,默认我们看到额都是最新版,需要特定版本,可以在Tag中查看,例如Redis:https://hub.docker.com/_/redis/tags

2、Docker常用命令

  • 管理镜像
代码语言:javascript
复制
#拉取Ubuntu最新版本镜像
docker pull ubuntu

#拉取Ubuntu指定版本镜像
docker pull ubuntu:22.03

#查看本地镜像
docker images

#删除镜像
docker image rm ubuntu:22.03
  • 容器管理
代码语言:javascript
复制
#创建并启动docker/getting-started镜像的容器
#启动后我们可以通过localhost:8080访问该容器提供的内容
docker run -d  -p 8088:80 --name docker-docs-ken  docker/getting-started 

#创建并启动ubuntu镜像的容器
docker run -itd --name ubuntu-ken ubuntu

#进入已经启动的容器
docker exec -it ubuntu-ken /bin/bash

#启动容器
docker start docker-docs-ken

#停用容器
docker stop docker-docs-ken

#删除容器
docker rm docker-docs-ken

#查看所有容器
docker ps -a

参数说明

参数

说明

run

创建并启动容器

exec

在已经运行的容器中执行新命令

start

启动指定(ID/Name)容器

stop

停用指定(ID/Name)容器

-it

连接到容器并在容器中创建&运行交互式终端(shell命令行)

-d

后台运行容器

-p

将本机端口映射到容器内的端口

—name

指定容器名

四、备注

1、本文参考


本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2022-11-30 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、前言
    • 1、本篇主要内容
      • 2、环境信息
      • 二、Docker安装
        • 1、 Docker for CentOS 7 安装
          • 2、 Docker Desktop 安装
          • 三、Docker介绍
            • 1、Docker核心概念
              • 2、Docker常用命令
              • 四、备注
                • 1、本文参考
                相关产品与服务
                容器镜像服务
                容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档