Docker核心知识手册

Docker核心知识手册

文章目录

  • Docker核心知识手册
    • 1 安装Docker
      • 1.1 环境说明
      • 1.2 安装
      • 1.3 修改配置
      • 1.4 启动
    • 2 Docker基础命令
      • 2.1 查看Docker相关信息
      • 2.2 配置Docker镜像加速
    • 3 Docker镜像相关命令
      • 3.1 搜索官方镜像
      • 3.2 获取镜像
      • 3.3 查看当前主机镜像列表
      • 3.4 导出镜像
      • 3.5 删除镜像
      • 3.6 导入镜像
      • 3.7 查看镜像的详细信息
    • 4 Docker容器基础操作
      • 4.1 启动容器
      • 4.2 查看正在运行的容器
      • 4.3 查看所有容器(包括未运行的)
      • 4.4 查看容器详细信息/ip
      • 4.5 停止容器
      • 4.6 进入容器
      • 4.7 退出容器
      • 4.8 强制删除所有容器
      • 4.9 启动时进行端口映射

1 安装Docker

1.1 环境说明

[root@VM-24-4-centos ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core) 
[root@VM-24-4-centos ~]# uname  -r
3.10.0-1160.108.1.el7.x86_64
[root@VM-24-4-centos ~]# hostname -I
10.0.24.4 

1.2 安装

wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.ustc.edu.cn/docker-ce/linux/centos/docker-ce.repo
sed -i 's#download.docker.com#mirrors.ustc.edu.cn/docker-ce#g' /etc/yum.repos.d/docker-ce.repo
yum install docker-ce -y

1.3 修改配置

# 修改启动文件,监听远程端口
vim /usr/lib/systemd/system/docker.service
ExecStart=/usr/bin/dockerd -H unix:///var/run/docker.sock -H tcp://10.0.0.100:2375

1.4 启动

systemctl daemon-reload
systemctl enable docker.service
systemctl restart docker.service
# ps -ef检查进行,是否启动

2 Docker基础命令

2.1 查看Docker相关信息

[root@VM-24-4-centos ~]# docker version
Client: Docker Engine - CommunityVersion:           26.1.4API version:       1.45Go version:        go1.21.11Git commit:        5650f9bBuilt:             Wed Jun  5 11:32:04 2024OS/Arch:           linux/amd64Context:           defaultServer: Docker Engine - CommunityEngine:Version:          26.1.4API version:      1.45 (minimum version 1.24)Go version:       go1.21.11Git commit:       de5c9cfBuilt:            Wed Jun  5 11:31:02 2024OS/Arch:          linux/amd64Experimental:     falsecontainerd:Version:          1.6.33GitCommit:        d2d58213f83a351ca8f528a95fbd145f5654e957runc:Version:          1.1.12GitCommit:        v1.1.12-0-g51d5e94docker-init:Version:          0.19.0GitCommit:        de40ad0

2.2 配置Docker镜像加速

vi /etc/docker/daemon.json
{"registry-mirrors": ["https://registry.docker-cn.com"]
}

3 Docker镜像相关命令

3.1 搜索官方镜像

docker search nginx
NAME                               DESCRIPTION                                     STARS     OFFICIAL
nginx                              Official build of Nginx.                        19996     [OK]
unit                               Official build of NGINX Unit: Universal Web …   32        [OK]
nginx/nginx-ingress                NGINX and  NGINX Plus Ingress Controllers fo…   92        
nginxinc/nginx-unprivileged        Unprivileged NGINX Dockerfiles                  154       
nginx/nginx-prometheus-exporter    NGINX Prometheus Exporter for NGINX and NGIN…   42        
nginx/unit                         This repository is retired, use the Docker o…   63        
nginx/nginx-ingress-operator       NGINX Ingress Operator for NGINX and NGINX P…   2         
nginxinc/nginx-s3-gateway          Authenticating and caching gateway based on …   6         
nginx/nginx-quic-qns               NGINX QUIC interop                              1         
nginxinc/amplify-agent             NGINX Amplify Agent docker repository           1         
nginxproxy/nginx-proxy             Automated nginx proxy for Docker containers …   140       
nginxinc/ingress-demo              Ingress Demo                                    4         
nginx/unit-preview                 Unit preview features                           0         
bitnami/nginx                      Bitnami container image for NGINX               192       
nginxproxy/acme-companion          Automated ACME SSL certificate generation fo…   134       
ubuntu/nginx                       Nginx, a high-performance reverse proxy & we…   114       
nginxproxy/docker-gen              Generate files from docker container meta-da…   17        
kasmweb/nginx                      An Nginx image based off nginx:alpine and in…   8         
nginxinc/ngx-rust-tool                                                             0         
bitnami/nginx-ingress-controller   Bitnami container image for NGINX Ingress Co…   34        
nginxinc/mra_python_base                                                           0         
bitnami/nginx-exporter             Bitnami container image for NGINX Exporter      5         
nginxinc/mra-fakes3                                                                0         
rancher/nginx                                                                      2         

