docker-速通

news2025/1/31 8:26:52

1.命令-镜像操作

docker pull nginx  #下载最新版
docker pull nginx:1.20.1  #下载指定版本 镜像名:版本名(标签) 
docker images  #查看所有镜像  
# 如果只写镜像名实际就是redis = redis:latest   记住这个不是命令
docker rmi 镜像名:版本号/镜像id   #删除指定版本的镜像

2.命令-获取所有帮助

docker run --help
Docker run --help |grep --restart   #查找restart命令

3.命令-容器操作

docker run [OPTIONS] IMAGE [COMMAND] [ARG...]
【docker run  设置项   镜像名  】 镜像启动运行的命令(镜像里面默认有的,一般不会写)
#-d:后台运行
#--restart=always: 开机自启  主机88端口映射到容器的80端口  
#本地主机访问在浏览器里面输入 127.0.0.1:88
#运维的时候一定要在安全组端口放行  外部ip才能访问本地的端口 
docker run --name=mynginx   -d  --restart=always -p  88:80 nginx
#查看正在运行的容器
docker ps
#查看所有容器
docker ps -a
#删除停止的容器
docker rm  容器id/名字
docker rm -f  mynginx   #强制删除正在运行中的
#停止容器
docker stop 容器id/名字
#再次启动
docker start 容器id/名字
#应用开机自启
docker update 容器id/名字 --restart=always
#应用开机自启  update不能修改端口映射  可以把该容器删了
docker update 容器id/名字 --restart=always

3.命令-进入容器修改

# 进入容器内部的系统,修改容器内容   /bin/bash或者/bin/sh(有些时候bash没有用  就
#使用sh) 代表进入容器内部的一个文件
# ngnix本质就是小型的linux 其他以此类推
docker exec -it 容器id  /bin/bash   #进入容器内部

下面是演示进入容器内部修改文件
在这里插入图片描述

exit    #退出容器内部

在这里插入图片描述

4.命令-提交改变

#加入容器已经完成部署和修改 为了避免下次再次部署该容器  可以直接使用该容器制作成一个镜像   下次需要使用的时候再次将该镜像启动成容器
#redis镜像--->myredis容器--->gstredis镜像--->mygst容器 
docker commit --help  #获取提交帮助 
#如果一个容器发生了变化 但是万一他不存在了  怎么?
#这时候可以把这个容器进行提交  然后进行保存  进而做到
#docker commit [OPTIONS] CONTAINER [REPOSITORY[:TAG]]
#上面的341d81f7504f 为容器id  guignginx为自己命名的镜像名称 
# v1为自己定义的版本 -m "首页变化"为提示的信息 -a  "gst"为作者的名称  
#341d81f7504f 为容器的id, gstnginx:v1.0自己指定的镜像名称和版本号
docker commit -a "gst"  -m "首页变化" 341d81f7504f   gstnginx:v1.0

5.命令-镜像保存(先命令-提交改变)

docker   save  --help   #获取保存命令
# 将镜像保存成压缩包   guignginx镜像名称(自己将容器变成一个属于自己的镜像)  #abc.tar自定名称
docker save -o abc.tar guignginx:v1.0 

在这里插入图片描述

6.命令-镜像传输

#把当前镜像传输给另外的ip 
scp abc.tar  root@ip地址:/root/  #将当前环境文件传输给其他主机 
# 别的机器加载这个镜像
docker load -i abc.tar

7.挂载数据到外部修改

docker run --name=mynginx   \
-d  --restart=always \
-p  88:80 -v /data/html:/usr/share/nginx/html:ro  \
nginx
#修改页面只需要去主机的 /data/html 文件夹里面
# \可以去掉 主要是linux环境一行不好直观使用了\

其他命令

docker stop   ##停止所有容器
docker container prune   删除所有停止的容器
docker exec -it mysqlgst bash  #进入容器
mysql -u root -p   #进入数据库
docker inspect 容器名称 #查看容器ip地址
docker exec -it 容器名称 ip addr  #查看容器ip地址

启动linux案例

