[Docker精进篇] 详细配置和部署镜像(一) 文末送书

前言:

容器提供了将应用程序的代码、运行时、系统工具、系统库和配置打包到一个实例中的标准方法。

文章目录

经过几天的仔细学习,感觉docker很好用。这篇文章是我的笔记,旨在带您快速入门上手docker

一. 认识Docker

Docker架构:分为三部分,客户端,Docker服务端,仓库。

1️⃣docker服务端

Docker服务端 又称为Docker主机,Docker引擎,Docker守护进程。

依托于宿主机,守护进程,用于管理镜像,容器,执行客户端命令等。

2️⃣docker客户端

我们使用的就是客户端,通过客户端命令和Docker引擎进行交互

3️⃣docker仓库

Docker有两个重要的概念镜像和容器。镜像可以理解为就是软件安装包,容器就是软件安装完成后可运行的状态。

Docker推出了Registry这个概念,一般有人也称为是 注册中心,当我们需要发布Docker镜像(Docker专用软件安装包)的时候,就需要将镜像发布到注册中心上,这样其他人就可以下载使用。

二. 使用Docker

1️⃣卸载旧的

一般是在虚拟机下,本文使用的是虚拟机centos7下安装操作docker

首先卸载掉 虚拟机上面原有的docker相关内容

bash 复制代码
sudo yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-engine

2️⃣安装 yum-utils

bash 复制代码
sudo yum install -y yum-utils

3️⃣添加阿里云镜像:

bash 复制代码
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

4️⃣安装

bash 复制代码
sudo yum install docker-ce docker-ce-cli containerd.io

5️⃣启动并加入开机启动

bash 复制代码
sudo systemctl start docker

sudo systemctl enable docker

到这里就安装完毕了!!

三. 镜像操作

1️⃣启动docker:

bash 复制代码
systemctl start docker 启动
systemctl stop docker 关闭

2️⃣查看本机docker镜像:

bash 复制代码
docker images

没有的话,可以执行下面的操作,从dockerhub上搜索自己想要的docker镜像:

bash 复制代码
如果需要下载镜像,但是又不知道docker有没有,可以通过搜索镜像命令进行查看。
docker search 镜像名称

这里以mysql为例 :

NAME:镜像名称

DESCRIPTION:镜像描述

STARS:用户评价,反映一个镜像的受欢迎程度

OFFICIAL:是否为官方构建

AUTOMATED:自动构建,表示该镜像由 Docker Hub 自动构建流程创建的。

3️⃣拉取镜像

拉取镜像就是从中央仓库下载镜像到本地。

bash 复制代码
docker pull 镜像名称:版本号

如果不声明版本,默认拉取latest版本。

4️⃣镜像仓库加速

这里我们使用阿里云镜像 配置阿里云镜像

直接复制使用阿里给的命令即可

5️⃣删除镜像

三种方式都可以

bash 复制代码
ocker rmi 镜像id
docker rmi 镜像名称
docker rmi 镜像名称:tag

6️⃣查看正在运行的容器

bash 复制代码
docker ps

7️⃣查看所有的容器

bash 复制代码
docker ps -a

8️⃣容器启动命令

这里以mysql5.8启动为例子

-it 开启并且进入

-id 开启不进入 守护容器

-p 是端口映射 虚拟机端口:docker容器端口

-e 其他操作 这里是配置mysql的密码为root

后面跟上镜像和版本号 然后进行容器终端/bin/bash

bash 复制代码
docker run -it 或者 -id  --name m_mysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root  mysql:5.7  /bin/bash

-i:表示运行容器;

-t:表示容器启动后会进入其命令行。加入这两个参数后,容器创建就能登录进去。即分配一个伪终端;

--name:为创建的容器命名;

-v:表示目录映射关系(前者是宿主机目录,后者是映射到宿主机上的目录),可以使用多个 -v 做多个目录或文件映射。注意:最好做目录映射,在宿主机上做修改,然后共享到容器上;

-d:在 run 后面加上 -d 参数,则会创建一个守护式容器在后台运行(这样创建容器后不会自动登录容器,如果只加 -i -t 两个参数,创建容器后就会自动进容器里);

-p:表示端口映射,前者是宿主机端口,后者是容器内的映射端口。可以使用多个 -p 做多个端口映射。

-P:随机使用宿主机的可用端口与容器内暴露的端口映射。

9️⃣停止与启动容器

bash 复制代码
# 停止容器
docker stop 容器名称|容器ID
# 启动容器
docker start 容器名称|容器ID

四. 好书推荐

在这里推荐两本我个人最近正在读的书,给有意在暑期提升自己的朋友们参考:

近期有购书需求的小伙伴们可以直接点击下方书名前往选购!