3.2 获取镜像

# 拉取镜像
# docker pull nginx
# 拉取第三方镜像
# docker pull index.tenxcloud.com/tenxcloud/httpd
# 启动镜像,没有则拉取并启动
docker run -d -p 80:80 nginx
# 容器启动后,在浏览器进行访问测试
Unable to find image 'nginx:latest' locally
latest: Pulling from library/nginx
f11c1adaa26e: Pull complete 
c6b156574604: Pull complete 
ea5d7144c337: Pull complete 
1bbcb9df2c93: Pull complete 
537a6cfe3404: Pull complete 
767bff2cc03e: Pull complete 
adc73cb74f25: Pull complete 
Digest: sha256:67682bda769fae1ccf5183192b8daf37b64cae99c6c3302650f6f8bf5f0f95df
Status: Downloaded newer image for nginx:latest
bf107da1400c5f676e70223d1ec6f687662d4b2719ddf0e32edd740904c203a4

参数说明

参数说明
run运行一个容器
-d放入后台
-p端口映射
nginx镜像名称

3.3 查看当前主机镜像列表

docker image list
REPOSITORY        TAG       IMAGE ID       CREATED         SIZE
postgis/postgis   latest    9acc3941fc21   2 days ago      609MB
nginx             latest    fffffc90d343   2 weeks ago     188MB
hello-world       latest    d2c94e258dcb   14 months ago   13.3kB

3.4 导出镜像

docker image save nginx > docker-nginx.tar.gz

3.5 删除镜像

docker image rm nginx:latest

3.6 导入镜像

docker image load -i docker-nginx.tar.gz

3.7 查看镜像的详细信息

docker image inspect nginx

4 Docker容器基础操作

4.1 启动容器

# 从 Docker 映像创建一个全新的容器。但是,它不会立即运行它。
docker create
# 将启动任何已停止的容器。如果使用 docker create命令创建容器,则可以使用此命令启动它。
docker start
# 命令是创建和启动的组合,因为它创建了一个新容器并立即启动它。实际上,如果docker run命令在您的系统上找不到上述映像,它甚至可以从 Docker Hub 中提取映像。
docker run

4.2 查看正在运行的容器

docker container ls
docker ps

4.3 查看所有容器(包括未运行的)

docker ps -a

4.4 查看容器详细信息/ip

docker container inspect <容器名称/id>

4.5 停止容器

# 发送一个 SIGTERM 信号给容器中的主进程,允许它优雅地关闭。它会等待一段时间(默认为 10 秒,可以通过 -t 选项修改),然后如果容器还没有停止,它会发送一个 SIGKILL 信号来强制终止容器。
docker stop <容器名称/id>
# 立即发送一个 SIGKILL 信号给容器中的主进程,强制终止容器,而不进行任何优雅的关闭操作。
docker container  kill  <容器名称/id>

4.6 进入容器

# 启动一个新的交互式容器。
docker run -it <容器名称/id>
# 连接到一个已经运行的容器的主进程。
docker attach <容器名称/id>
# 在一个已经运行的容器中启动一个新的交互式会话。
docker exec -it <容器名称/id>

4.7 退出容器

  1. Ctrl + P 然后按 Ctrl + Q。这样你会返回到主机的 shell,但容器仍然在后台运行。
  2. exit,退出并停止容器。

4.8 强制删除所有容器

docker rm -f $(docker ps -a -q)

4.9 启动时进行端口映射

docker run -d -p 8888:80  nginx:latest

