
工具-docker
文章平均质量分 66
工作多年遇到的问题,与一些总结,注意事项等,有些是源码级别的讲解,同时整个博客是成体系的,里面有很多连接互相连接,问题都是拆开的,能让大家遇到问题的时候方便的解决问题,或者提供思路。
优惠券已抵扣
余额抵扣
还需支付
¥9.90
¥99.00
购买须知?
本专栏为图文内容,最终完结不会低于15篇文章。
订阅专栏,享有专栏所有文章阅读权限。
本专栏为虚拟商品,基于网络商品和虚拟商品的性质和特征,专栏一经购买无正当理由不予退款,不支持升级,敬请谅解。
九师兄
可免费问问题,可以一次订阅,终身免费问问题。工作多年遇到的问题,与一些总结,注意事项等,有些是源码级别的讲解,同时整个博客是成体系的,里面有很多连接互相连接,问题都是拆开的,能让大家遇到问题的时候方便的解决问题,或者提供思路。也可以单独找我解决问题。
展开
-
【docker】Docker五种网络模式与应用场景
Docker有五种通信模式2.bridge模式 bridge模式是docker的默认网络模式 当Docker进程启动时,会在主机上创建—个名为docker0的虛拟网桥,此主机上启动的Docker容器会连接到这个虚拟网桥上。虚拟网桥的工作方式和物理交换机类似,这样主机上的所有容器就通过交换机连在了一个二层网络中。从docker0子网中分配一个P给容器使用,并设置docker0的IP地址为容器的默认网关。在主机上创建一对虚拟网卡veth pair设备。veth pair是一种成对出现的特殊网络设备,可以把它原创 2024-11-25 00:15:00 · 239 阅读 · 0 评论 -
【Docker】不用端口映射,更易维护,Macvlan让Docker容器可以IP直连
在docker中默认的桥接链接方式是如下的,这个意思是我们内部tomcat的启动的端口是8000,然后外部暴露的端口却是8080,然后别人与我们通讯的时候走的是8080端口。优点:兼容性好,是Docker默认的通信规则缺点:主机端口占用严重,无法使用指定端口(如:80)缺点:无法跨主机容器间通信。原创 2024-11-23 00:30:00 · 327 阅读 · 0 评论 -
MySQL : mysql连接报 Communications link failure
一个项目原本能跑,今天突然连不上了。第一种:MySQL数据服务没有开启导致连接失败第二种:MySQL数据库设置成了外网不能访问,需要开启外网IP访问的功能。第三种:可能是网络问题,导致连接不上,ping一下MySQL所在主机的IP第四种:数据设置wait_timeout时间,在默认配置不改变的情况下,如果连续8小时内都没有访问数据库的操作,再次访问mysql数据库的时候,mysql数据库会拒绝访问。第五种,你的连接信息写错了本文出自 csdn 九师兄,防伪标志,本文由九师兄唯一发布。原创 2020-07-04 10:32:06 · 9296 阅读 · 1 评论 -
【docker】docker 下 MySQL偶然无法访问
所在机器 telnet通 但是无法登录,同事说 遇到过 比如网络卡 或者不稳定,需要重启一下mysql。可以被看到可以telnet通畅,这个jar是我自己研发的,主要这台机器是别人的没有装telnet。我有一个环境遇到了docker 下 MySQL偶然无法访问,具体情况如下。后面经过运维处理一下,运维重启了一下容器,然后就可以登录了。我先去查看MySQL,想登录试试,结果发现无法登录。原创 2024-05-31 00:30:00 · 399 阅读 · 0 评论 -
【docker】docker tail -f 查看最后几行日志
另外,如果 ailpha-init 容器的日志输出被缓冲到文件中,你也可以通过 tail 命令查看容器内部的日志文件。这将在容器内查看指定路径下日志文件的最后10行。确保替换 /path/to/your/log/file.log 为实际的日志文件路径。docker容器的日志 有时候很多,我们想看最新的日志,该怎么处理?这将只显示最后的10行日志,并且仍然保持实时刷新。原创 2024-01-15 21:35:05 · 1194 阅读 · 0 评论 -
【docker】docker 安装 redis
v /data/redis/redis.conf:/etc/redis/redis/redis.conf: 这个选项用于挂载宿主机上的 /data/redis/redis.conf 文件到容器内的 /etc/redis/redis/redis.conf 路径。综合起来,这个命令的作用是以后台模式运行一个名为 myredis 的 Redis 容器,将宿主机上的自定义配置文件和数据目录挂载到容器内,同时映射宿主机的 6379 端口到容器内的 6379 端口,以提供对 Redis 服务的访问。原创 2023-12-20 09:18:20 · 449 阅读 · 0 评论 -
【docker】docker 使用dockerfile 打镜像指定运行的命令,jvm参数,主类,参数、依赖的jar
在这个例子中,它运行了 Java 应用程序,设置了最大堆内存为 256 MB (-Xmx256m),类路径为当前目录和 /app 目录下的所有文件,指定主类为 com.example.YourMainClass,并传递了一个应用程序参数 --your-parameter。同时,你可以使用 COPY 指令将依赖的 JAR 包复制到容器中。COPY target/lib /app/lib: 将本地 target/lib 目录下的所有文件复制到容器的 /app/lib 目录下,以添加依赖的其他 JAR 文件。原创 2025-01-31 16:11:24 · 75 阅读 · 0 评论 -
【docker】docker 挂载宿主机目录 实现数据共享
在 Docker 中,可以使用挂载(Mounting)来将宿主机的目录或文件系统与容器中的目录进行关联,实现数据的共享。无论是在容器启动时还是运行时挂载宿主机目录,都可以实现容器与宿主机之间的数据交互。这将把宿主机上的 /host/data 目录复制到运行中的容器 mycontainer 中的 /container/data 目录。这会将宿主机上的 /host/data 目录挂载到容器内的 /container/data 目录。使用 docker cp 命令可以在容器运行时将宿主机目录复制到容器中。原创 2025-01-31 16:11:14 · 359 阅读 · 0 评论 -
【docker】 docker tag 打标签
这将使用镜像ID为 1234567890ab 的本地镜像添加一个新的标签 latest,并将其命名为 myrepository/myimage:latest。这通常是在准备将镜像推送到远程仓库时使用,因为远程仓库中的镜像通常需要具有特定的名称和标签。使用 docker tag 的主要目的是为了将本地镜像的标签变更为一个更具有意义的名称,以便更容易管理和推送到远程仓库。这将为本地镜像 myimage 添加一个新的标签 latest,并将其命名为 otherrepository/myimage:latest。原创 2025-01-18 00:30:00 · 558 阅读 · 0 评论 -
【docker】docker 推送本地镜像到docker hub 远程仓库
当你创建了一个本地镜像后,想要将其推送到远程仓库,可以使用 docker push 命令。登录成功后,可以使用 docker push 将本地镜像推送到远程仓库。这是一个简单的示例:这会提示你输入用户名和密码来登录到 Docker Hub。这里,myrepository 是你的远程仓库名称,myimage 是镜像名称,tag 是镜像的标签。这条命令将标记为 latest 的 myimage 镜像推送到 Docker Hub 中 myusername 的仓库。原创 2025-01-18 00:45:00 · 305 阅读 · 0 评论 -
【docker】docker build 命令构建 Docker 镜像
docker build 命令用于构建 Docker 镜像,通过读取一个包含一系列指令的 Dockerfile 文件来执行构建过程。下面是一个简单的使用案例这将在当前目录下寻找 Dockerfile 文件,构建一个名为 myimage,标签为 latest 的镜像。这会使用名为 Dockerfile.dev 的文件进行构建,而不是默认的 Dockerfile。设置构建参数这个例子中,HTTP_PROXY 是一个构建参数,可以在 Dockerfile 中使用。禁用构建缓存。原创 2025-01-18 00:15:00 · 72 阅读 · 0 评论 -
【docker】docker commit 提交容器改变
docker commit 命令用于创建一个新的镜像,该镜像基于现有容器的当前状态。CONTAINER。原创 2025-01-17 00:30:00 · 168 阅读 · 0 评论 -
【docker】docker本地镜像怎么导入离线服务器docker环境
本地环境的docker镜像,怎么导入到离线环境的服务器的docker环境里面?将本地环境的 Docker 镜像导入到离线环境的服务器 Docker 环境中,通常需要进行以下步骤:步骤概述:在本地保存 Docker 镜像:使用 docker save 命令将本地 Docker 镜像保存为一个 tar 归档文件。将归档文件传输到离线环境:将保存的 Docker 镜像归档文件传输到离线服务器。可以使用 SCP、FTP、USB驱动器或其他适合的方式进行文件传输。原创 2025-01-15 00:15:00 · 309 阅读 · 0 评论 -
【docker】mac下docker本地仓库在哪里、镜像内容
Docker 在 macOS 上本地仓库的存储位置通常是在 Docker 守护程序所在的文件系统中。Docker 镜像和容器数据默认存储在守护程序所在的文件系统的目录下。这个目录通常是 Linux 系统上的默认路径,。具体来说,Docker Desktop 在 macOS 上使用一个轻量级的 Linux 虚拟机(HyperKit 或者以前的 xhyve),并在该虚拟机中运行 Docker 守护程序。所以,你在 macOS 上看到的 Docker 守护程序日志、镜像、容器等数据实际上保存在虚拟机中。原创 2025-01-15 00:30:00 · 499 阅读 · 0 评论 -
【Docker】Docker如何将本地的flink程序打成镜像
我有一个flink程序如下,我希望把这个程序打包成docker镜像。程序内容很简单对应的pom引入如下然后我们本地可以运行这个程序是正常的,现在我们打包起来。原创 2024-05-17 08:57:01 · 559 阅读 · 3 评论 -
【docker】docker 已经启动的容器 怎么设置 开机不启动
根据你的需求选择适当的启动策略。如果希望在容器创建时就设置启动策略,可以使用第二种方法。如果已经有一个运行的容器,可以使用第一种方法手动更改其启动策略。Docker 默认情况下会在系统启动时尝试启动之前已经运行的容器。如果您希望在创建容器时就指定启动策略,可以在 docker run 命令中使用 --restart 标志。在上面的示例中,容器 mycontainer 的启动策略被设置为手动,因此它不会在系统启动时自动启动。a. 首先,停止已经在运行的容器。1.停止容器并设置其启动策略为手动。原创 2024-12-19 00:15:00 · 895 阅读 · 0 评论 -
【docker】Docker构建并接入Nacos 2.x高可用集群
本章节主要是介绍如何使用docker构建Nacos 2.x高可用集群。在以前我们曾手动构建过,本章节主要是docker这里是区别。看这个文章之前,可以先参考几个文章我们先看看本次构建我们的架构如下我们再一台宿主机上装机多个docker容器,然后装机多个nacos,nacos在内部暴露的端口都是8848,所有的都连接到一个mysql容器,所有的服务公用一个网桥,让网络互联互通,这里利用网桥的模式访问。原创 2024-12-19 00:30:00 · 73 阅读 · 0 评论 -
【docker】Docker容器能启动,就一定是有效的么?
Shell中执行的每个命令都会通过退出状态码(exit status)来返回命令的执行结果,它是0~255之间的整数值变量用来保存上个执行的命令的退出状态码。例如:常用退出状态码例如下面的这两句话上面我们mysql 执行是成功的,因为我们这个语句无论数据库是否存在都能执行成功。然后每次执行的都可以获取上一次的命令是否执行成功。我们就可以用这个特性来判断我们的容器以及容器内的服务是否正常。原创 2024-12-12 00:30:00 · 180 阅读 · 0 评论 -
【docker】Docker容器基于NFS实现跨容器文件共享
假设我们有很多个docker容器,然后如果一个文件需要再多个docker容器里面使用,如果我们每个容器都拷贝一份,这样就太傻了,那么该怎么做呢?我们可以使用NFS实现跨容器文件共享。原创 2024-12-07 00:15:00 · 197 阅读 · 0 评论 -
【Docker】Docker 在mac 环境下暂用大量的磁盘 Docker.qcow2 是什么
这些新扇区被附加到.qcow2文件中,导致其大小增加,直到最终被完全分配。我本次磁盘一直不够,升级好几次,然后也升级了docker多次,然后今天升级后,我删除了docker,然后很奇怪为啥磁盘看起来暂用了很多。我正在用DaisyDisk查看磁盘,并且有一个30GB的东西Docker.qcow2。然后我看磁盘管理的时候,点来点去,偶然看见一个32G的东西。然后本想直接删除,然后我想看看我的文件,结果发现容器和镜像都没有。后来多次打开,然后在没消失的时候,快速打开位置,发现了这个文件。原创 2022-10-05 10:12:56 · 669 阅读 · 0 评论 -
【Docker】Docker安装telnet
在使用docker容器时,有时候里边没有安装telnet,敲vim命令时提示说:telnet: command not found,这个时候就需要安装vim,可是当你敲apt-get install telnet命令时,提示:Reading package lists... DoneBuilding dependency tree Reading state information... DoneE: Unable to locate package telnet这时候需要敲:apt原创 2021-02-08 09:00:12 · 6058 阅读 · 0 评论 -
【docker】docker 实现 的基础
1.概述还不懂Docker?一个故事安排的明明白白!转载 2021-02-18 22:01:28 · 299 阅读 · 0 评论 -
【Docker】Docker java shell ssh
1.在宿主机执行docker容器中的shell脚本或命令常见命令形式:docker exec -it master /bin/bash -c 'echo $PATH' docker exec -it master /bin/bash -c 'cd /home/bigdata/shell && ./test.sh'如果shell脚本中涉及到环境变量,或者提示JAVA_HOME is not set,可以在脚本中加上以下命令export JAVA_HOME=jdk路径2.ja.原创 2020-10-30 21:39:37 · 687 阅读 · 0 评论 -
【Docker】ERROR: Could not find a version that satisfies the requirement pytest==5.0.1
[lcc@lcc ~/soft/es/elasticsearch-HQ-3.5.12]$ pip install -r requirements.txtDEPRECATION: Python 2.7 reached the end of its life on January 1st, 2020. Please upgrade your Python as Python 2.7 is no longer maintained. pip 21.0 will drop support for Python 2原创 2020-09-29 22:07:26 · 2819 阅读 · 0 评论 -
【docker】docker Portainer容器可视化管理工具使用文档
1.概述转载:https://www.cnblogs.com/hellxz/p/install_portainer.htmlhttps://www.cnblogs.com/JulianHuang/p/12517074.htmlhttp://www.bubuko.com/infodetail-3244418.html转载 2020-09-21 22:49:17 · 512 阅读 · 0 评论 -
【Docker】Docer安装MySQL 8 并且远程登录
参考。原创 2020-07-08 12:17:08 · 818 阅读 · 1 评论 -
【Docker】Docker 一个偶现的错误 bash命令突然找不到
1.背景一次偶然在服务器上操作,发现提交命令运行jar无法运行了1.界面点击 2. 后台执行shell 脚本 3. 脚本执行java -jar 结果发现无法运行,后阿里发现是$ ll /bin/bash这个系统级别的文件找不到了,我是拷贝其他服务器的过来就好了,但是后来又偶现了一次,但是不知道为什么会出现这样。这里记录一下,如果下次出现继续补充...原创 2020-06-27 18:05:45 · 2027 阅读 · 0 评论 -
【Kubernetes】mac 安装minikube
1.一 官网安装官网: https://minikube.sigs.k8s.io/搜了下网上如何通过Mac 安装看网上文章很多,但是受限于国内网络环境,很多都不行,各种下载失败。如果你有VPN,那么官方的步骤就容易走通:$ brew install kubectl $ brew install minikube $ brew install docker-machine-driver-hyperkit$ sudo chown root:wheel /usr/local/opt/d.转载 2020-05-19 22:41:20 · 2969 阅读 · 0 评论 -
【kubernetes】http proxy error stream error stream ID 3 INTERNAL_ERROR
1.背景当你重启kubernetes的时候,就会报错这个(base) lcc@lcc kubernetes$ kubectl proxy --port=8080Starting to serve on 127.0.0.1:80802020/05/18 22:15:09 http: proxy error: context canceled2020/05/18 22:25:46 http: proxy error: net/http: TLS handshake timeout2020/05/1.原创 2020-07-01 22:16:49 · 2887 阅读 · 0 评论 -
【Docker】Mac下Docker启动Kubernetes处于一直启动中(卡死)
1.背景在Mac中安装了Docker之后,会自动安装了Kubernetes,正常情况下,我们只需要在Docker的Preferrences->Kubernetes中勾选Enable Kubernetes,然后点击Apply按钮即可。但由于伟大的墙的存在,这么一个简单的启动也会变得一波三折。如果您是直接在Docker中启用Kubernetes,Kubernetes的状态会一直都是kubernetes is starting…,原因是有一些Kubernetes依赖的镜像不能正常的下载。Githu.原创 2020-07-01 22:13:17 · 5372 阅读 · 0 评论 -
【Docker】Docker 启用 Kubernetes 报错 insecure-registries Must be host[ port] or CIDR
1.背景mac电脑上,已经安装了一个docker了,然后版本比较低,我就退出,然后安装了一个新的版本,但是老的版本也保留着。新版本如下但是在docker启用Kubernetes的时候报错这个说 你配置的 insecure-registries 必须为 ip:端口,但是这个是我老版本配置的额,没改,现在报错了,因此需要修改。我把内容删除就好了...原创 2020-07-01 22:13:11 · 1768 阅读 · 0 评论 -
【Docker】Docker容器和主机如何互相拷贝传输文件
1.背景docker启动后,想往里面添加一些文件,但是不知道怎么拷贝。最关键的是当初没有留出来,相关共享文件夹 Doker : Docker 容器与宿主机共享文件docker cp :用于容器与主机之间的数据拷贝。语法docker cp [OPTIONS] CONTAINER:SRC_PATH DEST_PATH|-docker cp [OPTIONS] SRC_PATH|- CONTAINER:DEST_PATHOPTIONS说明:-L :保持源目标中的链接2.实例将主机./RS-.原创 2020-07-01 22:13:04 · 2433 阅读 · 0 评论 -
【Docker】Docker 如何在容器内安装vi命令(vi不能使用)
1.背景mac下安装了docker ,然后用docker 安装了grafana软件,然后进入grafana(base) lcc@lcc prometheus$ docker exec -it 4b5f517f4340 bashgrafana@4b5f517f4340:/usr/share/grafana$然后想使用vi命令,结果发现没有grafana@4b5f517f4340:/usr/share/grafana$ vi /etc/grafana/grafana.inibash: vi: c.原创 2020-07-01 22:12:51 · 4057 阅读 · 0 评论 -
【Docker】docker 执行 apt-get E: Could not open lock file /var/lib/dpkg/lock - open
1.背景mac下安装了docker ,然后用docker 安装了grafana软件,然后进入grafana(base) lcc@lcc prometheus$ docker exec -it 4b5f517f4340 bashgrafana@4b5f517f4340:/usr/share/grafana$然后想使用vi命令,结果发现没有grafana@4b5f517f4340:/usr/share/grafana$ vi /etc/grafana/grafana.inibash: vi: c.原创 2020-06-27 17:13:59 · 1206 阅读 · 0 评论 -
【Docker】docker bash: sudo: command not found
1.背景原创 2020-07-01 22:12:58 · 2347 阅读 · 0 评论 -
【Docker】Docker 安装 Prometheus并且交给 grafana
1. docker 安装软件(base) lcc@lcc ~$ docker psCONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES4b5f517f4340 grafana/grafana:5.3.4 .原创 2020-07-01 22:12:43 · 796 阅读 · 0 评论 -
【Docker】OCI runtime exec failed: exec failed: container_linux.go:348: starting container process cau
1.背景docker执行命令(base) lcc@lcc flink-1.10.0$ docker exec -it mysqld-exporter /bin/bashOCI runtime exec failed: exec failed: container_linux.go:348: starting container process caused "exec: \"/bin/bash\": stat /bin/bash: no such file or directory": unknow.原创 2020-07-01 22:16:08 · 7184 阅读 · 0 评论 -
【Docker】Docker 安装node-exporter prometheus pushgateway 页面显示Down
1.背景prometheus配置如下(base) lcc@lcc grafana-storage$ pwd/Users/lcc/soft/prometheus/grafana-storage$ cat prometheus.ymlglobal: scrape_interval: 60s evaluation_interval: 60s scrape_configs: - job_name: prometheus static_configs: - ta.原创 2020-07-01 22:19:55 · 1456 阅读 · 0 评论 -
【Docker】Docker 启动prometheus报错 parsing YAML file /etc/prometheus/prometheus.yml: yaml: unmarshal
1.背景本地docker 安装prometheus,然后启动,报错如下(base) lcc@lcc grafana-storage$ docker logs 790f84fb094904a96b8d16ce808bdee20ecdd7e40c875f4cf2b659d61efc68aclevel=info ts=2020-05-12T00:55:58.114Z caller=main.go:302 msg="No time or size retention was set so using the.原创 2020-07-01 22:19:49 · 4976 阅读 · 0 评论 -
【Docker】WARNING: Published ports are discarded when using host network mode
1.概述写了一个docker命令如下(base) lcc@lcc grafana-storage$ docker run -d -p 9100:9100 -v "/proc:/host/proc:ro" -v "/sys:/host/sys:ro" -v "/:/rootfs:ro" prom/node-exporterWARNING: Published ports are discarded when using host network modeab2abeabf45c271e67.原创 2020-07-01 22:19:43 · 4280 阅读 · 0 评论