
docker
IT杂人
有其功必有其效
展开
-
解决docker容器的bridge模式端口无法被firewalld管理问题
当我们bridge网络模式创建的docker,使用firewall-cmd发现管理不了此种端口。此时需要理解bridge模式下网络的转发原理,在合适的转发链上进行拦截。之前考虑在filter 和 nat表添加链路,发现不能生效.或者在DOCKER-USER添加规则,也不能生产。最后在raw表上添加规则才能生产,能成功拦截。原创 2025-01-02 11:46:07 · 375 阅读 · 0 评论 -
使用firewalld开放禁用访问端口-黑白名单(host适用)
允许指定的源IP访问指定的端口,其他IP都不允许访问,接收数据的目标服务器:10.111.24.15,发起源IP为:192.168.31.3客户端IP少,如后端服务之间调用。原创 2025-01-02 11:30:55 · 281 阅读 · 0 评论 -
docker容器中cron任务未执行的原因
var/spool/cron/crontabs下的文件必须是600(-rw-------)的文件权限,而不应该使用容器的644权限(容器里一般umask=0022),权限低的能执行成功,权限高的反而执行失败。此种方法使用了cron默认操作方式,推荐使用。在宿主机安装能成功,反复检查没问题,只要安装到ubuntu:22.04镜像中就执行不了。此方法测试可行,强制加入文件到crontab执行任务中,且文件的位置可任意指定。网上有部分是这原因,但我不是~原创 2024-05-17 19:35:00 · 948 阅读 · 0 评论 -
kylin麒麟的容器文件权限问题(runc版本)
进程创建的文件默认为640权限,其他用户(0)无读写能力。原创 2023-12-28 09:36:31 · 2505 阅读 · 8 评论 -
docker使用buildx构建多平台(x86,arm64)构架镜像
buildx 可用于在单个平台上实现,跨 CPU 架构编译。 buildx 实现 依赖 QEMU (开源的模拟器),支持多种cpu 架构原创 2023-01-06 18:40:22 · 12754 阅读 · 0 评论 -
清理docker占用磁盘空间(docker默认目录存在未被管理的空间)
清理docker占用磁盘空间(docker默认目录存在未被管理的空间)原创 2022-12-03 16:15:18 · 979 阅读 · 0 评论 -
docker stats查询容器状态显示异常有横线
docker stats查询容器状态显示异常有模线原创 2022-11-16 14:26:37 · 871 阅读 · 0 评论 -
portainer创建容器报错HTTPConnectionPool(host=‘localhost‘, port=43212): Read timed out. (read timeout=60)
portainer创建容器报错HTTPConnectionPool(host='localhost', port=43212): Read timed out. (read timeout=60)原创 2022-07-06 17:51:43 · 1484 阅读 · 0 评论 -
不重启docker进程,重新reload加载配置
不重新docker进程,reload修改的配置原创 2022-06-25 19:26:43 · 2509 阅读 · 1 评论 -
docker-compose中的link和external_links的区别
使用场景原本把在同一个docker-compose.yml文件中的向个服务拆分为多个文件部署。如拆分为单个服务的yml文件:原rocketmqversion: '2'services: namesrv: image: apache/rocketmq:4.5.0 container_name: rmqnamesrv ports: - 9876:9876 volumes: - ./data/namesrv/logs:/home/rocketmq原创 2022-04-10 17:11:05 · 4744 阅读 · 0 评论 -
docker容器资源限制与容器内的dotnet应用线程限制
docker容器资源限制使用docker-compose管理容器所以yml文件配置可以 增加 deploy: resources: limits: cpus: "8" memory: 4096M reservations: cpus: "0.05" memory: 500Mlimits=> cpus: “8” //cpu利用率最大限制:建议设置成实际cpu核数的一原创 2022-04-02 22:07:47 · 3951 阅读 · 0 评论 -
docker容器DNS解决方法
创建容器时指定DNS#docker-composedns: - 8.8.8.8 - 8.8.4.4#docker run方式--dns=8.8.8.8 --dns=8.8.4.4使用默认的方式,会自动加载宿主机的/etc/resolv.conf内容到到容器但修改宿主机的/etc/resolv.conf文件,不会同步更新到容器里的/etc/resolv.conf;使用显示挂载的方式:修改宿主机时使用echo,因为使用vi会改变inode,修改后并不会相应变化到容器原创 2022-03-31 14:39:33 · 6273 阅读 · 0 评论 -
从一次网络变更到认识docker in docker
问题描述内网环境下,IT部门把同墙上一条主网线下的其中一个网口与其他两个网口IP段设置不同,也不知道怎么做到得。问题开始出现:所有通过host创建的容器,端口可以被其他服务器访问;所有通过bridge创建的容器,端口可以被自己访问,但不能被其他服务器访问在本机都能成功,9001为portainer创建时的bridge网络端口telnet localhost 9001#在本机能成功,但在其他机器上不能成功telnet 本机IP 9001原因分析:1.防火墙阻止问题:但未开启,也未动过原创 2022-03-26 00:28:03 · 1444 阅读 · 0 评论 -
关闭防火墙之后docker要重启,不要问,问就是坑
几次掉坑里,关闭防火墙后,忘记重启Docker,在容器里ping,curl,apt-get,telnet都是不通。原创 2022-02-13 17:34:14 · 1552 阅读 · 0 评论 -
dotnet的docker-compose文件内容推荐
用一断时间,记录下使用的规则,因为使用docker-compose作为最后发布容器的配置,所以Dockfile尽量少控制逻辑,大多放于yml中version: "3.0"services: dotnettest: image: "cc/dotnettest:v3.0.02.bb74344" container_name: "cc.dotnettest" network_mode: "host" user: root volumes: - "/p原创 2022-03-25 13:28:54 · 733 阅读 · 0 评论 -
dockerscan扫描查看镜像内目录
说明:非官方的docker scan(有空格)用于启动容器失败后,无法通过docker logs定位问题,只能把镜像内的文件解压出来调试1.安装pip3yum install -y pip32.安装dockerscanpip3 install dockerscan3.解压镜像文件#保存redis镜像为本地tar文件docker save -o redis.tar redis:latest#解压镜像文件dockerscan image extract redis.tar ./原创 2022-02-22 19:47:19 · 2156 阅读 · 0 评论 -
docker push到私有仓库
1.安装docker-registry2.配置nginx访问3.测试本地push4.测试远程推送(现启动时默认是https,所以会报错)5.修改配置支持httpvim /usr/lib/systemd/system/docker.service配置项后增加配置:--insecure-registry=registry.xxx.com,后面是你的域名或者ip,如果有端口也要带上ExecStart=/usr/bin/dockerd-current \ --.原创 2021-04-14 15:58:52 · 19664 阅读 · 0 评论 -
centos7使用docker安装gitlab
docker安装gitlabGitLab 分为 社区版(Community Edition,缩写为 CE)和 企业版(Enterprise Edition,缩写为 EE)。社区版是免费的,而企业版包含一些收费服务,一般来说个人开发者用社区版就足够了。下载镜像首先需要先下载 GitLab CE 的镜像,使用下面的命令进行下载,因为文件较大,所以可能需要一点时间,耐心等待即可。可以设置镜像源为阿里或者腾讯# 不加 tag 则默认为最新版本 latest$ docker pull gitlab原创 2021-03-23 23:20:07 · 684 阅读 · 0 评论 -
window版docker手动关闭启动项后,无法启动
docker开机启动后占用大量内存,使用腾讯电脑管家关闭多个相关启动项,平时空闲是不用,在有需要docker的时候再自己手动启动。但在下次手动启动时,怎么都启动不了,提示hyper-v无法启动。1.去服务管理处手动启动无法启动2.管理员启动docker无法启动3.最后还是把电脑管家里的服务项管理hyper-v相关的服务项全部开启,再开启docker成功启动。...原创 2021-02-23 09:50:35 · 488 阅读 · 0 评论