# 如何进入linux容器内部
docker run -itd -p 50022:22 --name my_centos7 --privileged=true centos:centos7 /usr/sbin/init 
# /usr/sbin/init 是一个Docker命令,用于在CentOS容器中运行一个后台进程。
#让我们逐个解释命令中的每个部分的含义:
 #- `docker run`是用于创建和启动一个新的容器的命令。
 #- `-itd`是命令中的选项和标志:
  #- `-i`表示交互模式,允许用户与容器进行交互。
 # - `-t`表示终端模式,为容器分配一个伪终端。
  #- `-d`表示以后台(守护进程)模式运行容器,使容器在后台运行。
#- `-p 50022:22`是端口映射的选项,将主机的50022端口映射到容器的22端口。
 # - 这样可以通过主机的50022端口访问容器内SSH服务器。
#- `--name my_centos7`是指定容器的名称为"my_centos7"。
#- `--privileged=true`是在容器内部启用特权模式。
 # - 特权模式给容器提供了对主机系统的完全访问权限,这样容器内的进程就可以执行一些需要特权的操作。
#- `centos:centos7`是指定基础镜像,这里使用的是CentOS 7的官方镜像。
#- `/usr/sbin/init`是容器内的初始化进程。这个可以省略
#  - 在CentOS中,`/usr/sbin/init`是系统的初始化进程,负责启动其他进程和服务。

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

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

相关文章

Java Throwable

如图展示了 Java 整个异常体系的关系。 Throwable 的 Java 异常体系的基类, 他的直接子类有 Error 和 Exception 2 个。 1 Error Error 表示的是由于系统错误, Java 虚拟机抛出的异常, 例如 Java 虚拟机崩溃, 内存不够等, 这种情况仅凭程序自身是无法处理的, 在程序中也不会…

第十一节HarmonyOS 常用容器组件1-Row与Column

Column&Row组件的使用 1、概述 容器组件是一种比较特殊的组件,它可以包含其他的组件,而且按照一定的规律布局,帮助开发者生成精美的页面。容器组件除了放置基础组件外,也可以放置容器组件,通过多层布局的嵌套&am…

详解Spring工厂是如何获取Aop中的代理对象的

😉😉 学习交流群: ✅✅1:这是孙哥suns给大家的福利! ✨✨2:我们免费分享Netty、Dubbo、k8s、Mybatis、Spring...应用和源码级别的视频资料 🥭🥭3:QQ群:583783…

如何选择适合的光电传感器与 STM32 微控制器进行接口设计

本文介绍了如何选择适合的光电传感器与 STM32 微控制器进行接口设计的方法。首先我们将介绍一些选择光电传感器的关键因素,包括测量范围、响应时间、分辨率和输出类型。然后我们将介绍如何根据所选传感器的特性进行硬件连接和接口设计。最后,我们将提供示…

区间合并笔记

文章目录 什么是区间合并怎么做区间合并AcWing 803. 区间合并思路解析my - CODEdalao の CODE 什么是区间合并 区间合并是指给定多个区间,让你将重合的区间合并为一个区间 怎么做区间合并 区间合并类问题大多三个办法: 按左端点排序按右端点排序按左右…

计算机组成原理,硬件组成,存储器,控制器,控制器的任务, 运算器,中央处理器CPU,主存

计算机组成原理 课程需求 前导课程: 后继课程 汇编 操作系统 数逻 组成 系统结构 数电 微机原理 课程结构 计算机特性 1 从外部角度来看计算机的特性 快速 通用 准确 逻辑 2从外部特性与内部特性的关系 计算机组成 一 硬件组成 运算器 主要功能是进行算术…

11.1每日一题(关于函数定义域)

f(x1):自变量为x,x1为中间变量,所以f(x1)的定义域的取值范围是x的取值范围 f(x):自变量为x,f(x)的定义域等价于f(x1)中 x1整体的定义域

使用凌鲨进行内网穿透

为了方便在本地进行开发和调试工作,有时候需要安全地连接内网或Kubernetes集群中的服务。 在net proxy server中可以限制访问用户,也可以设置端口转发的密码。 使用 连接端口转发服务 列出可转发端口 可转发端口是服务端设置的,不会暴露真…

阵列信号处理---频率-波数响应和波束方向图

