01-Docker 修改 DNS DNS 解析和默认网关不同,用比喻来说 网关属于套娃模式,当容器对外访问网络时,会经过宿主机。但是 DNS 可以理解为客户端端点模式,宿主机配置了 DNS 并不能使你 Docker 容器就默认可以解析了。所以要想 Docker 容器可以正常的通过域名访问,需要为容器也设置具体的 DNS 地址。 方法分为指定docker容器设置和宿主机docker统一设置两种: 基础:宿主机统一设置修改 /etc/ 2023-03-09 Docker #Docker
01-Docker 修改 host、resolv、hostname 文件 Docker 中的 host 等文件/etc/hosts, /etc/resolv.conf, /etc/hostname 等文件其实并不是存储在 Docker 镜像,而是存在主机上的 /var/lib/docker/containers/(docker_id) 目录下,容器启动时是通过 mount 将这些文件挂载到容器内部的。 因此如果在容器中修改这些文件,修改部分不会存在于容器的 top la 2023-03-09 Docker #Docker
01-Docker 修改无法启动的容器中的内容 1、背景我们可能会碰到这样一个问题,在容器执行过程中,修改了容器的内容(如配置文件信息),但因为修改出了问题。导致容器关闭后,无法启动。 这时需要重新修改配置文件。正常情况下可以通过 docker exec 命令打开容器的一个shell终端进去修改。但这时容器已经无法启动了。这时该如何处理呢? 解决方案有以下解决方案 2.1 方案一:创建新镜像把这个问题容器用 docker commit 提交到一 2023-03-09 Docker #Docker
01-Docker 容器启动后修改或添加端口 前言一般在运行容器时,我们都会通过参数 -p(使用大写的-P参数则会随机选择宿主机的一个端口进行映射)来指定宿主机和容器端口的映射,例如 1docker run -itd -p 本地端口:容器内端口 所用镜像名 参数说明 -d 表示后台运行容器 -t 为docker分配一个伪终端并绑定到容器的标准输入上 -i 是让容器的标准输入保持打开状态 -p 指定映射端口 即创建容器时,你可以设置一个端 2023-03-09 Docker #Docker
01-Docker 容器启动后修改环境变量 环境变量相关文件123456~/.bashrc # 也就是 /root/.bashrc 文件,新起的 exec 进程可以获取到对应的环境变量,但是 docke 起的进行获取不到~/.profile~/.bash_profile/etc/profile # docke 起的进行获取不到对应的环境变量,新起的 exec 进程也获取不到/etc/environment/ 2023-03-09 Docker #Docker
Docker容器监控之CAdvisor+InfluxDB+Granfana 1、原生命令1docker stats 通过docker stats命令可以很方便的看到当前宿主机上所有容器的CPU,内存以及网络流量等数据,一般小公司够用了。。。。 但是,docker stats统计结果只能是当前宿主机的全部容器,数据资料是实时的,没有地方存储、没有健康指标过线预警等功能 2、容器监控3剑客 CAdvisor监控收集+InfluxDB存储数据+Granfana展示图表 C 2023-03-08 Docker #Docker
FPE 定义FPE(Format-Preserving Encryption,格式保留加密,也称为保形加密)是一种特殊的对称加密算法。FPE可以保证加密后的密文格式与加密前的明文格式完全相同。例如这样: FPE加密前后格式完全相同,而直接使用AES的其他模式达不到此种效果。 FPE使用场景 格式保留加密常用于数据脱敏,可以对敏感数据(如手机号码,银行卡号等)进行加密存储,可以有效降低黑客入侵导致敏感信息 2023-03-08 密码学 #密码学
SHA 概要SHA 全称 Secure Hash Algorithm(安全Hash算法),是由美国NSA和NIST两个组织共同发布的一系列密码散列函数。SHA算法和MD5一样,是一种散列(Hash)算法,除了算法不一样,它返回值也长于MD5的128位二进制。 SHA 算法由较多种,主要经历了SHA-0、SHA-1、SHA-2、SHA-3这几个阶段。目前常见的SHA算法有:SHA-1、SHA-224、SHA 2023-03-08 密码学 #密码学
国密算法 国密 中国国家密码管理局规范地址:https://oscca.gov.cn/sca/xxgk/bzgf.shtml 国密算法是指由 中国国家密码管理局 发布的密码算法标准,旨在保障国家信息安全。 其中部分密码算法已经成为国际标准。如SM系列密码,SM代表商密,即商业密码,是指用于商业的、不涉及国家秘密的密码技术。 商用密码是指能够实现商用密码算法的加密、解密和认证等功能的技术(包括密码算法编程技 2023-03-08 密码学 #密码学
签名验签 1、基本概念 加密:发送方利用接收方的公钥对要发送的明文进行加密。 解密:接收方利用自己的私钥对密文进行解密 配对:公钥和私钥配对的,用公钥加密的文件,只有对应的私钥才能解密。当然也可以反过来,用私钥加密,用对应的公钥]进行解密 签名:签名是发送方为发送的文件写上一个自己的签名,所以需要使用的是自己(发送方)的私钥 验证签名: 验证签名是接收方需要确认自己接收到的密文文件是否真的是发送方发送过来的 2023-03-08 密码学 #密码学
01-Docker 虚悬镜像 1、虚悬镜像是什么虚悬镜像是仓库名、标签都是 <none> 的镜像,俗称 dangling image 2、虚悬镜像产生原因 在实际开发中,在构建或者删除镜像时出错会有一定概率出现虚悬镜像。 使用 Dockerfile 构建镜像时不写镜像名和 tag。 构建新镜像的时候为该镜像打了一个已经存在的标签。 Docker在构建镜像的时候,发现已经有镜像包含相同的标签,Docker会移除旧镜 2023-03-07 Docker #Docker
01-Docker 镜像 1、Docker 镜像是什么Docker 镜像是一种轻量级、可执行的独立软件包,它包含运行某个软件所需的所有内容,我们把应用程序和配置依赖打包好形成一个可交付的运行环境(包括代码、运行时需要的库、环境变量和配置文件等),这个打包好的运行环境就是 image 镜像文件。 只有通过这个镜像文件才能生成 Docker 容器实例。 2、分层的镜像以 pull 为例,在下载的过程中我们可以看到 Docker 2023-03-07 Docker #Docker
02-Docker 数据卷 1、数据卷挂载方式数据卷挂载的方式 -v 1docker run -it --privileged=true -v /宿主机绝对路径目录:/容器内目录 镜像名 注意:如果出现 cannot open directory .: Permission denied 解决办法:在挂载目录后多加一个 --privileged=true 参数。 原因:CentOS7 安全模块会比之前系统版本加强,不安全 2023-03-07 Docker #Docker
03-Docker 网络 1、Docker网络1.1、Docker 不启动,默认网络情况 在 CentOS7 的安装过程中如果有选择相关虚拟化的的服务安装系统后,启动网卡时会发现有一个以网桥连接的私网地址的 virbr0 网卡(virbr0 网卡:它还有一个固定的默认IP地址192.168.122.1),是做虚拟机网桥的使用的,其作用是为连接其上的虚机网卡提供 NAT 访问外网的功能。 我们在安装 Linux 时,勾选安装 2023-03-07 Docker #Docker
DockerFile 官网文档:https://docs.docker.com/engine/reference/builder/ 1、基本说明Dockerfile 是用来构建 Docker 镜像的文本文件,是由一条条构建镜像所需的指令和参数构成的脚本。 在一个文件夹中,如果有一个名字为 Dockfile 的文件,其内容满足语法要求,在这个文件夹路径下执行如下命令,就可以按照描述构建一个镜像。 123# name 2023-03-07 Docker #Docker
01-Docker 安装 Tomcat 1、总体步骤 搜索镜像 拉取镜像 查看镜像 启动镜像——服务端口映射 停止容器 移除容器 2、安装tomcat docker hub 上面查找tomcat镜像 1docker search tomcat 从docker hub上拉取tomcat镜像到本地 1docker pull tomcat docker images查看是否有拉取到的tomcat 1docker images |grep 2023-03-06 Docker #Docker
02-Docker 安装 MySQL 1、MySQL 独立部署12345docker pull mysql:5.7docker run -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7docker psdocker exec -it 容器ID /bin/bashmysql -uroot -p 问题1:插入中文报错,需要修改字符编码1SHOW VARIABLES LIKE 2023-03-06 Docker #Docker
03-Docker 安装 Redis 1、单机 Redis1234567docker pull redis:6.0.8mkdir -p /app/rediscd /app/redis/vim redis.confdocker run -p 6379:6379 --name myr3 --privileged=true -v /app/redis/redis.conf:/etc/redis/redis.conf -v /app/red 2023-03-06 Docker #Docker
Docker 轻量级可视化工具Portainer 官网地址:https://www.portainer.io/ 官方文档:https://docs.portainer.io/v/ce-2.9/start/install/server/docker/linux 1、Portainer 是什么Portainer 是一款轻量级的应用,它提供了图形化界面,用于方便地管理 Docker 环境,包括单机环境和集群环境。 2、安装 docker命令安装 1 2023-03-05 Docker #Docker
01-Docker 帮助启动类命令 官方文档:https://docs.docker.com/reference/ 帮助类12345678910# 查看docker概要信息docker info# 查看docker总体帮助文档docker --help# 查看docker 命令帮助文档docker 具体命令 --help 启动停止类123456789101112131415161718# 启动dockersystemctl 2023-03-04 Docker #Docker