映射方法

参数说明
-p hostPort:containerPort端口映射 -p 8080:80
-p ip:hostPort:containerPort配置监听地址 -p 10.0.0.100:8080:80
-p ip::containerPort随机分配端口 -p 10.0.0.100::80
-p hostPort:containerPort:udp指定协议 -p 8080:80:tcp
-p 81:80 –p 443:443指定多个映射

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

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

相关文章

java.time.ZonedDateTime介绍

java.time.ZonedDateTime 是 Java 8 引入的新日期时间 API 的一部分,用于表示带有时区的日期和时间。它结合了日期、时间和时区信息,使得处理跨时区的日期时间变得更加简单和直观。 主要特性 表示日期和时间,并包括时区。提供了一系列方法来操作和格式化日期时间。支持从其…

三、CoInitialize是以单线程的方式创建com对象是什么意思

CoInitialize函数是COM&#xff08;Component Object Model&#xff09;编程中的一个关键API&#xff0c;用于初始化COM库并为当前线程创建一个“公寓”&#xff08;Apartment&#xff09;。当提到CoInitialize是以单线程的方式创建COM对象时&#xff0c;这是指它准备当前线程以…

电脑压缩视频怎么压缩,电脑压缩视频大小

随着科技的进步&#xff0c;我们越来越喜欢用视频记录生活中的点点滴滴。但随之而来的问题就是&#xff0c;视频文件体积庞大&#xff0c;给我们的存储和分享带来了不小的困扰。那么&#xff0c;有没有什么方法能够轻松解决这个问题呢&#xff1f;答案当然是肯定的&#xff01;…

SpringSecurity认证逻辑源码分析