NO.1《我看见了风暴:人工智能基建革命》 深入讲解了阿里、微软等业界巨头在人工智能技术领域的迭代历程,从框架设计、平台开发以及云基础设施等三个关键领域,对AI的发展历史进行详尽而深入的剖析,揭示对未来更远视野的洞察。

目录:

   第1章 搞AI框架的那群人(一):AI框架简史
   
   第2章 搞AI框架的那群人(二):燎原火,贾扬清
   
   第3章 搞AI框架的那群人(三):狂热的AlphaFold和沉默的中国科学家
   
   第4章 搞AI框架的那群人(四):AI框架前传,大数据系统往事
   
   第5章 搞AI框架的那群人(五):老师木解读GPT大模型
   
   第6章 那些站在微软云起点的中国创业者
   
   第7章 京东零售:北极星永远指北
   
   第8章 揭开本质:中国智能供应链走到了哪一步
   
   第9章 DPU的风暴与咏叹调
   
   第10章 超级计算机与人工智能:大国超算,无人领航
   
   附录A 漫画科普ChatGPT,绝不欺负文科生
   
   附录B ChatGPT大火,如何成立一家AIGC公司,然后搞钱
   
   附录C 数据治理,是不是一道送命题

NO.2《趣话计算机底层逻辑》 深入浅出地解读了计算机中的CPU、存储、I/O、操作系统、系统编程以及安全六大主题。深入剖析了计算机的核心概念和关键技术,让读者在轻松的阅读时能够迅速提升自身计算机认知水平。

简要:

  本书用一系列有趣的小故事讲述计算机底层相关的技术知识。
       
  第1章:聚焦计算机中最核心的CPU,从最基础的门电路开始,到基本的指令执行过程,最后到CPU的一些高级技术。内容涵盖缓存、原子操作、指令流水线、分支预测、乱序执行、超线程、SIMD、
  内存管理、TLB等。
      
   第2章:主要讲述计算机中的存储设施,包括CPU中的缓存,内存、机械硬盘三者数据存储的原理,以及硬盘上的数据管理组织的软件------文件系统基本模型。
       
   第3章:主要讲述计算机中的I/O和数据传输。内容涵盖总线系统、中断机制、DMA技术、零拷贝技术。重点关注网卡相关的数据传输,包括网卡的基本工作机制,网卡接收数据包后的处理,最后介绍一种时下流行的数据包处理技术------DPDK。
       
   第4章:前面三章主要是在硬件层面,这一章开始介绍软件。本章聚焦计算机中最重要的软件------操作系统。本书默认以Linux为参考,内容涵盖操作系统的一些基础知识,包括进程、线程、系统调用、异常处理、信号、锁、权限管理,最后介绍一个时下流行的容器技术Docker的原理。
       
   第5章:主要涉及系统编程中和操作系统紧密相关的一些技术点。包括进程的创建过程、线程栈、进程间通信、I/O多路复用、内存映射文件、协程,最后简单介绍调试器GDB和可执行文件ELF。
    
   第6章:本章的主题是安全。网络安全涉及方方面面,本章挑选了和计算机系统底层相关的一些安全技术,通过故事去感受计算机攻击的原理,包含栈溢出攻击、整数溢出攻击、DDoS攻击、TCP会话劫持、HTTPS原理,还有前几年大火的CPU漏洞------熔断与幽灵攻击原理等。

参与方式

参与方式 评论区抽两位小伙伴送书🍬🍬
活动时间 截止到2023-08-15 9:00:00
抽奖方式 利用爬虫对评论的用户进行抽奖。
要求 关注博主、点赞、收藏,评论区优质评论(最多三条!!)
相关推荐
路飞雪吖~9 分钟前
【Linux】编写简易shell && 深度理解命令行解释器 && 环境变量 && 内建命令
linux·运维·服务器
只抄18 分钟前
随身 WiFi 连接 X-Wrt 共享网络与 IPv6 中继配置
网络·智能路由器
coniting12320 分钟前
【H3CNE邓方鸣】IPv6+2024.12.23
网络
神奇侠202431 分钟前
基于Centos7.X系统端口占用处理
linux·运维·服务器
m0_7482510842 分钟前
docker安装nginx,docker部署vue前端,以及docker部署java的jar部署
java·前端·docker
m0_748240252 小时前
docker--压缩镜像和加载镜像
java·docker·eureka
阿智@112 小时前
Node.js 助力前端开发:自动化操作实战
运维·前端·node.js·自动化
赤叶丶秋枫2 小时前
Jenkins入门使用
运维·jenkins
紫菜(Nori)2 小时前
Jenkins Api Token 访问问题
运维·jenkins
love530love2 小时前
Windows 11 中利用 WSL - Linux 虚拟环境部署 ChatTTS-Enhanced 项目教程
linux·运维·windows