波束延迟求和器 阵列是由一组全向阵元组成,阵元的位置为 p n p_n pn​,如下图所示: 阵元分别在对应的位置对信号进行空域采样,这样就产生了一组信号信号为 f ( t , p ) f(t,p) f(t,p),具体表示如下: f ( t , p ) [ f…

2023.12.2 做一个后台管理网页(左侧边栏实现手风琴和隐藏/出现效果)

2023.12.2 做一个后台管理网页(左侧边栏实现手风琴和隐藏/出现效果) 网页源码见附件,比较简单,之前用很多种方法实现过该效果,这次的效果相对更好。 实现功能: (1)实现左侧边栏的手…

使用PCReg.PyTorch项目训练自己的数据集进行点云配准

项目地址: https://github.com/zhulf0804/PCReg.PyTorch/tree/main 网络简介: 网络是基于PointNet Concat FC的,它没有其它复杂的结构,易于复现。因其简洁性,这里暂且把其称作点云配准的Benchmark。因作者源码中复杂…

深度学习记录--logistic回归函数的计算图

计算图用于logistic回归函数 先回顾一下单一样本的logistic回归损失函数的公式,公式如下: 将logistic函数用计算图表示出来(以两个基础量为例),计算图如下: 前向传播已经完成,接下来完成后向传播 运用链式法则依次求…

使用 STM32 微控制器读取光电传感器数据的实现方法

本文介绍了如何使用 STM32 微控制器读取光电传感器数据的实现方法。通过配置和使用STM32的GPIO和ADC功能,可以实时读取光电传感器的模拟信号并进行数字化处理。本文将介绍硬件连接和配置,以及示例代码,帮助开发者完成光电传感器数据的读取。 …

【探索Linux】—— 强大的命令行工具 P.19(多线程 | 线程的概念 | 线程控制 | 分离线程)

阅读导航 引言一、 Linux线程概念1. 什么是线程2. 线程的概念3. 线程与进程的区别4. 线程异常 二、Linux线程控制1. POSIX线程库2. 创建线程 pthread_create() 函数(1)头文件(2)函数原型(3)参数解释&#x…

elasticsearch 内网下如何以离线的方式上传任意的huggingFace上的NLP模型(国内闭坑指南)

es自2020年的8.x版本以来,就提供了机器学习的能力。我们可以使用es官方提供的工具eland,将hugging face上的NLP模型,上传到es集群中。利用es的机器学习模块,来运维部署管理模型。配合es的管道处理,来更加便捷的处理数据…

深度学习记录--logistic回归损失函数向量化实现

前言 再次明确向量化的目的:减少for循环的使用,以更少的代码量和更快的速度来实现程序 正向传播的向量化 对于,用向量化来实现,只需要就可以完成,其中,, ps.这里b只是一个常数,但是依然可以加在每个向量里(python的…

TLS协议握手流程

浅析 TLS(ECDHE)协议的握手流程(图解) - 知乎 前言 通过 wireshark 抓取 HTTPS 包,理解 TLS 1.2 安全通信协议的握手流程。 重点理解几个点: TLS 握手流程:通过 wireshark 抓取 HTTPS 包理解…

项目中遇到的半导体公司

作为一个技术人,我并不是亲美,从技术的实事求是角度讲,不得不感叹欧美的半导体技术。他们的datasheet能学到的东西太多太多;我甚至佩服他们缜密的逻辑。从他们的文章中领悟我们技术到底有多low,没办法一个一个了解所有…

Nginx转发内网Flv视频流

1、环境说明 Docker Nginx:1.21.5 实现Nginx ssl转发内网flv视频流 2、配置nginx.conf http {upstream live {server 10.10.10.10:8300;keepalive 64;}map $http_upgrade $connection_upgrade {default upgrade; close;}server {listen 80;listen 443…

ssm+vue的罪犯信息管理系统(有报告)。Javaee项目,ssm vue前后端分离项目。

演示视频: ssmvue的罪犯信息管理系统(有报告)。Javaee项目,ssm vue前后端分离项目。 项目介绍: 采用M(model)V(view)C(controller)三层体系结构&…