SpringSecurity源码分析-认证逻辑 1. Spring-security-core包中的三个重要类 SecurityContext 这个类中就两个方法getAuthentication()和setAuthentication()这个类用来存储Authentication对象 public interface SecurityContext extends Serializable {Authentication getAu…

element 如何实现文件上传下载导出

上传&#xff1a; 前端&#xff1a; <div><el-dialogtitle"低值易耗文件上传":visible.sync"dialogUploadVis"width"25%"><el-uploadclass"upload-demo"drag:on-change"handleChange":file-list"uplo…

如何保证Redis缓存和数据库的数据一致性

前言 如果项目业务处于起步阶段&#xff0c;流量非常小&#xff0c;那无论是读请求还是写请求&#xff0c;直接操作数据库即可&#xff0c;这时架构模型是这样的&#xff1a; 但随着业务量的增长&#xff0c;项目业务请求量越来越大&#xff0c;这时如果每次都从数据库中读数据…

【Redis】简单了解Redis中常用的命令与数据结构

希望文章能给到你启发和灵感&#xff5e; 如果觉得文章对你有帮助的话&#xff0c;点赞 关注 收藏 支持一下博主吧&#xff5e; 阅读指南 开篇说明一、基础环境说明1.1 硬件环境1.2 软件环境 二、Redis的特点和适用场景三、Redis的数据类型和使用3.1字符串&#xff08;String&…

QT界面动画呼吸框实现

#include #include Q_OBJECT //自定义属性 对应的参数作用为 // 类型 属性名 获取值的函数 设置属函数&#xff08;其中READ、WRITE为其格式&#xff09; Q_PROPERTY(int opacity READ opacity WRITE setOpacity) public: int opacity() const; //获取值 void setOpacity(in…

LabVIEW电容器充放电监测系统

概述 为了对车用超级电容器的特性进行研究&#xff0c;确保其在工作时稳定可靠并有效发挥性能优势&#xff0c;设计了一套车用超级电容器充放电监测系统。该系统通过利用传感器、USB数据采集卡、可调直流稳压电源、电子负载以及信号调理电路&#xff0c;完成对各信号的采集和超…

企业数字化转型怎么干?

目录 企业数字化转型是什么&#xff1f; 企业数字化转型为什么&#xff1f; 企业数字化转型怎么干&#xff1f; 企业数字化转型是什么&#xff1f; 先看一下案例&#xff0c;华为经历了多次战略转型&#xff0c;它是如何在危机中成长&#xff0c;涅槃重生&#xff1f; 199…

springboot中通过jwt令牌校验以及前端token请求头进行登录拦截实战

前言 大家从b站大学学习的项目侧重点好像都在基础功能的实现上&#xff0c;反而一个项目最根本的登录拦截请求接口都不会写&#xff0c;怎么拦截&#xff1f;为什么拦截&#xff1f;只知道用户登录时我后端会返回一个token&#xff0c;这个token是怎么生成的&#xff0c;我把它…

软设之桥接模式

桥接模式的意图是&#xff1a;将抽象部分与它的实现部分分离&#xff0c;使它们都可以独立变化。 比如说汽车是一个抽象的概念&#xff0c;但汽车有不同品牌和型号&#xff0c;这些汽车有不同的驱动方式&#xff0c;比如烧油或者电动。假如用传统的方式&#xff0c;每增加一个…

底软基础 | 嵌入式程序员编程必看的525钟C/C++ 安全编程问题

《360 安全规则集合》简称《安规集》&#xff0c;是一套详细的 C/C 安全编程指南&#xff0c;由 360 集团质量工程部编著&#xff0c;将编程时需要注意的问题总结成若干规则&#xff0c;可为制定编程规范提供依据&#xff0c;也可为代码审计或相关培训提供指导意见&#xff0c;…

VBA即用型代码手册:根据预定义的文本条件删除行

我给VBA下的定义&#xff1a;VBA是个人小型自动化处理的有效工具。可以大大提高自己的劳动效率&#xff0c;而且可以提高数据的准确性。我这里专注VBA,将我多年的经验汇集在VBA系列九套教程中。 作为我的学员要利用我的积木编程思想&#xff0c;积木编程最重要的是积木如何搭建…

Spring Boot 事件监听机制实战【自定义 Spring Boot 事件监听】

前言&#xff1a; 上一篇我们分析了 Spring Boot 事件监听的原理&#xff0c;本篇我们来自定义实现自己的监听器。 Spring Boot 系列文章传送门 Spring Boot 启动流程源码分析&#xff08;2&#xff09; Spring Boot 启动流程源码分析&#xff08;2&#xff09; Spring Bo…

LINUX命令行界面常用指令

目录 1. 命令行交互 2. 常用命令 2.1 打开命令行界面 2.2 打印当前目录的绝对路径 2.3 查询文件目录 2.4 了解命令结果 2.5 查看功能命令 2.6 清屏 2.7 切换路径 2.8 创建目录 1. 命令行交互 进入命令行交互界面&#xff1a;CTRLaltF2&#xff1b; 退出命令行交互…

怎么做好菲律宾TikTok直播带货?

TikTok目前是全球最受欢迎的APP之一&#xff0c;菲律宾TikTok直播已成为品牌出海的新趋势。作为一种新兴的引流渠道&#xff0c;出海电商卖家正通过直播带货模式实现流量变现。 在进行菲律宾TikTok直播时&#xff0c;关键在于能否吸引和留住消费者并促成购买。因此&#xff0c;…

【MOT】《Multiple Object Tracking in Recent Times: A Literature Review》

原文 Bashar M, Islam S, Hussain K K, et al. Multiple object tracking in recent times: A literature review[J]. arXiv preprint arXiv:2209.04796, 2022.https://arxiv.org/pdf/2209.04796 参考文章 多目标跟踪最新综述&#xff08;基于Transformer/图模型/检测和关联…

品牌策划不只是文案,揭秘背后的策略与创意!

品牌策划&#xff0c;听起来高大上&#xff0c;但其实它远不止是写个策划案那么简单。 这事儿&#xff0c;得用心&#xff0c;得深入&#xff0c;得全面。它涉及到品牌的定位、形象、传播&#xff0c;还有市场分析、竞争对手研究、目标受众识别&#xff0c;每一个环节都是品牌…

昆法尔The Quinfall在Steam上怎么搜索 Steam上叫什么名字

昆法尔The Quinfall是一款全新的MMORPG&#xff0c;在中世纪的深处&#xff0c;参与独特的战斗和沉浸式的故事&#xff0c;有几十个不同的职业。而游戏中的战斗系统更是丰富多彩&#xff0c;无论是陆地激战、海上鏖战还是城堡围攻&#xff0c;都能让玩家感受到前所未有的刺激和…